@@ -12,7 +12,7 @@ struct ArchiveConfig<'a> {
12
12
dst : PathBuf ,
13
13
src : Option < PathBuf > ,
14
14
lib_search_paths : Vec < PathBuf > ,
15
- is_like_osx : bool ,
15
+ use_gnu_style_archive : bool ,
16
16
}
17
17
18
18
#[ derive( Debug ) ]
@@ -36,7 +36,8 @@ impl<'a> ArchiveBuilder<'a> for ArArchiveBuilder<'a> {
36
36
dst : output. to_path_buf ( ) ,
37
37
src : input. map ( |p| p. to_path_buf ( ) ) ,
38
38
lib_search_paths : archive_search_paths ( sess) ,
39
- is_like_osx : sess. target . target . options . is_like_osx , // FIXME should probably check for linux
39
+ // FIXME test for linux and System V derivatives instead
40
+ use_gnu_style_archive : !sess. target . target . options . is_like_osx ,
40
41
} ;
41
42
42
43
let ( src_archives, entries) = if let Some ( src) = & config. src {
@@ -128,13 +129,13 @@ impl<'a> ArchiveBuilder<'a> for ArArchiveBuilder<'a> {
128
129
}
129
130
130
131
let archive_file = File :: create ( & self . config . dst ) . unwrap ( ) ;
131
- let mut builder = if self . config . is_like_osx {
132
- BuilderKind :: Bsd ( ar:: Builder :: new ( archive_file) )
133
- } else {
132
+ let mut builder = if self . config . use_gnu_style_archive {
134
133
BuilderKind :: Gnu ( ar:: GnuBuilder :: new (
135
134
archive_file,
136
135
self . entries . keys ( ) . map ( |key| key. as_bytes ( ) . to_vec ( ) ) . collect ( ) ,
137
136
) )
137
+ } else {
138
+ BuilderKind :: Bsd ( ar:: Builder :: new ( archive_file) )
138
139
} ;
139
140
140
141
// Add all files
0 commit comments