mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-04 11:13:45 +02:00
fix recursive dependencies on build directories - should lead to fewer spontaneous rebuilds
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7151 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
4039f9f6c5
commit
5c30e74105
@ -11,18 +11,19 @@
|
|||||||
# 3: tempfile for file listings
|
# 3: tempfile for file listings
|
||||||
# 4: find options
|
# 4: find options
|
||||||
|
|
||||||
FINDPARAMS := -type f -not -name ".*" -and -not -path "*.svn*"
|
DEP_FINDPARAMS := -type f -not -name ".*" -and -not -path "*.svn*"
|
||||||
define rdep
|
define rdep
|
||||||
$(foreach file,$(shell find $(1) $(FINDPARAMS) -and -not -path "*:*" $(4)),
|
$(foreach file,$(shell find $(1) $(DEP_FINDPARAMS) -and -not -path "*:*" $(4)),
|
||||||
$(2): $(file)
|
$(2): $(file)
|
||||||
$(file): ;
|
$(file): ;
|
||||||
)
|
)
|
||||||
|
|
||||||
ifneq ($(shell find $(1) $(FINDPARAMS) $(4) 2>/dev/null | md5s),$(shell cat $(3) 2>/dev/null))
|
ifneq ($(3),)
|
||||||
|
ifneq ($$(shell find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s),$(if $(3),$(shell cat $(3) 2>/dev/null)))
|
||||||
$(2): $(3)
|
$(2): $(3)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(3): FORCE
|
$(3): FORCE
|
||||||
@-find $(1) $(FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
|
@-find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
|
||||||
|
endif
|
||||||
endef
|
endef
|
||||||
|
@ -9,9 +9,9 @@ include $(INCLUDE_DIR)/host.mk
|
|||||||
include $(INCLUDE_DIR)/unpack.mk
|
include $(INCLUDE_DIR)/unpack.mk
|
||||||
include $(INCLUDE_DIR)/depends.mk
|
include $(INCLUDE_DIR)/depends.mk
|
||||||
|
|
||||||
STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared
|
STAMP_PREPARED:=$(PKG_BUILD_DIR)/.prepared_$(shell find ${CURDIR} $(PKG_FILE_DEPEND) $(DEP_FINDPARAMS) | md5s)
|
||||||
STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured
|
STAMP_CONFIGURED:=$(PKG_BUILD_DIR)/.configured
|
||||||
STAMP_BUILT=$(PKG_BUILD_DIR)/.built
|
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
|
||||||
|
|
||||||
ifneq ($(strip $(PKG_UNPACK)),)
|
ifneq ($(strip $(PKG_UNPACK)),)
|
||||||
define Build/Prepare/Default
|
define Build/Prepare/Default
|
||||||
@ -80,7 +80,7 @@ endif
|
|||||||
ifneq ($(CONFIG_AUTOREBUILD),)
|
ifneq ($(CONFIG_AUTOREBUILD),)
|
||||||
define HostBuild/Autoclean
|
define HostBuild/Autoclean
|
||||||
$(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
|
$(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
|
||||||
$(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED),$(TMP_DIR)/.packagedir_$(shell echo "${CURDIR}" | md5s))
|
$(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED))
|
||||||
$(call rdep,$(PKG_BUILD_DIR),$(STAMP_BUILT),$(PKG_BUILD_DIR)/.dep_files, -and -not -path "/.*" -and -not -path "*/ipkg*")
|
$(call rdep,$(PKG_BUILD_DIR),$(STAMP_BUILT),$(PKG_BUILD_DIR)/.dep_files, -and -not -path "/.*" -and -not -path "*/ipkg*")
|
||||||
endef
|
endef
|
||||||
endif
|
endif
|
||||||
|
@ -78,7 +78,7 @@ ifeq ($(DUMP),)
|
|||||||
|
|
||||||
clean: $(1)-clean
|
clean: $(1)-clean
|
||||||
|
|
||||||
$(PKG_BUILD_DIR)/.version-$(1)_$(VERSION)_$(PKGARCH): $(PKG_BUILD_DIR)/.prepared
|
$(PKG_BUILD_DIR)/.version-$(1)_$(VERSION)_$(PKGARCH): $(STAMP_PREPARED)
|
||||||
-@rm -f $(PKG_BUILD_DIR)/.version-$(1)_* 2>/dev/null
|
-@rm -f $(PKG_BUILD_DIR)/.version-$(1)_* 2>/dev/null
|
||||||
@touch $$@
|
@touch $$@
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ include $(INCLUDE_DIR)/package-defaults.mk
|
|||||||
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
||||||
include $(INCLUDE_DIR)/package-ipkg.mk
|
include $(INCLUDE_DIR)/package-ipkg.mk
|
||||||
|
|
||||||
STAMP_PREPARED:=$(PKG_BUILD_DIR)/.prepared
|
STAMP_PREPARED:=$(PKG_BUILD_DIR)/.prepared_$(shell find ${CURDIR} $(PKG_FILE_DEPEND) $(DEP_FINDPARAMS) | md5s)
|
||||||
STAMP_CONFIGURED:=$(PKG_BUILD_DIR)/.configured
|
STAMP_CONFIGURED:=$(PKG_BUILD_DIR)/.configured
|
||||||
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
|
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
|
||||||
export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
|
export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
|
||||||
@ -26,7 +26,7 @@ export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
|
|||||||
ifneq ($(CONFIG_AUTOREBUILD),)
|
ifneq ($(CONFIG_AUTOREBUILD),)
|
||||||
define Build/Autoclean
|
define Build/Autoclean
|
||||||
$(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
|
$(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
|
||||||
$(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED),$(TMP_DIR)/.packagedir_$(shell echo "${CURDIR}" | md5s))
|
$(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED))
|
||||||
$(call rdep,$(PKG_BUILD_DIR),$(STAMP_BUILT),$(PKG_BUILD_DIR)/.dep_files, -and -not -path "/.*" -and -not -path "*/ipkg*")
|
$(call rdep,$(PKG_BUILD_DIR),$(STAMP_BUILT),$(PKG_BUILD_DIR)/.dep_files, -and -not -path "/.*" -and -not -path "*/ipkg*")
|
||||||
endef
|
endef
|
||||||
endif
|
endif
|
||||||
|
Loading…
Reference in New Issue
Block a user