@@ -556,6 +556,62 @@ impl Config {
556
556
datadir : install_datadir_toml,
557
557
} = toml. install . unwrap_or_default ( ) ;
558
558
559
+ let Rust {
560
+ optimize : rust_optimize_toml,
561
+ debug : rust_debug_toml,
562
+ codegen_units : rust_codegen_units_toml,
563
+ codegen_units_std : rust_codegen_units_std_toml,
564
+ rustc_debug_assertions : rust_rustc_debug_assertions_toml,
565
+ std_debug_assertions : rust_std_debug_assertions_toml,
566
+ tools_debug_assertions : rust_tools_debug_assertions_toml,
567
+ overflow_checks : rust_overflow_checks_toml,
568
+ overflow_checks_std : rust_overflow_checks_std_toml,
569
+ debug_logging : rust_debug_logging_toml,
570
+ debuginfo_level : rust_debuginfo_level_toml,
571
+ debuginfo_level_rustc : rust_debuginfo_level_rustc_toml,
572
+ debuginfo_level_std : rust_debuginfo_level_std_toml,
573
+ debuginfo_level_tools : rust_debuginfo_level_tools_toml,
574
+ debuginfo_level_tests : rust_debuginfo_level_tests_toml,
575
+ backtrace : rust_backtrace_toml,
576
+ incremental : rust_incremental_toml,
577
+ randomize_layout : rust_randomize_layout_toml,
578
+ default_linker : rust_default_linker_toml,
579
+ channel : rust_channel_toml,
580
+ musl_root : rust_musl_root_toml,
581
+ rpath : rust_rpath_toml,
582
+ verbose_tests : rust_verbose_tests_toml,
583
+ optimize_tests : rust_optimize_tests_toml,
584
+ codegen_tests : rust_codegen_tests_toml,
585
+ omit_git_hash : rust_omit_git_hash_toml,
586
+ dist_src : rust_dist_src_toml,
587
+ save_toolstates : rust_save_toolstates_toml,
588
+ codegen_backends : rust_codegen_backends_toml,
589
+ lld : rust_lld_enabled_toml,
590
+ llvm_tools : rust_llvm_tools_toml,
591
+ llvm_bitcode_linker : rust_llvm_bitcode_linker_toml,
592
+ deny_warnings : rust_deny_warnings_toml,
593
+ backtrace_on_ice : rust_backtrace_on_ice_toml,
594
+ verify_llvm_ir : rust_verify_llvm_ir_toml,
595
+ thin_lto_import_instr_limit : rust_thin_lto_import_instr_limit_toml,
596
+ remap_debuginfo : rust_remap_debuginfo_toml,
597
+ jemalloc : rust_jemalloc_toml,
598
+ test_compare_mode : rust_test_compare_mode_toml,
599
+ llvm_libunwind : rust_llvm_libunwind_toml,
600
+ control_flow_guard : rust_control_flow_guard_toml,
601
+ ehcont_guard : rust_ehcont_guard_toml,
602
+ new_symbol_mangling : rust_new_symbol_mangling_toml,
603
+ profile_generate : rust_profile_generate_toml,
604
+ profile_use : rust_profile_use_toml,
605
+ download_rustc : rust_download_rustc_toml,
606
+ lto : rust_lto_toml,
607
+ validate_mir_opts : rust_validate_mir_opts_toml,
608
+ frame_pointers : rust_frame_pointers_toml,
609
+ stack_protector : rust_stack_protector_toml,
610
+ strip : rust_strip_toml,
611
+ lld_mode : rust_lld_mode_toml,
612
+ std_features : rust_std_features_toml,
613
+ } = toml. rust . unwrap_or_default ( ) ;
614
+
559
615
if cfg ! ( test) {
560
616
// When configuring bootstrap for tests, make sure to set the rustc and Cargo to the
561
617
// same ones used to call the tests (if custom ones are not defined in the toml). If we
@@ -786,8 +842,7 @@ impl Config {
786
842
let file_content = t ! ( fs:: read_to_string( config. src. join( "src/ci/channel" ) ) ) ;
787
843
let ci_channel = file_content. trim_end ( ) ;
788
844
789
- let toml_channel = toml. rust . as_ref ( ) . and_then ( |r| r. channel . clone ( ) ) ;
790
- let is_user_configured_rust_channel = match toml_channel {
845
+ let is_user_configured_rust_channel = match rust_channel_toml {
791
846
Some ( channel) if channel == "auto-detect" => {
792
847
config. channel = ci_channel. into ( ) ;
793
848
true
@@ -800,7 +855,7 @@ impl Config {
800
855
} ;
801
856
802
857
let default = config. channel == "dev" ;
803
- config. omit_git_hash = toml . rust . as_ref ( ) . and_then ( |r| r . omit_git_hash ) . unwrap_or ( default) ;
858
+ config. omit_git_hash = rust_omit_git_hash_toml . unwrap_or ( default) ;
804
859
805
860
config. rust_info = config. git_info ( config. omit_git_hash , & config. src ) ;
806
861
config. cargo_info =
@@ -894,62 +949,6 @@ impl Config {
894
949
}
895
950
}
896
951
897
- let Rust {
898
- optimize : rust_optimize_toml,
899
- debug : rust_debug_toml,
900
- codegen_units : rust_codegen_units_toml,
901
- codegen_units_std : rust_codegen_units_std_toml,
902
- rustc_debug_assertions : rust_rustc_debug_assertions_toml,
903
- std_debug_assertions : rust_std_debug_assertions_toml,
904
- tools_debug_assertions : rust_tools_debug_assertions_toml,
905
- overflow_checks : rust_overflow_checks_toml,
906
- overflow_checks_std : rust_overflow_checks_std_toml,
907
- debug_logging : rust_debug_logging_toml,
908
- debuginfo_level : rust_debuginfo_level_toml,
909
- debuginfo_level_rustc : rust_debuginfo_level_rustc_toml,
910
- debuginfo_level_std : rust_debuginfo_level_std_toml,
911
- debuginfo_level_tools : rust_debuginfo_level_tools_toml,
912
- debuginfo_level_tests : rust_debuginfo_level_tests_toml,
913
- backtrace : rust_backtrace_toml,
914
- incremental : rust_incremental_toml,
915
- randomize_layout : rust_randomize_layout_toml,
916
- default_linker : rust_default_linker_toml,
917
- channel : _, // already handled above
918
- musl_root : rust_musl_root_toml,
919
- rpath : rust_rpath_toml,
920
- verbose_tests : rust_verbose_tests_toml,
921
- optimize_tests : rust_optimize_tests_toml,
922
- codegen_tests : rust_codegen_tests_toml,
923
- omit_git_hash : _, // already handled above
924
- dist_src : rust_dist_src_toml,
925
- save_toolstates : rust_save_toolstates_toml,
926
- codegen_backends : rust_codegen_backends_toml,
927
- lld : rust_lld_enabled_toml,
928
- llvm_tools : rust_llvm_tools_toml,
929
- llvm_bitcode_linker : rust_llvm_bitcode_linker_toml,
930
- deny_warnings : rust_deny_warnings_toml,
931
- backtrace_on_ice : rust_backtrace_on_ice_toml,
932
- verify_llvm_ir : rust_verify_llvm_ir_toml,
933
- thin_lto_import_instr_limit : rust_thin_lto_import_instr_limit_toml,
934
- remap_debuginfo : rust_remap_debuginfo_toml,
935
- jemalloc : rust_jemalloc_toml,
936
- test_compare_mode : rust_test_compare_mode_toml,
937
- llvm_libunwind : rust_llvm_libunwind_toml,
938
- control_flow_guard : rust_control_flow_guard_toml,
939
- ehcont_guard : rust_ehcont_guard_toml,
940
- new_symbol_mangling : rust_new_symbol_mangling_toml,
941
- profile_generate : rust_profile_generate_toml,
942
- profile_use : rust_profile_use_toml,
943
- download_rustc : rust_download_rustc_toml,
944
- lto : rust_lto_toml,
945
- validate_mir_opts : rust_validate_mir_opts_toml,
946
- frame_pointers : rust_frame_pointers_toml,
947
- stack_protector : rust_stack_protector_toml,
948
- strip : rust_strip_toml,
949
- lld_mode : rust_lld_mode_toml,
950
- std_features : rust_std_features_toml,
951
- } = toml. rust . unwrap_or_default ( ) ;
952
-
953
952
// FIXME(#133381): alt rustc builds currently do *not* have rustc debug assertions
954
953
// enabled. We should not download a CI alt rustc if we need rustc to have debug
955
954
// assertions (e.g. for crashes test suite). This can be changed once something like
0 commit comments