5151
5252TARGET_CRATES := libc std term \
5353 getopts collections test rand \
54- core alloc \
54+ compiler_builtins core alloc \
5555 rustc_unicode rustc_bitflags \
5656 alloc_system alloc_jemalloc \
5757 panic_abort panic_unwind unwind
5858RUSTC_CRATES := rustc rustc_typeck rustc_mir rustc_borrowck rustc_resolve rustc_driver \
5959 rustc_trans rustc_back rustc_llvm rustc_privacy rustc_lint \
6060 rustc_data_structures rustc_platform_intrinsics rustc_errors \
6161 rustc_plugin rustc_metadata rustc_passes rustc_save_analysis \
62- rustc_const_eval rustc_const_math rustc_incremental
62+ rustc_const_eval rustc_const_math rustc_incremental rustc_macro
6363HOST_CRATES := syntax syntax_ext proc_macro syntax_pos $(RUSTC_CRATES ) rustdoc fmt_macros \
64- flate arena graphviz rbml log serialize
64+ flate arena graphviz log serialize
6565TOOLS := compiletest rustdoc rustc rustbook error_index_generator
6666
6767DEPS_core :=
68+ DEPS_compiler_builtins := core
6869DEPS_alloc := core libc alloc_system
6970DEPS_alloc_system := core libc
7071DEPS_alloc_jemalloc := core libc native:jemalloc
@@ -77,12 +78,14 @@ DEPS_panic_abort := libc alloc
7778DEPS_panic_unwind := libc alloc unwind
7879DEPS_unwind := libc
7980
81+ RUSTFLAGS_compiler_builtins := -lstatic=compiler-rt
82+
8083# FIXME(stage0): change this to just `RUSTFLAGS_panic_abort := ...`
8184RUSTFLAGS1_panic_abort := -C panic=abort
8285RUSTFLAGS2_panic_abort := -C panic=abort
8386RUSTFLAGS3_panic_abort := -C panic=abort
8487
85- DEPS_std := core libc rand alloc collections rustc_unicode \
88+ DEPS_std := core libc rand alloc collections compiler_builtins rustc_unicode \
8689 native:backtrace \
8790 alloc_system panic_abort panic_unwind unwind
8891DEPS_arena := std
@@ -93,21 +96,20 @@ DEPS_getopts := std
9396DEPS_graphviz := std
9497DEPS_log := std
9598DEPS_num := std
96- DEPS_rbml := std log serialize
9799DEPS_serialize := std log
98100DEPS_term := std
99101DEPS_test := std getopts term native:rust_test_helpers
100102
101103DEPS_syntax := std term serialize log arena libc rustc_bitflags rustc_unicode rustc_errors syntax_pos
102- DEPS_syntax_ext := syntax syntax_pos rustc_errors fmt_macros
104+ DEPS_syntax_ext := syntax syntax_pos rustc_errors fmt_macros rustc_macro
103105DEPS_proc_macro := syntax syntax_pos rustc_plugin log
104106DEPS_syntax_pos := serialize
105107
106108DEPS_rustc_const_math := std syntax log serialize
107109DEPS_rustc_const_eval := rustc_const_math rustc syntax log serialize \
108110 rustc_back graphviz syntax_pos
109111
110- DEPS_rustc := syntax fmt_macros flate arena serialize getopts rbml \
112+ DEPS_rustc := syntax fmt_macros flate arena serialize getopts \
111113 log graphviz rustc_llvm rustc_back rustc_data_structures\
112114 rustc_const_math syntax_pos rustc_errors
113115DEPS_rustc_back := std syntax flate log libc
@@ -118,11 +120,13 @@ DEPS_rustc_driver := arena flate getopts graphviz libc rustc rustc_back rustc_bo
118120 rustc_trans rustc_privacy rustc_lint rustc_plugin \
119121 rustc_metadata syntax_ext proc_macro \
120122 rustc_passes rustc_save_analysis rustc_const_eval \
121- rustc_incremental syntax_pos rustc_errors
123+ rustc_incremental syntax_pos rustc_errors rustc_macro
122124DEPS_rustc_errors := log libc serialize syntax_pos
123125DEPS_rustc_lint := rustc log syntax syntax_pos rustc_const_eval
124126DEPS_rustc_llvm := native:rustllvm libc std rustc_bitflags
125- DEPS_rustc_metadata := rustc syntax syntax_pos rustc_errors rbml rustc_const_math
127+ DEPS_rustc_macro := std syntax
128+ DEPS_rustc_metadata := rustc syntax syntax_pos rustc_errors rustc_const_math \
129+ rustc_macro syntax_ext
126130DEPS_rustc_passes := syntax syntax_pos rustc core rustc_const_eval rustc_errors
127131DEPS_rustc_mir := rustc syntax syntax_pos rustc_const_math rustc_const_eval rustc_bitflags
128132DEPS_rustc_resolve := arena rustc log syntax syntax_pos rustc_errors
@@ -132,7 +136,7 @@ DEPS_rustc_privacy := rustc log syntax syntax_pos
132136DEPS_rustc_trans := arena flate getopts graphviz libc rustc rustc_back \
133137 log syntax serialize rustc_llvm rustc_platform_intrinsics \
134138 rustc_const_math rustc_const_eval rustc_incremental rustc_errors syntax_pos
135- DEPS_rustc_incremental := rbml rustc syntax_pos serialize rustc_data_structures
139+ DEPS_rustc_incremental := rustc syntax_pos serialize rustc_data_structures
136140DEPS_rustc_save_analysis := rustc log syntax syntax_pos serialize
137141DEPS_rustc_typeck := rustc syntax syntax_pos rustc_platform_intrinsics rustc_const_math \
138142 rustc_const_eval rustc_errors
@@ -151,6 +155,7 @@ TOOL_SOURCE_rustc := $(S)src/driver/driver.rs
151155TOOL_SOURCE_rustbook := $(S ) src/tools/rustbook/main.rs
152156TOOL_SOURCE_error_index_generator := $(S ) src/tools/error_index_generator/main.rs
153157
158+ ONLY_RLIB_compiler_builtins := 1
154159ONLY_RLIB_core := 1
155160ONLY_RLIB_libc := 1
156161ONLY_RLIB_alloc := 1
0 commit comments