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>
This commit is contained in:
Patrick Georgi 2014-11-28 23:08:51 +01:00 committed by Patrick Georgi
parent bd79c5eaf1
commit 02ac6c3572
2 changed files with 9 additions and 9 deletions

View File

@ -26,17 +26,17 @@ export KERNELVERSION := $(shell if [ -d "$(top)/.git" -a -f "`which git`" ]; \
####################################################################### #######################################################################
# Test for coreboot toolchain (except when explicitely not requested) # Test for coreboot toolchain (except when explicitely not requested)
ifneq ($(NOCOMPILE),1) 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) ifneq ($(CONFIG_ANY_TOOLCHAIN),y)
_toolchain=$(shell $(CC_x86_32) -v 2>&1 |grep -q "gcc version .*coreboot toolchain" && echo coreboot) _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) ifneq ($(_toolchain),coreboot)
$(error Please use the coreboot toolchain (or prove that your toolchain works)) $(error Please use the coreboot toolchain (or prove that your toolchain works))
endif endif
endif endif
endif endif
endif
####################################################################### #######################################################################
# Basic component discovery # Basic component discovery

View File

@ -506,7 +506,7 @@ while true ; do
;; ;;
-L|--clang) shift -L|--clang) shift
customizing="${customizing}, clang" 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 -z|--clean) shift
customizing="${customizing}, clean" customizing="${customizing}, clean"
@ -563,17 +563,17 @@ build_all_targets()
{ {
# seed shared utils # seed shared utils
TMPCFG=`mktemp` TMPCFG=`mktemp`
if [ "$enable_blobs" = "true" ]; then printf "$configoptions" > $TMPCFG
echo "CONFIG_USE_BLOBS=y" > $TMPCFG
fi
$MAKE -j $cpus DOTCONFIG=$TMPCFG obj=$TARGET/temp objutil=$TARGET/sharedutils allnoconfig $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= BUILDPREFIX=
if [ "$scanbuild" = "true" ]; then if [ "$scanbuild" = "true" ]; then
scanbuild_out=$TARGET/sharedutils-scanbuild scanbuild_out=$TARGET/sharedutils-scanbuild
rm -rf ${scanbuild_out} rm -rf ${scanbuild_out}
BUILDPREFIX="scan-build -o ${scanbuild_out}tmp" BUILDPREFIX="scan-build -o ${scanbuild_out}tmp"
fi 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 if [ "$scanbuild" = "true" ]; then
mv ${scanbuild_out}tmp/* ${scanbuild_out} mv ${scanbuild_out}tmp/* ${scanbuild_out}
rmdir ${scanbuild_out}tmp rmdir ${scanbuild_out}tmp