build system: re-enable clang use

Change-Id: I6e07fdec449d0b259d77986f65a60aa36d367cc8
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Signed-off-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-on: http://review.coreboot.org/5747
Tested-by: build bot (Jenkins)
diff --git a/Makefile b/Makefile
index cc2d27c..195bfe6 100644
--- a/Makefile
+++ b/Makefile
@@ -107,13 +107,31 @@
 
 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