@@ -1310,12 +1310,23 @@ options! {
13101310 #[ rustc_lint_opt_deny_field_access( "use `Session::link_dead_code` instead of this field" ) ]
13111311 link_dead_code: Option <bool > = ( None , parse_opt_bool, [ TRACKED ] ,
13121312 "keep dead code at link time (useful for code coverage) (default: no)" ) ,
1313- link_self_contained: LinkSelfContained = ( LinkSelfContained :: default ( ) , parse_link_self_contained, [ UNTRACKED ] ,
1313+ link_self_contained: LinkSelfContained = (
1314+ {
1315+ #[ cfg( bootstrap) ] { LinkSelfContained :: default ( ) }
1316+ #[ cfg( not( bootstrap) ) ] { LinkSelfContained :: with_linker( ) }
1317+ } , parse_link_self_contained, [ UNTRACKED ] ,
13141318 "control whether to link Rust provided C objects/libraries or rely
13151319 on a C toolchain or linker installed in the system" ) ,
13161320 linker: Option <PathBuf > = ( None , parse_opt_pathbuf, [ UNTRACKED ] ,
13171321 "system linker to link outputs with" ) ,
1318- linker_flavor: Option <LinkerFlavorCli > = ( None , parse_linker_flavor, [ UNTRACKED ] ,
1322+ linker_flavor: Option <LinkerFlavorCli > = (
1323+ {
1324+ #[ cfg( bootstrap) ] { None }
1325+ #[ cfg( not( bootstrap) ) ] {
1326+ use rustc_target:: spec:: { Cc , Lld } ;
1327+ Some ( LinkerFlavorCli :: Gnu ( Cc :: Yes , Lld :: Yes ) )
1328+ }
1329+ } , parse_linker_flavor, [ UNTRACKED ] ,
13191330 "linker flavor" ) ,
13201331 linker_plugin_lto: LinkerPluginLto = ( LinkerPluginLto :: Disabled ,
13211332 parse_linker_plugin_lto, [ TRACKED ] ,
0 commit comments