summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2022-06-06 17:06:58 -0700
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-06-15 22:14:34 +0000
commitdbd7e8249d3cf0a834629127ee378fdf4b700681 (patch)
treea7da927de51d39629dd12687885df7c07d663a42
parent38ef6b7306679544e8e86adcebb3cb8ff3c78a3d (diff)
downloadchrome-ec-dbd7e8249d3cf0a834629127ee378fdf4b700681.tar.gz
Makefile: Set core-specific LLVM toolchain
There are separate toolchains for ARMv6-M (cortex-m0) and ARMv7-M (cortex-m). BRANCH=none BUG=b:172020503, b:234181908 TEST=./util/compare_build.sh -b all -j 120 => MATCH Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: Icc131934a7b721ef3732d1b0e3f26bd4906239d2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3693041 Reviewed-by: Diana Z <dzigterman@chromium.org>
-rw-r--r--Makefile.toolchain1
-rw-r--r--core/cortex-m/build.mk12
-rw-r--r--core/cortex-m0/build.mk11
3 files changed, 19 insertions, 5 deletions
diff --git a/Makefile.toolchain b/Makefile.toolchain
index 6f52c374ca..c2e952d43b 100644
--- a/Makefile.toolchain
+++ b/Makefile.toolchain
@@ -31,7 +31,6 @@ ifeq ($(cc-name),gcc)
cxx-name:=g++
else
cxx-name:=clang++
-CROSS_COMPILE_arm:=arm-none-eabi-
endif
# Try not to assume too much about optional tools and prefixes
diff --git a/core/cortex-m/build.mk b/core/cortex-m/build.mk
index cab5fab0f4..bcffe16e8d 100644
--- a/core/cortex-m/build.mk
+++ b/core/cortex-m/build.mk
@@ -6,10 +6,18 @@
# Cortex-M4 core OS files build
#
-# Use coreboot-sdk
+
+ifeq ($(cc-name),gcc)
+# coreboot sdk
+CROSS_COMPILE_ARM_DEFAULT:=/opt/coreboot-sdk/bin/arm-eabi-
+else
+# llvm sdk
+CROSS_COMPILE_ARM_DEFAULT:=armv7m-cros-eabi-
+endif
+
$(call set-option,CROSS_COMPILE,\
$(CROSS_COMPILE_arm),\
- /opt/coreboot-sdk/bin/arm-eabi-)
+ $(CROSS_COMPILE_ARM_DEFAULT))
# FPU compilation flags
CFLAGS_FPU-$(CONFIG_FPU)=-mfloat-abi=hard
diff --git a/core/cortex-m0/build.mk b/core/cortex-m0/build.mk
index 6777e8edda..eab2a1eb1c 100644
--- a/core/cortex-m0/build.mk
+++ b/core/cortex-m0/build.mk
@@ -6,10 +6,17 @@
# Cortex-M0 core OS files build
#
-# Use coreboot-sdk
+ifeq ($(cc-name),gcc)
+# coreboot sdk
+CROSS_COMPILE_ARM_DEFAULT:=/opt/coreboot-sdk/bin/arm-eabi-
+else
+# llvm sdk
+CROSS_COMPILE_ARM_DEFAULT:=arm-none-eabi-
+endif
+
$(call set-option,CROSS_COMPILE,\
$(CROSS_COMPILE_arm),\
- /opt/coreboot-sdk/bin/arm-eabi-)
+ $(CROSS_COMPILE_ARM_DEFAULT))
# CPU specific compilation flags
CFLAGS_CPU+=-mthumb