1 -include ../../run-make-fulldeps/tools.mk
5 # $ ./x.py test --target thumbv6m-none-eabi,thumbv7m-none-eabi src/test/run-make
8 # - thumbv6m-none-eabi (Bare Cortex-M0, M0+, M1)
9 # - thumbv7em-none-eabi (Bare Cortex-M4, M7)
10 # - thumbv7em-none-eabihf (Bare Cortex-M4F, M7F, FPU, hardfloat)
11 # - thumbv7m-none-eabi (Bare Cortex-M3)
16 RUSTC := $(RUSTC_ORIGINAL)
17 LD_LIBRARY_PATH := $(HOST_RPATH_DIR)
18 # We need to be outside of 'src' dir in order to run cargo
24 CRATE_URL := https://github.com/rust-embedded/cortex-m
25 CRATE_SHA1 := a448e9156e2cb1e556e5441fd65426952ef4b927 # 0.5.0
27 # Don't make lints fatal, but they need to at least warn or they break Cargo's target info parsing.
28 export RUSTFLAGS := --cap-lints=warn
33 -cd $(WORK_DIR) && rm -rf $(CRATE)
34 cd $(WORK_DIR) && bash -x $(HERE)/../git_clone_sha1.sh $(CRATE) $(CRATE_URL) $(CRATE_SHA1)
35 # HACK(eddyb) sets `RUSTC_BOOTSTRAP=1` so Cargo can accept nightly features.
36 # These come from the top-level Rust workspace, that this crate is not a
37 # member of, but Cargo tries to load the workspace `Cargo.toml` anyway.
38 cd $(WORK_DIR) && cd $(CRATE) && env RUSTC_BOOTSTRAP=1 $(BOOTSTRAP_CARGO) build --target $(TARGET) -v