diff options
author | Jeffery To <jeffery.to@gmail.com> | 2018-12-13 01:33:36 +0800 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2019-01-30 12:32:07 +0100 |
commit | a1170936798e519776de605d6986ccb72f04cb06 (patch) | |
tree | e7dce9b0785f28b50dd45ffbfac33b6050fc22a0 /include/package.mk | |
parent | ed514e7f9ecc557fdddf2e22f3ad372affc1999b (diff) | |
download | upstream-a1170936798e519776de605d6986ccb72f04cb06.tar.gz upstream-a1170936798e519776de605d6986ccb72f04cb06.tar.bz2 upstream-a1170936798e519776de605d6986ccb72f04cb06.zip |
build: fix STAGING_DIR cleaning for packages
This fixes two issues with cleaning package files from STAGING_DIR:
* CleanStaging currently can only remove files and not directories. This
changes CleanStaging to use clean-package.sh, which does remove
directories.
* Because of the way directories are ordered in the staging files list,
clean-package.sh currently tries (and fails) to remove parent
directories before removing subdirectories. This changes
clean-package.sh to process the staging files list in reverse, so that
subdirectories are removed first.
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
Diffstat (limited to 'include/package.mk')
-rw-r--r-- | include/package.mk | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/package.mk b/include/package.mk index a03db11119..569ad647d6 100644 --- a/include/package.mk +++ b/include/package.mk @@ -81,9 +81,10 @@ STAGING_FILES_LIST:=$(PKG_DIR_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),).lis define CleanStaging rm -f $(STAMP_INSTALLED) @-(\ - cd "$(STAGING_DIR)"; \ - if [ -f packages/$(STAGING_FILES_LIST) ]; then \ - cat packages/$(STAGING_FILES_LIST) | xargs -r rm -f 2>/dev/null; \ + if [ -f $(STAGING_DIR)/packages/$(STAGING_FILES_LIST) ]; then \ + $(SCRIPT_DIR)/clean-package.sh \ + "$(STAGING_DIR)/packages/$(STAGING_FILES_LIST)" \ + "$(STAGING_DIR)"; \ fi; \ ) endef |