summaryrefslogtreecommitdiffstats
path: root/payloads
diff options
context:
space:
mode:
authorPatrick Georgi <pgeorgi@chromium.org>2017-01-19 23:20:14 +0100
committerPatrick Georgi <pgeorgi@google.com>2017-01-24 23:22:56 +0100
commit0ffef882d8357b1e14e983829e0a26415ab43b48 (patch)
tree232716a26ea823a947dc03addbdbb72ac2f6a22f /payloads
parent5e949faec149c8716b6cb92ab3518d04610f7d1d (diff)
downloadcoreboot-0ffef882d8357b1e14e983829e0a26415ab43b48.tar.gz
coreboot-0ffef882d8357b1e14e983829e0a26415ab43b48.tar.bz2
coreboot-0ffef882d8357b1e14e983829e0a26415ab43b48.zip
build system: don't run xcompile or git for %clean/%config targets
It takes a long time for no gain: We don't need to update the submodules, we don't need to fetch the revision, we don't need to find the compilers, when all we want to do is to manipulate the .config file or clean the build directory. Change-Id: Ie1bd446a0d49a81e3cccdb56fe2c43ffd83b6c98 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Reviewed-on: https://review.coreboot.org/18182 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Martin Roth <martinroth@google.com>
Diffstat (limited to 'payloads')
-rw-r--r--payloads/coreinfo/Makefile12
-rw-r--r--payloads/libpayload/Makefile22
2 files changed, 20 insertions, 14 deletions
diff --git a/payloads/coreinfo/Makefile b/payloads/coreinfo/Makefile
index 486c96cf1d1d..50659d3c0b3c 100644
--- a/payloads/coreinfo/Makefile
+++ b/payloads/coreinfo/Makefile
@@ -20,6 +20,7 @@ srck := $(src)/../../util/kconfig
coreinfo_obj := $(src)/build
objk := $(src)/build/util/kconfig
+ifeq ($(filter %clean,$(MAKECMDGOALS)),)
export KERNELVERSION := 0.1.0
export KCONFIG_AUTOHEADER := $(coreinfo_obj)/config.h
export KCONFIG_AUTOCONFIG := $(coreinfo_obj)/auto.conf
@@ -128,6 +129,12 @@ $(coreinfo_obj)/config.h:
$(shell mkdir -p $(coreinfo_obj) $(objk)/lxdialog $(KCONFIG_SPLITCONFIG))
+include $(srck)/Makefile
+
+.PHONY: $(PHONY) prepare
+
+else
+
clean:
rm -rf build/*.elf build/*.o .xcompile
@@ -135,6 +142,5 @@ distclean: clean
rm -rf build lpbuild
rm -f .config* lp.config*
-include $(srck)/Makefile
-
-.PHONY: $(PHONY) prepare clean distclean
+.PHONY: clean distclean
+endif
diff --git a/payloads/libpayload/Makefile b/payloads/libpayload/Makefile
index 00fb5374bb86..34df485f30b8 100644
--- a/payloads/libpayload/Makefile
+++ b/payloads/libpayload/Makefile
@@ -81,14 +81,6 @@ DOXYGEN_OUTPUT_DIR := doxygen
all: real-all
-# in addition to the dependency below, create the file if it doesn't exist
-# to silence stupid warnings about a file that would be generated anyway.
-$(if $(wildcard .xcompile),,$(eval $(shell $(top)/../../util/xcompile/xcompile $(XGCCPATH) > .xcompile)))
-
-.xcompile: $(top)/../../util/xcompile/xcompile
- $< $(XGCCPATH) > $@.tmp
- \mv -f $@.tmp $@ 2> /dev/null
-
ifeq ($(INNER_SCANBUILD),y)
CC:=$(CC_real)
HOSTCC:=$(CC_real) --hostcc
@@ -101,8 +93,6 @@ include $(srck)/Makefile
include $(HAVE_DOTCONFIG)
-include .xcompile
-
ARCHDIR-$(CONFIG_LP_ARCH_ARM) := arm
ARCHDIR-$(CONFIG_LP_ARCH_ARM64) := arm64
ARCHDIR-$(CONFIG_LP_ARCH_MIPS) := mips
@@ -138,7 +128,7 @@ ifeq ($(strip $(HAVE_DOTCONFIG)),)
NOCOMPILE:=1
endif
ifneq ($(MAKECMDGOALS),)
-ifneq ($(filter %config distclean,$(MAKECMDGOALS)),)
+ifneq ($(filter %config %clean,$(MAKECMDGOALS)),)
NOCOMPILE:=1
endif
endif
@@ -149,6 +139,16 @@ real-all: config
else
+# in addition to the dependency below, create the file if it doesn't exist
+# to silence stupid warnings about a file that would be generated anyway.
+$(if $(wildcard .xcompile)$(NOCOMPILE),,$(eval $(shell $(top)/../../util/xcompile/xcompile $(XGCCPATH) > .xcompile)))
+
+.xcompile: $(top)/../../util/xcompile/xcompile
+ $< $(XGCCPATH) > $@.tmp
+ \mv -f $@.tmp $@ 2> /dev/null
+
+-include .xcompile
+
ifneq ($(INNER_SCANBUILD),y)
ifeq ($(CONFIG_LP_COMPILER_LLVM_CLANG),y)
CC:=clang -m32