summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Georgi <patrick@georgi-clan.de>2014-11-28 23:08:51 +0100
committerPatrick Georgi <pgeorgi@google.com>2014-11-30 12:20:11 +0100
commit02ac6c3572e2aedae256597133a1414c0e2e7f0c (patch)
tree61a08ac8a8d8db4a9bece74742c2198463cc00a7
parentbd79c5eaf1f13f33c43c99657f24fa4c0330619a (diff)
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 <pgeorgi@google.com> Reviewed-on: http://review.coreboot.org/7607 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
-rw-r--r--Makefile.inc8
-rwxr-xr-xutil/abuild/abuild10
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