From dce070ebe0ab95a8a87f5be2a0696ec58a749ab0 Mon Sep 17 00:00:00 2001 From: Sean Cross Date: Wed, 13 Nov 2019 09:26:00 -0800 Subject: [PATCH] examples: make: specify CROSS_COMPILE for fomu When BOARD=fomu, use the riscv cross-compiler. Otherwise, use the default arm compiler. This can be overridden by passing CROSS_COMIPLE on the command line. Note that there are now three common risc-v prefixes: - riscv32-unknown-elf- : Common for users who compile their own - riscv64-unknown-elf- : Upstream multiarch toolchain from SiFive - riscv-none-embed- : xPack embedded version of SiFive toolchain Here we assume users are using the `riscv-none-embed-` toolchain from xPack, because it appears to be growing more common. Additionally, there is much confusion surrounding `riscv64-unknown-elf-`, which actually includes both 32- and 64-bit runtimes and can generate software for both. Signed-off-by: Sean Cross --- examples/make.mk | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/examples/make.mk b/examples/make.mk index c2e0559fb..5bb556870 100644 --- a/examples/make.mk +++ b/examples/make.mk @@ -2,8 +2,12 @@ # Common make definition for all examples # -# Compiler +# Compiler +ifeq ($(BOARD), fomu) +CROSS_COMPILE = riscv-none-embed- +else CROSS_COMPILE = arm-none-eabi- +endif CC = $(CROSS_COMPILE)gcc CXX = $(CROSS_COMPILE)g++ OBJCOPY = $(CROSS_COMPILE)objcopy