From: Bin Meng Date: Mon, 28 Oct 2019 14:25:01 +0000 (-0700) Subject: arm: mvebu: Avoid generating kwbimage.cfg in the source tree X-Git-Tag: v2020.01-rc1~2^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6cdd177ca9092d1ee094dd3709e25d116e329ca0;p=pandora-u-boot.git arm: mvebu: Avoid generating kwbimage.cfg in the source tree At present some boards generate kwbimage.cfg in the source tree during the build. This breaks buildman testing on some systems where the source tree is read-only. Update makefile rules to generate it in the build tree instead. Note some other boards have the kwbimage.cfg file written in advance, hence we need check if the file exists in the build tree first, otherwise we fall back to one in the source tree. Signed-off-by: Bin Meng Reviewed-by: Chris Packham Reviewed-by: Stefan Roese Reviewed-by: Simon Glass --- diff --git a/Makefile b/Makefile index e78b3179b13..61b94c5a6e2 100644 --- a/Makefile +++ b/Makefile @@ -1276,10 +1276,21 @@ endif MKIMAGEFLAGS_u-boot-dtb.img = $(MKIMAGEFLAGS_u-boot.img) -MKIMAGEFLAGS_u-boot.kwb = -n $(srctree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%) \ +# Some boards have the kwbimage.cfg file written in advance, while some +# other boards generate it on the fly during the build in the build tree. +# Let's check if the file exists in the build tree first, otherwise we +# fall back to use the one in the source tree. +KWD_CONFIG_FILE = $(shell \ + if [ -f $(objtree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%) ]; then \ + echo -n $(objtree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%); \ + else \ + echo -n $(srctree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%); \ + fi) + +MKIMAGEFLAGS_u-boot.kwb = -n $(KWD_CONFIG_FILE) \ -T kwbimage -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -MKIMAGEFLAGS_u-boot-spl.kwb = -n $(srctree)/$(CONFIG_SYS_KWD_CONFIG:"%"=%) \ +MKIMAGEFLAGS_u-boot-spl.kwb = -n $(KWD_CONFIG_FILE) \ -T kwbimage -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) \ $(if $(KEYDIR),-k $(KEYDIR)) diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile index 8228a17972f..b73952044de 100644 --- a/arch/arm/mach-mvebu/Makefile +++ b/arch/arm/mach-mvebu/Makefile @@ -58,10 +58,10 @@ KWB_REPLACE += SEC_FUSE_DUMP KWB_CFG_SEC_FUSE_DUMP = a38x endif -$(src)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ +$(obj)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ include/config/auto.conf $(Q)sed -ne '$(foreach V,$(KWB_REPLACE),s/^#@$(V)/$(V) $(KWB_CFG_$(V))/;)p' \ - <$< >$(dir $<)$(@F) + <$< >$(dir $@)$(@F) endif # CONFIG_SPL_BUILD obj-y += gpio.o diff --git a/board/Marvell/db-88f6281-bp/Makefile b/board/Marvell/db-88f6281-bp/Makefile index e6aa7e39a07..003e9f66d18 100644 --- a/board/Marvell/db-88f6281-bp/Makefile +++ b/board/Marvell/db-88f6281-bp/Makefile @@ -4,9 +4,9 @@ obj-y := db-88f6281-bp.o extra-y := kwbimage.cfg quiet_cmd_sed = SED $@ - cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $<)$(@F) + cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $@)$(@F) SEDFLAGS_kwbimage.cfg = -e "s/^\#@BOOT_FROM.*/BOOT_FROM $(if $(CONFIG_CMD_NAND),nand,spi)/" -$(src)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ +$(obj)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ include/config/auto.conf $(call if_changed,sed) diff --git a/board/Marvell/db-xc3-24g4xg/Makefile b/board/Marvell/db-xc3-24g4xg/Makefile index 4dd57902d47..24e82000075 100644 --- a/board/Marvell/db-xc3-24g4xg/Makefile +++ b/board/Marvell/db-xc3-24g4xg/Makefile @@ -6,9 +6,9 @@ obj-y := db-xc3-24g4xg.o extra-y := kwbimage.cfg quiet_cmd_sed = SED $@ - cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $<)$(@F) + cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $@)$(@F) SEDFLAGS_kwbimage.cfg =-e "s|^BINARY.*|BINARY $(srctree)/$(@D)/binary.0 0000005b 00000068|" -$(src)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ +$(obj)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ include/config/auto.conf $(call if_changed,sed) diff --git a/board/mikrotik/crs305-1g-4s/Makefile b/board/mikrotik/crs305-1g-4s/Makefile index 895331beb86..c03f534e485 100644 --- a/board/mikrotik/crs305-1g-4s/Makefile +++ b/board/mikrotik/crs305-1g-4s/Makefile @@ -6,9 +6,9 @@ obj-y := crs305-1g-4s.o extra-y := kwbimage.cfg quiet_cmd_sed = SED $@ - cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $<)$(@F) + cmd_sed = sed $(SEDFLAGS_$(@F)) $< >$(dir $@)$(@F) SEDFLAGS_kwbimage.cfg =-e "s|^BINARY.*|BINARY $(srctree)/$(@D)/binary.0 0000005b 00000068|" -$(src)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ +$(obj)/kwbimage.cfg: $(src)/kwbimage.cfg.in include/autoconf.mk \ include/config/auto.conf $(call if_changed,sed)