aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile24
1 files changed, 21 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index cc2d27ce7f..195bfe69dc 100644
--- a/Makefile
+++ b/Makefile
@@ -107,13 +107,31 @@ else
include $(HAVE_DOTCONFIG)
-include toolchain.inc
-
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
-CC:=clang -m32 -mno-mmx -mno-sse -no-integrated-as
+# FIXME: armv7/aarch64 won't build right now
+CFLAGS_x86_32 = -no-integrated-as -Qunused-arguments -target i386-elf -m32
+CC_x86_32:=clang
+
+ifneq ($(CONFIG_MMX),y)
+CFLAGS_x86_32 += -mno-mmx
+endif
+
+# FIXME: we end up with conflicting flags with this, not clear on this part.
+#ifneq ($(CONFIG_SSE),y)
+#CFLAGS_x86_32 += -mno-sse
+#endif
+
+CFLAGS_armv7 = -no-integrated-as -Qunused-arguments -target armv7-eabi -ccc-gcc-name $(CC_armv7)
+CC_armv7:=clang
+
+CFLAGS_aarch64 = -no-integrated-as -Qunused-arguments -target aarch64-eabi -ccc-gcc-name $(CC_aarch64)
+CC_aarch64:=clang
+
HOSTCC:=clang
endif
+include toolchain.inc
+
strip_quotes = $(subst ",,$(subst \",,$(1)))
# The primary target needs to be here before we include the