[coreboot-gerrit] Patch set updated for coreboot: libpayload: use BUILDID to generate different .xcompile files

Iru Cai (mytbk920423@gmail.com) gerrit at coreboot.org
Sat Apr 16 05:15:27 CEST 2016


Iru Cai (mytbk920423 at gmail.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14390

-gerrit

commit fa6879904f028b45509df78ae3d4b1da77f44df7
Author: Iru Cai <mytbk920423 at gmail.com>
Date:   Sat Apr 16 08:38:08 2016 +0800

    libpayload: use BUILDID to generate different .xcompile files
    
    For multiple libpayload builds (e.g. make -j2 with coreinfo and
    nvramcui both being a secondary payload), these builds all write a
    .xcompile file on libpayload source directory, and may cause a
    conflict. This change use a BUILDID variable to solve this.
    
    Change-Id: I1efadecaccf5316512cc9d978860105c532771c8
    Signed-off-by: Iru Cai <mytbk920423 at gmail.com>
---
 payloads/coreinfo/Makefile   |  2 ++
 payloads/libpayload/Makefile | 13 ++++++++-----
 payloads/nvramcui/Makefile   |  2 ++
 3 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/payloads/coreinfo/Makefile b/payloads/coreinfo/Makefile
index d953091..8852fdb 100644
--- a/payloads/coreinfo/Makefile
+++ b/payloads/coreinfo/Makefile
@@ -29,6 +29,8 @@ export KCONFIG_TRISTATE := $(coreinfo_obj)/tristate.conf
 export KCONFIG_NEGATIVES := 1
 export Kconfig := Kconfig
 
+export BUILDID := coreinfo
+
 export V := $(V)
 
 CONFIG_SHELL := sh
diff --git a/payloads/libpayload/Makefile b/payloads/libpayload/Makefile
index 00fb537..866e95e 100644
--- a/payloads/libpayload/Makefile
+++ b/payloads/libpayload/Makefile
@@ -50,6 +50,9 @@ export KCONFIG_NEGATIVES := 1
 export Kconfig := Kconfig
 export CONFIG_ := CONFIG_LP_
 
+export BUILDID ?=
+export LPXCOMPILE := $(BUILDID).xcompile
+
 # directory containing the toplevel Makefile.inc
 TOPLEVEL := .
 
@@ -83,9 +86,9 @@ 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)))
+$(if $(wildcard $(LPXCOMPILE)),,$(eval $(shell $(top)/../../util/xcompile/xcompile $(XGCCPATH) > $(LPXCOMPILE))))
 
-.xcompile: $(top)/../../util/xcompile/xcompile
+$(LPXCOMPILE): $(top)/../../util/xcompile/xcompile
 	$< $(XGCCPATH) > $@.tmp
 	\mv -f $@.tmp $@ 2> /dev/null
 
@@ -101,7 +104,7 @@ include $(srck)/Makefile
 
 include $(HAVE_DOTCONFIG)
 
-include .xcompile
+include $(LPXCOMPILE)
 
 ARCHDIR-$(CONFIG_LP_ARCH_ARM)     := arm
 ARCHDIR-$(CONFIG_LP_ARCH_ARM64)   := arm64
@@ -298,7 +301,7 @@ doxygen-clean:
 	rm -rf $(DOXYGEN_OUTPUT_DIR)
 
 clean-for-update: doxygen-clean clean-for-update-target
-	rm -f $(allobjs) .xcompile
+	rm -f $(allobjs) *.xcompile
 	rm -f $(DEPENDENCIES)
 	rmdir -p $(alldirs) 2>/dev/null >/dev/null || true
 
@@ -310,6 +313,6 @@ clean-cscope:
 
 distclean: clean-cscope
 	rm -rf $(obj)
-	rm -f .config .config.old ..config.tmp .kconfig.d .tmpconfig* .ccwrap .xcompile junit.xml
+	rm -f .config .config.old ..config.tmp .kconfig.d .tmpconfig* .ccwrap *.xcompile junit.xml
 
 .PHONY: $(PHONY) clean clean-cscope cscope distclean doxygen doxy
diff --git a/payloads/nvramcui/Makefile b/payloads/nvramcui/Makefile
index 0f27ff8..71d89e7 100755
--- a/payloads/nvramcui/Makefile
+++ b/payloads/nvramcui/Makefile
@@ -4,6 +4,8 @@ XCOMPILE=$(LIBPAYLOAD_DIR)/libpayload.xcompile
 # to avoid pollute the libpayload source directory and possible conflicts
 LPOPTS=obj="$(CURDIR)/build" DESTDIR="$(CURDIR)" DOTCONFIG="$(CURDIR)/.config"
 
+export BUILDID := nvramcui
+
 all: nvramcui.elf
 
 libpayload:



More information about the coreboot-gerrit mailing list