diff --git a/Makefile b/Makefile index cf038e88a3..3c97f0ed0a 100644 --- a/Makefile +++ b/Makefile @@ -22,8 +22,10 @@ ifeq ($(INNER_SCANBUILD),y) CC_real:=$(CC) endif + $(if $(wildcard .xcompile),,$(eval $(shell bash util/xcompile/xcompile > .xcompile))) include .xcompile + ifeq ($(INNER_SCANBUILD),y) CC:=$(CC_real) HOSTCC:=$(CC_real) --hostcc @@ -76,6 +78,13 @@ else include $(top)/.config +ifneq ($(INNER_SCANBUILD),y) +ifeq ($(CONFIG_COMPILER_LLVM_CLANG),y) +CC:=clang -m32 +HOSTCC:=clang +endif +endif + ARCHDIR-$(CONFIG_ARCH_X86) := i386 ARCHDIR-$(CONFIG_ARCH_POWERPC) := ppc diff --git a/src/Kconfig b/src/Kconfig index 1e1de895df..55a40ff4f0 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -46,15 +46,28 @@ config CBFS_PREFIX Select the prefix to all files put into the image. It's "fallback" by default, "normal" is a common alternative. +choice + prompt "Compiler" + default COMPILER_GCC + help + This option allows you to select the compiler used for building + coreboot. + +config COMPILER_GCC + bool "GCC" +config COMPILER_LLVM_CLANG + bool "LLVM/clang" +endchoice + config SCANBUILD_ENABLE - bool "build with scan-build for static analysis" + bool "Build with scan-build for static analysis" default n help Changes the build process to scan-build is used. Requires scan-build in path. config SCANBUILD_REPORT_LOCATION - string "directory to put scan-build report in" + string "Directory to put scan-build report in" default "" depends on SCANBUILD_ENABLE help diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile index 5da7874343..65e6e704f7 100644 --- a/util/xcompile/xcompile +++ b/util/xcompile/xcompile @@ -5,8 +5,8 @@ # Copyright (C) 2007-2010 coresystems GmbH # # This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of