]> git.lizzy.rs Git - rust.git/blob - src/test/run-make/thumb-none-cortex-m/Makefile
741bce921e67e60922a114165920291ac5bd46b1
[rust.git] / src / test / run-make / thumb-none-cortex-m / Makefile
1 -include ../../run-make-fulldeps/tools.mk
2
3 # How to run this
4 # $ ./x.py clean
5 # $ ./x.py test --target thumbv6m-none-eabi,thumbv7m-none-eabi src/test/run-make
6
7 # Supported targets:
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)
12
13 # See https://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or
14 ifneq (,$(filter $(TARGET),thumbv6m-none-eabi thumbv7em-none-eabi thumbv7em-none-eabihf thumbv7m-none-eabi))
15
16 # For cargo setting
17 RUSTC := $(RUSTC_ORIGINAL)
18 LD_LIBRARY_PATH := $(HOST_RPATH_DIR)
19 # We need to be outside of 'src' dir in order to run cargo
20 WORK_DIR := $(TMPDIR)
21
22 HERE := $(shell pwd)
23
24 CRATE := cortex-m
25 CRATE_URL := https://github.com/rust-embedded/cortex-m
26 CRATE_SHA1 := a448e9156e2cb1e556e5441fd65426952ef4b927 # 0.5.0
27
28 export RUSTFLAGS := --cap-lints=allow
29
30 all:
31         env
32         mkdir -p $(WORK_DIR)
33         -cd $(WORK_DIR) && rm -rf $(CRATE)
34         cd $(WORK_DIR) && bash -x $(HERE)/../git_clone_sha1.sh $(CRATE) $(CRATE_URL) $(CRATE_SHA1)
35         cd $(WORK_DIR) && cd $(CRATE) && $(CARGO) build --target $(TARGET) -v
36 else
37
38 all:
39
40 endif