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>
This commit is contained in:
parent
5e949faec1
commit
0ffef882d8
20
Makefile
20
Makefile
|
@ -30,16 +30,6 @@
|
||||||
## SUCH DAMAGE.
|
## SUCH DAMAGE.
|
||||||
##
|
##
|
||||||
|
|
||||||
# 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 util/xcompile/xcompile $(XGCCPATH) > .xcompile || rm -f .xcompile)))
|
|
||||||
|
|
||||||
.xcompile: util/xcompile/xcompile
|
|
||||||
rm -f $@
|
|
||||||
$< $(XGCCPATH) > $@.tmp
|
|
||||||
\mv -f $@.tmp $@ 2> /dev/null
|
|
||||||
rm -f $@.tmp
|
|
||||||
|
|
||||||
export top := $(CURDIR)
|
export top := $(CURDIR)
|
||||||
export src := src
|
export src := src
|
||||||
export srck := $(top)/util/kconfig
|
export srck := $(top)/util/kconfig
|
||||||
|
@ -139,6 +129,16 @@ else
|
||||||
|
|
||||||
include $(DOTCONFIG)
|
include $(DOTCONFIG)
|
||||||
|
|
||||||
|
# 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 util/xcompile/xcompile $(XGCCPATH) > .xcompile || rm -f .xcompile)))
|
||||||
|
|
||||||
|
.xcompile: util/xcompile/xcompile
|
||||||
|
rm -f $@
|
||||||
|
$< $(XGCCPATH) > $@.tmp
|
||||||
|
\mv -f $@.tmp $@ 2> /dev/null
|
||||||
|
rm -f $@.tmp
|
||||||
|
|
||||||
-include .xcompile
|
-include .xcompile
|
||||||
|
|
||||||
ifneq ($(XCOMPILE_COMPLETE),1)
|
ifneq ($(XCOMPILE_COMPLETE),1)
|
||||||
|
|
|
@ -13,7 +13,11 @@
|
||||||
## GNU General Public License for more details.
|
## GNU General Public License for more details.
|
||||||
##
|
##
|
||||||
|
|
||||||
|
ifneq ($(NOCOMPILE),1)
|
||||||
GIT:=$(shell [ -e "$(top)/.git" ] && command -v git)
|
GIT:=$(shell [ -e "$(top)/.git" ] && command -v git)
|
||||||
|
else
|
||||||
|
GIT:=
|
||||||
|
endif
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
# normalize Kconfig variables in a central place
|
# normalize Kconfig variables in a central place
|
||||||
|
|
|
@ -20,6 +20,7 @@ srck := $(src)/../../util/kconfig
|
||||||
coreinfo_obj := $(src)/build
|
coreinfo_obj := $(src)/build
|
||||||
objk := $(src)/build/util/kconfig
|
objk := $(src)/build/util/kconfig
|
||||||
|
|
||||||
|
ifeq ($(filter %clean,$(MAKECMDGOALS)),)
|
||||||
export KERNELVERSION := 0.1.0
|
export KERNELVERSION := 0.1.0
|
||||||
export KCONFIG_AUTOHEADER := $(coreinfo_obj)/config.h
|
export KCONFIG_AUTOHEADER := $(coreinfo_obj)/config.h
|
||||||
export KCONFIG_AUTOCONFIG := $(coreinfo_obj)/auto.conf
|
export KCONFIG_AUTOCONFIG := $(coreinfo_obj)/auto.conf
|
||||||
|
@ -128,6 +129,12 @@ $(coreinfo_obj)/config.h:
|
||||||
|
|
||||||
$(shell mkdir -p $(coreinfo_obj) $(objk)/lxdialog $(KCONFIG_SPLITCONFIG))
|
$(shell mkdir -p $(coreinfo_obj) $(objk)/lxdialog $(KCONFIG_SPLITCONFIG))
|
||||||
|
|
||||||
|
include $(srck)/Makefile
|
||||||
|
|
||||||
|
.PHONY: $(PHONY) prepare
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf build/*.elf build/*.o .xcompile
|
rm -rf build/*.elf build/*.o .xcompile
|
||||||
|
|
||||||
|
@ -135,6 +142,5 @@ distclean: clean
|
||||||
rm -rf build lpbuild
|
rm -rf build lpbuild
|
||||||
rm -f .config* lp.config*
|
rm -f .config* lp.config*
|
||||||
|
|
||||||
include $(srck)/Makefile
|
.PHONY: clean distclean
|
||||||
|
endif
|
||||||
.PHONY: $(PHONY) prepare clean distclean
|
|
||||||
|
|
|
@ -81,14 +81,6 @@ DOXYGEN_OUTPUT_DIR := doxygen
|
||||||
|
|
||||||
all: real-all
|
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)
|
ifeq ($(INNER_SCANBUILD),y)
|
||||||
CC:=$(CC_real)
|
CC:=$(CC_real)
|
||||||
HOSTCC:=$(CC_real) --hostcc
|
HOSTCC:=$(CC_real) --hostcc
|
||||||
|
@ -101,8 +93,6 @@ include $(srck)/Makefile
|
||||||
|
|
||||||
include $(HAVE_DOTCONFIG)
|
include $(HAVE_DOTCONFIG)
|
||||||
|
|
||||||
include .xcompile
|
|
||||||
|
|
||||||
ARCHDIR-$(CONFIG_LP_ARCH_ARM) := arm
|
ARCHDIR-$(CONFIG_LP_ARCH_ARM) := arm
|
||||||
ARCHDIR-$(CONFIG_LP_ARCH_ARM64) := arm64
|
ARCHDIR-$(CONFIG_LP_ARCH_ARM64) := arm64
|
||||||
ARCHDIR-$(CONFIG_LP_ARCH_MIPS) := mips
|
ARCHDIR-$(CONFIG_LP_ARCH_MIPS) := mips
|
||||||
|
@ -138,7 +128,7 @@ ifeq ($(strip $(HAVE_DOTCONFIG)),)
|
||||||
NOCOMPILE:=1
|
NOCOMPILE:=1
|
||||||
endif
|
endif
|
||||||
ifneq ($(MAKECMDGOALS),)
|
ifneq ($(MAKECMDGOALS),)
|
||||||
ifneq ($(filter %config distclean,$(MAKECMDGOALS)),)
|
ifneq ($(filter %config %clean,$(MAKECMDGOALS)),)
|
||||||
NOCOMPILE:=1
|
NOCOMPILE:=1
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -149,6 +139,16 @@ real-all: config
|
||||||
|
|
||||||
else
|
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)
|
ifneq ($(INNER_SCANBUILD),y)
|
||||||
ifeq ($(CONFIG_LP_COMPILER_LLVM_CLANG),y)
|
ifeq ($(CONFIG_LP_COMPILER_LLVM_CLANG),y)
|
||||||
CC:=clang -m32
|
CC:=clang -m32
|
||||||
|
|
Loading…
Reference in New Issue