@@ -34,46 +34,36 @@ compile_crate(CrateDir, PrivDir) ->
34
34
35
35
{ok , _ } = rebar_utils :sh (Command , [{cd , CrateDir }, {use_stdout , true }]),
36
36
37
- SOGlob = filename :join ([CrateDir , " target" , " release" , " *.so" ]),
38
- SOFiles = filelib :wildcard (SOGlob ),
37
+ NewFilesGlob = filename :join ([CrateDir , " target" , " release" , " *" ]),
38
+ NewFiles = lists :filter (
39
+ fun (Path ) ->
40
+ filelib :is_regular (Path ) andalso filename :basename (Path ) /= " .cargo-lock"
41
+ end ,
42
+ filelib :wildcard (NewFilesGlob )
43
+ ),
39
44
40
45
CratesPrivDir = filename :join (PrivDir , " crates" ),
41
46
42
47
file :make_dir (CratesPrivDir ),
43
48
44
- CrateName = filename :basename (CrateDir ),
45
- Destination = filename :join (CratesPrivDir , CrateName ),
46
- OldFilesGlob = filename :join (Destination , " *.so " ),
47
- OldFiles = filelib :wildcard (OldFilesGlob ),
49
+ CrateName = filename :basename (CrateDir ),
50
+ Destination = filename :join (CratesPrivDir , CrateName ),
51
+ OldFilesGlob = filename :join (Destination , " *" ),
52
+ OldFiles = filelib :wildcard (OldFilesGlob ),
48
53
49
54
file :make_dir (Destination ),
50
55
51
- lists :foreach (
52
- fun (File ) -> remove_file (File ) end ,
53
- OldFiles
54
- ),
56
+ lists :foreach (fun file :delete /1 , OldFiles ),
55
57
56
58
lists :foreach (
57
59
fun (File ) -> copy_file (File , Destination ) end ,
58
- SOFiles
60
+ NewFiles
59
61
).
60
62
61
63
copy_file (SourceFile , DestinationDir ) ->
62
- Extension = filename :extension (SourceFile ),
63
-
64
- case Extension of
65
- " .so" ->
66
- DestinationFile = filename :join (
67
- DestinationDir ,
68
- filename :basename (SourceFile )
69
- ),
70
-
71
- file :copy (SourceFile , DestinationFile );
72
- _ -> ok
73
- end .
74
-
75
- remove_file (File ) ->
76
- case filename :extension (File ) of
77
- " .so" -> file :delete (File );
78
- _ -> ok
79
- end .
64
+ DestinationFile = filename :join (
65
+ DestinationDir ,
66
+ filename :basename (SourceFile )
67
+ ),
68
+
69
+ file :copy (SourceFile , DestinationFile ).
0 commit comments