[Buildroot] [PATCH] package/edk2-platforms: fix installation
Arnout Vandecappelle
arnout at mind.be
Fri Oct 15 20:03:49 UTC 2021
On 04/10/2021 22:17, Yann E. MORIN wrote:
> There are currently three issues with the installation step:
>
> 1. it does not ensure the parent destination directory exists before
> copying into it, so if /usr/share has not been created in the
> dependency chain of edk2-platforms, the installation fails, which
> may very well happen easily as edk2-plaforms has nothing in its
> dependency chain (except the toolchain et al.);
>
> 2. all our dot-stampfiles and .files-list are also copied, as well as
> the Readme, license files, and maintainers file. All of those are
> useless on the target (and the .files-list introduce
> non-reproduciiblity);
>
> 3. of a lesser importance, the construct to install, and specifically
> to reinstall, does not match what we usually do in Buildroot
> (removal of the directory to copy).
>
> We fix all three in one fell swoop:
>
> 1. create the destination directory if needed;
> 2. copy just the directories with the actual platform descriptions
>
> Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
> Cc: Dick Olsson <hi at senzilla.io>
> Cc: Kory Maincent <kory.maincent at bootlin.com>
I love it when the commit message is three times larger than the diff :-)
Applied to master, thanks.
Regards,
Arnout
> ---
> package/edk2-platforms/edk2-platforms.mk | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/package/edk2-platforms/edk2-platforms.mk b/package/edk2-platforms/edk2-platforms.mk
> index 47e6b1c51d..430791ae3e 100644
> --- a/package/edk2-platforms/edk2-platforms.mk
> +++ b/package/edk2-platforms/edk2-platforms.mk
> @@ -15,8 +15,8 @@ EDK2_PLATFORMS_INSTALL_STAGING = YES
> # There is nothing to build for edk2-platforms. All we need to do is to copy
> # all description files to staging, for other packages to build with.
> define EDK2_PLATFORMS_INSTALL_STAGING_CMDS
> - rm -rf $(STAGING_DIR)/usr/share/edk2-platforms
> - cp -rf $(@D) $(STAGING_DIR)/usr/share/edk2-platforms
> + mkdir -p $(STAGING_DIR)/usr/share/edk2-platforms
> + cp -rf $(@D)/*/ $(STAGING_DIR)/usr/share/edk2-platforms/
> endef
>
> $(eval $(generic-package))
>
More information about the buildroot
mailing list