[PATCH] arm-trusted-firmware-mvebu: stop cluttering Image Builder

Andre Heider a.heider at gmail.com
Wed Aug 31 07:47:28 PDT 2022


Hi Tomasz,

On 31/08/2022 12:18, Tomasz Maciej Nowak wrote:
> From: Tomasz Maciej Nowak <tmn505 at gmail.com>
> 
> All contents of staging_dir/image are included in Image Builder (IB) in
> case some binary needs to be included in final image. But in case of
> this package, all sources are stored there and those clutter the final
> tarball of IB for no reason. Those sources are not used during image
> creation and are just dead weight. To put it in perspective, the IB for
> 21.02.0 is 158 MiB, 22.03.0-rc6 is 366 MiB and snapshot is over 620 MiB!
> To fix it, put them in package build directory, so they won't end up
> included in IB tarball.

nice catch, I wasn't even aware that it affected IB.

> Signed-off-by: Tomasz Maciej Nowak <tmn505 at gmail.com>

One comment below, with that this is
Reviewed-by: Andre Heider <a.heider at gmail.com>

> ---
>   .../boot/arm-trusted-firmware-mvebu/Makefile  | 41 +++++++++----------
>   1 file changed, 20 insertions(+), 21 deletions(-)
> 
> diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile
> index dba4836a6b98..8f4713eb40ef 100644
> --- a/package/boot/arm-trusted-firmware-mvebu/Makefile
> +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile
> @@ -108,12 +108,12 @@ TFA_TARGETS:= \
>   	udpu
>   
>   TFA_MAKE_FLAGS += \
> -		CROSS_CM3=$(STAGING_DIR_IMAGE)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)/bin/arm-none-eabi- \
> +		CROSS_CM3=$(PKG_BUILD_DIR)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)/bin/arm-none-eabi- \
>   		BL33=$(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.bin \
> -		MV_DDR_PATH=$(STAGING_DIR_IMAGE)/$(MV_DDR_NAME) \
> -		WTP=$(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME) \
> -		WTMI_IMG=$(STAGING_DIR_IMAGE)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE)/wtmi_app.bin \
> -		CRYPTOPP_PATH=$(STAGING_DIR_IMAGE)/$(CRYPTOPP_NAME) \
> +		MV_DDR_PATH=$(PKG_BUILD_DIR)/$(MV_DDR_NAME) \
> +		WTP=$(PKG_BUILD_DIR)/$(A3700_UTILS_NAME) \
> +		WTMI_IMG=$(PKG_BUILD_DIR)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE)/wtmi_app.bin \
> +		CRYPTOPP_PATH=$(PKG_BUILD_DIR)/$(CRYPTOPP_NAME) \
>   		USE_COHERENT_MEM=0 \
>   		FIP_ALIGN=0x100 \
>   		DDR_TOPOLOGY=$(DDR_TOPOLOGY) \
> @@ -190,11 +190,11 @@ endef
>   
>   define Build/Clean
>   	rm -rf \
> -		$(STAGING_DIR_IMAGE)/$(CRYPTOPP_NAME) \
> -		$(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME) \
> -		$(STAGING_DIR_IMAGE)/$(MV_DDR_NAME) \
> -		$(STAGING_DIR_IMAGE)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE) \
> -		$(STAGING_DIR_IMAGE)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)
> +		$(PKG_BUILD_DIR)/$(CRYPTOPP_NAME) \
> +		$(PKG_BUILD_DIR)/$(A3700_UTILS_NAME) \
> +		$(PKG_BUILD_DIR)/$(MV_DDR_NAME) \
> +		$(PKG_BUILD_DIR)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE) \
> +		$(PKG_BUILD_DIR)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)
>   endef

The whole custom Build/Clean target can be removed now, the default one 
will wipe PKG_BUILD_DIR for us.

>   
>   define Build/Prepare
> @@ -207,23 +207,22 @@ define Build/Prepare
>   
>   	$(call Build/Prepare/Default,)
>   
> -	mkdir -p $(STAGING_DIR_IMAGE)
> -	$(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(CRYPTOPP_SOURCE)
> -	$(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(A3700_UTILS_SOURCE)
> -	$(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME),./patches-a3700-utils)
> -	$(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(MV_DDR_SOURCE)
> -	$(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(MV_DDR_NAME),./patches-mv-ddr-marvell)
> -	$(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(MOX_BB_SOURCE)
> -	$(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE),./patches-mox-boot-builder)
> -	$(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(CM3_GCC_SOURCE)
> +	$(TAR) -C $(PKG_BUILD_DIR) -xf $(DL_DIR)/$(CRYPTOPP_SOURCE)
> +	$(TAR) -C $(PKG_BUILD_DIR) -xf $(DL_DIR)/$(A3700_UTILS_SOURCE)
> +	$(call PatchDir/Default,$(PKG_BUILD_DIR)/$(A3700_UTILS_NAME),./patches-a3700-utils)
> +	$(TAR) -C $(PKG_BUILD_DIR) -xf $(DL_DIR)/$(MV_DDR_SOURCE)
> +	$(call PatchDir/Default,$(PKG_BUILD_DIR)/$(MV_DDR_NAME),./patches-mv-ddr-marvell)
> +	$(TAR) -C $(PKG_BUILD_DIR) -xf $(DL_DIR)/$(MOX_BB_SOURCE)
> +	$(call PatchDir/Default,$(PKG_BUILD_DIR)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE),./patches-mox-boot-builder)
> +	$(TAR) -C $(PKG_BUILD_DIR) -xf $(DL_DIR)/$(CM3_GCC_SOURCE)
>   endef
>   
>   define Build/Compile
>   	+$(MAKE) \
> -		CROSS_CM3=$(STAGING_DIR_IMAGE)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)/bin/arm-none-eabi- \
> +		CROSS_CM3=$(PKG_BUILD_DIR)/$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION)/bin/arm-none-eabi- \
>   		WTMI_VERSION=$(MOX_BB_RELEASE) \
>   		CRYPTOPP_PATH=$PWD/cryptopp/ \
> -		-C $(STAGING_DIR_IMAGE)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE) \
> +		-C $(PKG_BUILD_DIR)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE) \
>   		wtmi_app.bin
>   	$(call Build/Compile/Default)
>   endef




More information about the openwrt-devel mailing list