From b8bc852f63a71f977a4eadd67e30d0a1242fc982 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Mon, 4 Oct 2021 22:17:37 +0200 Subject: [PATCH] package/edk2-platforms: fix installation 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 Cc: Dick Olsson Cc: Kory Maincent Signed-off-by: Arnout Vandecappelle (Essensium/Mind) (cherry picked from commit dbf381c19932d0c9f27165e711f5899b3de44876) Signed-off-by: Peter Korsgaard --- 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))