From 02ac6c3572e2aedae256597133a1414c0e2e7f0c Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Fri, 28 Nov 2014 23:08:51 +0100 Subject: [PATCH] build system: only do the compiler test for gcc There isn't a history of broken clang compilers yet so let's give it a chance. Change-Id: Iddb63700e3850116313c1ddee69111f936191055 Signed-off-by: Patrick Georgi Reviewed-on: http://review.coreboot.org/7607 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan --- Makefile.inc | 8 ++++---- util/abuild/abuild | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Makefile.inc b/Makefile.inc index 3719dd5727..a925d6718e 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -26,17 +26,17 @@ export KERNELVERSION := $(shell if [ -d "$(top)/.git" -a -f "`which git`" ]; \ ####################################################################### # Test for coreboot toolchain (except when explicitely not requested) ifneq ($(NOCOMPILE),1) -# only run if we're doing a build (not for tests, kconfig, ...) +# only run if we're doing a build (not for tests, kconfig, ...), using gcc +# rationale: gcc versions by Linux distributions tend to be quite messed up +ifeq ($(CONFIG_COMPILER_GCC),y) ifneq ($(CONFIG_ANY_TOOLCHAIN),y) _toolchain=$(shell $(CC_x86_32) -v 2>&1 |grep -q "gcc version .*coreboot toolchain" && echo coreboot) -ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y) -_toolchain=$(shell $(CC_x86_32) -v 2>&1 |grep -q "clang version" && echo coreboot) -endif ifneq ($(_toolchain),coreboot) $(error Please use the coreboot toolchain (or prove that your toolchain works)) endif endif endif +endif ####################################################################### # Basic component discovery diff --git a/util/abuild/abuild b/util/abuild/abuild index ac516f72fb..a6b96c059a 100755 --- a/util/abuild/abuild +++ b/util/abuild/abuild @@ -506,7 +506,7 @@ while true ; do ;; -L|--clang) shift customizing="${customizing}, clang" - configoptions="${configoptions}CONFIG_COMPILER_LLVM_CLANG=y\n" + configoptions="${configoptions}CONFIG_COMPILER_LLVM_CLANG=y\n# CONFIG_COMPILER_GCC is not set\n" ;; -z|--clean) shift customizing="${customizing}, clean" @@ -563,17 +563,17 @@ build_all_targets() { # seed shared utils TMPCFG=`mktemp` - if [ "$enable_blobs" = "true" ]; then - echo "CONFIG_USE_BLOBS=y" > $TMPCFG - fi + printf "$configoptions" > $TMPCFG $MAKE -j $cpus DOTCONFIG=$TMPCFG obj=$TARGET/temp objutil=$TARGET/sharedutils allnoconfig + printf "$configoptions" >> $TMPCFG + $MAKE -j $cpus DOTCONFIG=$TMPCFG obj=$TARGET/temp objutil=$TARGET/sharedutils oldconfig 2>/dev/null |head > /dev/null BUILDPREFIX= if [ "$scanbuild" = "true" ]; then scanbuild_out=$TARGET/sharedutils-scanbuild rm -rf ${scanbuild_out} BUILDPREFIX="scan-build -o ${scanbuild_out}tmp" fi - $BUILDPREFIX $MAKE -j $cpus DOTCONFIG=$TMPCFG obj=$TARGET/temp objutil=$TARGET/sharedutils `printf $configoptions` tools || exit 1 + $BUILDPREFIX $MAKE -j $cpus DOTCONFIG=$TMPCFG obj=$TARGET/temp objutil=$TARGET/sharedutils tools || exit 1 if [ "$scanbuild" = "true" ]; then mv ${scanbuild_out}tmp/* ${scanbuild_out} rmdir ${scanbuild_out}tmp