summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2023-04-27 20:11:45 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2023-04-27 20:54:59 +0200
commit3c9d7a57338e1ae0131380dcf0f690740174ab8b (patch)
tree7d946adc350dad26efb0d0c4cfe4db61ead84381
parentf23dfbb003da0afc25349b086d02a61dfd86703a (diff)
downloadptxdist-3c9d7a57338e1ae0131380dcf0f690740174ab8b.tar.gz
ptxdist-3c9d7a57338e1ae0131380dcf0f690740174ab8b.tar.xz
toolchain: allow specifying a separate target for rust
It is needed for some architectures and toolchains. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--platforms/toolchain.in9
-rw-r--r--rules/pre/Rules.make4
2 files changed, 11 insertions, 2 deletions
diff --git a/platforms/toolchain.in b/platforms/toolchain.in
index 86e624329..49c9fddef 100644
--- a/platforms/toolchain.in
+++ b/platforms/toolchain.in
@@ -100,4 +100,13 @@ config COMPILER_PREFIX_BOOTLOADER
name used to compile the bootloader. If the prefix equals
the normal compiler you can use "${PTXCONF_COMPILER_PREFIX}".
+config RUST_TARGET
+ string
+ prompt "rust target"
+ default "${PTXCONF_GNU_TARGET}"
+ help
+ This is the target used for rustc. It can be the same as the
+ gnu target, but not always. It depends on the toolchain and
+ architecture.
+
endmenu
diff --git a/rules/pre/Rules.make b/rules/pre/Rules.make
index dde0c5519..b561a8211 100644
--- a/rules/pre/Rules.make
+++ b/rules/pre/Rules.make
@@ -265,12 +265,12 @@ CROSS_MESON_ENV = \
$(HOST_ENV_PROGS)
CROSS_CARGO_ENV := \
- CARGO_BUILD_TARGET=$(PTXCONF_GNU_TARGET) \
+ CARGO_BUILD_TARGET=$(PTXCONF_RUST_TARGET) \
RUST_TARGET_PATH=$(PTXDIST_PLATFORMDIR)/selected_toolchain
CROSS_CARGO_OPT := \
build \
- --target $(PTXCONF_GNU_TARGET) \
+ --target $(PTXCONF_RUST_TARGET) \
--release \
--frozen