From d2c02420e2e43a957e249804f7037b01e9a69b06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= Date: Tue, 11 Dec 2018 13:06:40 +0100 Subject: Makefile.inc: Avoid race condition when using 'make -j' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When building coreboot from scratch with 'make -j4', I sometimes see this error: CREATE build/mainboard/emulation/qemu-riscv/cbfs-file.wblRgZ.out (from /.../coreboot/.config) HOSTCC cbfstool/cbfstool (link) make[1]: execvp: build/util/kconfig/conf: Permission denied make[1]: *** [/.../coreboot/util/kconfig/Makefile:92: savedefconfig] Error 127 It happens, I think, because the rule generated by cbfs-files-processor-defconfig runs 'make savedefconfig', which builds build/util/kconfig/conf, and something also builds it, at the same time. Fix this case, by making this rule depend on $(objutil)/kconfig/conf. The same fix is also precautiously applied to the rule for $(KCONFIG_AUTOHEADER) in Makefile. Change-Id: Ie93eda567f88ca08c97df7e70cdff5b07442747d Signed-off-by: Jonathan Neuschäfer Reviewed-on: https://review.coreboot.org/c/29984 Tested-by: build bot (Jenkins) Reviewed-by: Nico Huber --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 1d4a4889af..f12b61659e 100644 --- a/Makefile +++ b/Makefile @@ -176,7 +176,7 @@ real-all: real-target .SECONDEXPANSION: .DELETE_ON_ERROR: -$(KCONFIG_AUTOHEADER): $(KCONFIG_CONFIG) +$(KCONFIG_AUTOHEADER): $(KCONFIG_CONFIG) $(objutil)/kconfig/conf +$(MAKE) oldconfig # Add a new class of source/object files to the build system -- cgit v1.2.3