[source] build: do not auto-clean packages where the autoremove step has not run

LEDE Commits lede-commits at lists.infradead.org
Mon Jan 23 13:04:26 PST 2017


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/053dc3b77ad1fa15e281f70447706fe62780e47b

commit 053dc3b77ad1fa15e281f70447706fe62780e47b
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Mon Jan 23 21:53:47 2017 +0100

    build: do not auto-clean packages where the autoremove step has not run
    
    This avoids repeatedly unpacking and rebuilding packages that are
    failing the build. Re-running the failing step should be much faster.
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 include/package.mk | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/include/package.mk b/include/package.mk
index fc27339..01c0333 100644
--- a/include/package.mk
+++ b/include/package.mk
@@ -216,6 +216,7 @@ define Build/CoreTargets
 
   ifneq ($(CONFIG_AUTOREMOVE),)
     compile:
+		touch $(PKG_BUILD_DIR)/.autoremove
 		$(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' | \
 			$(XARGS) rm -rf
   endif
@@ -300,10 +301,12 @@ compile: prepare-package-install
 .install: .compile
 install: compile
 
-clean-build: FORCE
+force-clean-build: FORCE
 	rm -rf $(PKG_BUILD_DIR)
 
-clean: clean-build
+clean-build: $(if $(wildcard $(PKG_BUILD_DIR)/.autoremove),force-clean-build)
+
+clean: force-clean-build
 	$(CleanStaging)
 	$(call Build/UninstallDev,$(STAGING_DIR),$(STAGING_DIR_HOST))
 	$(Build/Clean)



More information about the lede-commits mailing list