build system: move more clang handling to xcompile

clang requires some additional options to disable warnings which
can be handled by xcompile.
Also drop the hard coded clang compilers in Makefile

Change-Id: I0f12f755420f315127e6d9adc00b1246c6e7131b
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/7612
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Patrick Georgi
2015-06-04 13:45:40 +02:00
committed by Patrick Georgi
parent 45dd591ff6
commit 34de29aeb3
2 changed files with 12 additions and 27 deletions

View File

@@ -122,32 +122,10 @@ include $(HAVE_DOTCONFIG)
include .xcompile
ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y)
# FIXME: armv7/aarch64 won't build right now
# NOTE: clang puts compiler-rt under lib/linux/libclang_rt.builtins-i386.a
# this means the triple is i386-linux-elf instead of i386-none-elf
CFLAGS_x86_32 = -no-integrated-as -Qunused-arguments -target i386-linux-elf -m32
# Tone down some clang warnings
CFLAGS_x86_32 += -Wno-unused-variable -Wno-unused-function -Wno-tautological-compare -Wno-shift-overflow
CC_x86_32:=clang
HOSTCC := 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_arm = -no-integrated-as -Qunused-arguments -target arm-eabi -ccc-gcc-name $(CC_arm)
CC_arm:=clang
CFLAGS_aarch64 = -no-integrated-as -Qunused-arguments -target aarch64-eabi -ccc-gcc-name $(CC_aarch64)
CC_aarch64:=clang
endif
include toolchain.inc
strip_quotes = $(subst ",,$(subst \",,$(1)))