summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/package.mk2
-rw-r--r--include/subdir.mk7
2 files changed, 7 insertions, 2 deletions
diff --git a/include/package.mk b/include/package.mk
index 89530616e..e322cb908 100644
--- a/include/package.mk
+++ b/include/package.mk
@@ -26,7 +26,7 @@ include $(INCLUDE_DIR)/package-ipkg.mk
export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
-ifeq ($(DUMP),)
+ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),)
ifneq ($(CONFIG_AUTOREBUILD),)
define Build/Autoclean
$(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
diff --git a/include/subdir.mk b/include/subdir.mk
index a27333d9e..da37573c7 100644
--- a/include/subdir.mk
+++ b/include/subdir.mk
@@ -7,8 +7,13 @@
SUBTARGETS:=clean download prepare compile install update refresh prereq
+subtarget-default = $(filter-out ., \
+ $(if $($(1)/builddirs-$(2)),$($(1)/builddirs-$(2)), \
+ $(if $($(1)/builddirs-default),$($(1)/builddirs-default), \
+ $($(1)/builddirs))))
+
define subtarget
- $(call warn_eval,$(1),t,T,$(1)/$(2): $($(1)/) $(foreach bd,$(if $($(1)/builddirs-$(2)),$(filter-out .,$($(1)/builddirs-$(2))),$($(1)/builddirs)),$(1)/$(bd)/$(2)))
+ $(call warn_eval,$(1),t,T,$(1)/$(2): $($(1)/) $(foreach bd,$(call subtarget-default,$(1),$(2)),$(1)/$(bd)/$(2)))
endef