File tree Expand file tree Collapse file tree 1 file changed +20
-19
lines changed
src/bootstrap/src/core/config Expand file tree Collapse file tree 1 file changed +20
-19
lines changed Original file line number Diff line number Diff line change @@ -863,25 +863,26 @@ impl Config {
863
863
864
864
let mut target = Target :: from_triple ( & triple) ;
865
865
866
- if ( target_default_linker. is_some ( ) || rust_default_linker. is_some ( ) )
867
- && target_default_linker_linux. is_some ( )
868
- {
869
- panic ! (
870
- "cannot set both `default-linker` and `default-linker-linux` for target {triple}"
871
- ) ;
872
- }
873
- if !triple. contains ( "linux" ) {
874
- panic ! (
875
- "`default-linker-linux` can only be set for Linux targets, not for {triple}"
876
- ) ;
877
- }
878
- if target_default_linker_linux. as_ref ( )
879
- == Some ( & DefaultLinuxLinkerOverride :: SelfContainedLldCc )
880
- && !lld_enabled
881
- {
882
- panic ! (
883
- "Trying to override the default Linux linker for {triple} to be self-contained LLD, but LLD is not being built. Enable it with rust.lld = true."
884
- ) ;
866
+ if let Some ( linux_override) = target_default_linker_linux. as_ref ( ) {
867
+ if target_default_linker. is_some ( ) || rust_default_linker. is_some ( ) {
868
+ panic ! (
869
+ "cannot set both `default-linker` and `default-linker-linux` for target {triple}"
870
+ ) ;
871
+ }
872
+ if !triple. contains ( "linux" ) {
873
+ panic ! (
874
+ "`default-linker-linux` can only be set for Linux targets, not for {triple}"
875
+ ) ;
876
+ }
877
+ match linux_override {
878
+ DefaultLinuxLinkerOverride :: SelfContainedLldCc => {
879
+ if !lld_enabled {
880
+ panic ! (
881
+ "Trying to override the default Linux linker for {triple} to be self-contained LLD, but LLD is not being built. Enable it with rust.lld = true."
882
+ ) ;
883
+ }
884
+ }
885
+ }
885
886
}
886
887
887
888
if let Some ( ref s) = target_llvm_config {
You can’t perform that action at this time.
0 commit comments