From 9d7fd993aac2ff8eac2babcc2edb92f63600f267 Mon Sep 17 00:00:00 2001 From: chrysn Date: Fri, 23 Sep 2022 01:53:01 +0200 Subject: [PATCH 1/4] make/info-build: Protect shell from parentheses in CFLAGS As for why the `-e` is being removed, observe that the `-e` would otherwise be printed; there is an [elaborate treatise] on what happens there. [elaborate treatise]: https://unix.stackexchange.com/questions/700675/why-is-echo-e-behaving-weird-in-a-makefile --- makefiles/info.inc.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefiles/info.inc.mk b/makefiles/info.inc.mk index b392e5c77c..f297ec33bd 100644 --- a/makefiles/info.inc.mk +++ b/makefiles/info.inc.mk @@ -82,7 +82,7 @@ info-build: @echo -e 'INCLUDES:$(patsubst %, \n\t%, $(INCLUDES))' @echo '' @echo 'CC: $(CC)' - @echo -e 'CFLAGS:$(patsubst %, \n\t%, $(CFLAGS))' + @echo 'CFLAGS:$(patsubst %, \n\t%, $(subst ','"'"',$(CFLAGS)))' @echo '' @echo 'CXX: $(CXX)' @echo -e 'CXXUWFLAGS:$(patsubst %, \n\t%, $(CXXUWFLAGS))' From 5f41839b3d4b646f710b9f6605961a82a74dca94 Mon Sep 17 00:00:00 2001 From: chrysn Date: Fri, 23 Sep 2022 01:55:12 +0200 Subject: [PATCH 2/4] build-info: Output CARGO_CHANNEL etc. --- makefiles/info.inc.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/makefiles/info.inc.mk b/makefiles/info.inc.mk index f297ec33bd..d207862914 100644 --- a/makefiles/info.inc.mk +++ b/makefiles/info.inc.mk @@ -89,6 +89,9 @@ info-build: @echo -e 'CXXEXFLAGS:$(patsubst %, \n\t%, $(CXXEXFLAGS))' @echo '' @echo 'RUST_TARGET: $(RUST_TARGET)' + @echo 'CARGO_CHANNEL: $(CARGO_CHANNEL)' + @echo 'CARGO_PROFILE: $(CARGO_PROFILE)' + @echo 'CARGO_OPTIONS: $(CARGO_OPTIONS)' @echo '' @echo 'LINK: $(LINK)' @echo -e 'LINKFLAGS:$(patsubst %, \n\t%, $(LINKFLAGS))' From babccfa947eaec640667241a18ebe612b9227446 Mon Sep 17 00:00:00 2001 From: chrysn Date: Fri, 23 Sep 2022 02:03:50 +0200 Subject: [PATCH 3/4] makefiles: Add `make info-rust` target --- makefiles/info.inc.mk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/makefiles/info.inc.mk b/makefiles/info.inc.mk index d207862914..cc2e123423 100644 --- a/makefiles/info.inc.mk +++ b/makefiles/info.inc.mk @@ -5,6 +5,7 @@ info-debug-variable-% info-toolchains-supported \ check-toolchain-supported \ info-programmers-supported \ + info-rust \ create-Makefile.ci \ # @@ -244,3 +245,7 @@ check-toolchain-supported: info-programmers-supported: @echo $(sort $(PROGRAMMERS_SUPPORTED)) + +info-rust: + cargo $(patsubst +,,+${CARGO_CHANNEL}) version + c2rust --version From ec5d75f965ff00494d724a8ced4cff82a92e3636 Mon Sep 17 00:00:00 2001 From: chrysn Date: Fri, 23 Sep 2022 02:05:32 +0200 Subject: [PATCH 4/4] makefiles: Remove duplicate `cargo` invocation Back in 36a029c0, rather than being line wrapped, this was duplicated. --- makefiles/cargo-targets.inc.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/makefiles/cargo-targets.inc.mk b/makefiles/cargo-targets.inc.mk index c12518bf28..4d56f79d5a 100644 --- a/makefiles/cargo-targets.inc.mk +++ b/makefiles/cargo-targets.inc.mk @@ -51,7 +51,6 @@ $(CARGO_LIB): $(RIOTBUILD_CONFIG_HEADER_C) $(BUILDDEPS) $(CARGO_COMPILE_COMMANDS ($(COLOR_ECHO) \ '$(COLOR_RED)Error: No Rust libraries are installed for the board'"'"'s CPU.$(COLOR_RESET) Run\n $(COLOR_GREEN)$$$(COLOR_RESET) rustup target add $(RUST_TARGET) $(patsubst %,--toolchain %,$(CARGO_CHANNEL))\nor set `CARGO_OPTIONS=-Zbuild-std=core`.'; \ exit 1) - $(Q)CC= CFLAGS= CPPFLAGS= CXXFLAGS= RIOT_COMPILE_COMMANDS_JSON="$(CARGO_COMPILE_COMMANDS)" RIOT_USEMODULE="$(USEMODULE)" cargo $(patsubst +,,+${CARGO_CHANNEL}) build --target $(RUST_TARGET) `if [ x$(CARGO_PROFILE) = xrelease ]; then echo --release; else if [ x$(CARGO_PROFILE) '!=' xdebug ]; then echo "--profile $(CARGO_PROFILE)"; fi; fi` $(CARGO_OPTIONS) $(Q)CC= CFLAGS= CPPFLAGS= CXXFLAGS= \ RIOT_COMPILE_COMMANDS_JSON="$(CARGO_COMPILE_COMMANDS)" \ RIOT_USEMODULE="$(USEMODULE)" \