@@ -8,92 +8,24 @@ until LLVM can be updated to use libc++ by default.
88
99https: //reviews. llvm. org/D77776
1010
11- --- vendor/cc-1.0 . 73 /src/lib. rs . orig 2021 -03 -04 20 : 58 : 54 UTC
12- +++ vendor/cc-1.0 . 73 /src/lib. rs
13- @@ -2659 , 24 +2659 , 7 @@ impl Tool {
14- }
15-
16- fn with_features( path : PathBuf , clang_driver : Option < & str > , cuda : bool ) -> Self {
17- - // Try to detect family of the tool from its name, falling back to Gnu.
18- - let family = if let Some ( fname) = path. file_name ( ) . and_then ( |p| p. to_str ( ) ) {
19- - if fname. contains ( "clang-cl" ) {
20- - ToolFamily :: Msvc { clang_cl : true }
21- - } else if fname. ends_with ( "cl" ) || fname == "cl.exe" {
22- - ToolFamily :: Msvc { clang_cl : false }
23- - } else if fname. contains ( "clang" ) {
24- - match clang_driver {
25- - Some ( "cl" ) => ToolFamily :: Msvc { clang_cl : true } ,
26- - _ => ToolFamily :: Clang ,
27- - }
28- - } else {
29- - ToolFamily :: Gnu
30- - }
31- - } else {
32- - ToolFamily :: Gnu
33- - } ;
34- -
35- + let family = ToolFamily :: Gnu ;
36- Tool {
37- path : path,
38- cc_wrapper_path : None ,
11+ cc-1.1 . 10 / cc-1.1 . 22 /
3912
40- --- vendor/cc-1.0 . 79 /src/lib. rs . orig 2021 -03 -04 20 : 58 : 54 UTC
41- +++ vendor/cc-1.0 . 79 /src/lib. rs
42- @@ -2659 , 24 +2659 , 7 @@ impl Tool {
43- }
13+ --- vendor/cc-1.0 . 105 /src/tool. rs . orig 2024 -05 -09 18 : 20 : 47 UTC
14+ +++ vendor/cc-1.0 . 105 /src/tool. rs
15+ @@ -151 , 9 +151 , 7 @@ impl Tool {
4416
45- fn with_features( path : PathBuf , clang_driver : Option < & str > , cuda : bool ) -> Self {
46- - // Try to detect family of the tool from its name, falling back to Gnu.
47- - let family = if let Some ( fname) = path. file_name ( ) . and_then ( |p| p. to_str ( ) ) {
48- - if fname. contains ( "clang-cl" ) {
49- - ToolFamily :: Msvc { clang_cl : true }
50- - } else if fname. ends_with ( "cl" ) || fname == "cl.exe" {
51- - ToolFamily :: Msvc { clang_cl : false }
52- - } else if fname. contains ( "clang" ) {
53- - match clang_driver {
54- - Some ( "cl" ) => ToolFamily :: Msvc { clang_cl : true } ,
55- - _ => ToolFamily :: Clang ,
56- - }
57- - } else {
58- - ToolFamily :: Gnu
59- - }
60- - } else {
61- - ToolFamily :: Gnu
62- - } ;
63- -
64- + let family = ToolFamily :: Gnu ;
65- Tool {
66- path : path,
67- cc_wrapper_path : None ,
17+ match ( clang , accepts_cl_style_flags , gcc ) {
18+ ( clang_cl , true , _ ) => Ok ( ToolFamily :: Msvc { clang_cl } ) ,
19+ - ( true , false , _) => Ok ( ToolFamily :: Clang {
20+ - zig_cc : is_zig_cc( path, cargo_output) ,
21+ - } ) ,
22+ + ( true , false , _) => Ok ( ToolFamily :: Gnu ) ,
23+ ( false , false , true ) => Ok ( ToolFamily :: Gnu ) ,
24+ ( false , false , false ) => {
25+ cargo_output. print_warning( & "Compiler family detection failed since it does not define `__clang__`, `__GNUC__` or `_MSC_VER`, fallback to treating it as GNU" ) ;
6826
69- --- vendor/cc-1.0 . 90 /src/tool. rs . orig 2024 -03 -18 11 : 23 : 17 UTC
70- +++ vendor/cc-1.0 . 90 /src/tool. rs
71- @@ -122 , 22 +122 , 7 @@ impl Tool {
72- } ;
73-
74- // Try to detect family of the tool from its name, falling back to Gnu.
75- - let family = if let Some ( fname) = path. file_name ( ) . and_then ( |p| p. to_str ( ) ) {
76- - if fname. contains ( "clang-cl" ) {
77- - ToolFamily :: Msvc { clang_cl : true }
78- - } else if fname. ends_with ( "cl" ) || fname == "cl.exe" {
79- - ToolFamily :: Msvc { clang_cl : false }
80- - } else if fname. contains ( "clang" ) {
81- - match clang_driver {
82- - Some ( "cl" ) => ToolFamily :: Msvc { clang_cl : true } ,
83- - _ => ToolFamily :: Clang ,
84- - }
85- - } else {
86- - detect_family ( & path)
87- - }
88- - } else {
89- - detect_family ( & path)
90- - } ;
91- + let family = ToolFamily :: Gnu ;
92-
93- Tool {
94- path,
95- --- vendor/cc-1.0 . 92 /src/tool. rs . orig 2024 -05 -09 18 : 20 : 47 UTC
96- +++ vendor/cc-1.0 . 92 /src/tool. rs
27+ --- vendor/cc-1.1 . 10 /src/tool. rs. orig 2024 -05 -09 18 : 20 : 47 UTC
28+ +++ vendor/cc -1.1 . 10 /src/tool. rs
9729@@ -151 , 9 +151 , 7 @@ impl Tool {
9830
9931 match ( clang, accepts_cl_style_flags, gcc) {
@@ -105,3 +37,17 @@ https://reviews.llvm.org/D77776
10537 ( false , false , true ) => Ok ( ToolFamily :: Gnu ) ,
10638 ( false , false , false ) => {
10739 cargo_output. print_warning ( & "Compiler family detection failed since it does not define `__clang__`, `__GNUC__` or `_MSC_VER`, fallback to treating it as GNU" ) ;
40+
41+ --- vendor/cc-1.1 . 22 /src/tool. rs . orig 2024 -10 -02 09 : 43 : 22 . 970422000 +0200
42+ +++ vendor/cc-1.1 . 22 /src/tool. rs 2024 -10 -02 09 : 50 : 42 . 836352000 +0200
43+ @@ -174 , 9 +174 , 7 @@ impl Tool {
44+
45+ match ( clang , accepts_cl_style_flags , gcc , emscripten , vxworks ) {
46+ ( clang_cl , true , _ , false , false ) => Ok ( ToolFamily :: Msvc { clang_cl } ) ,
47+ - ( true , _, _, _, false ) | ( _, _, _, true , false ) => Ok ( ToolFamily :: Clang {
48+ - zig_cc : is_zig_cc( path, cargo_output) ,
49+ - } ) ,
50+ + ( true , _, _, _, false ) | ( _, _, _, true , false ) => Ok ( ToolFamily :: Gnu ) ,
51+ ( false , false , true , _, false ) | ( _, _, _, _, true ) => Ok ( ToolFamily :: Gnu ) ,
52+ ( false , false , false , false , false ) => {
53+ cargo_output. print_warning( & "Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU" ) ;
0 commit comments