From 23f00178291b9ff3006f94dbfed4e44ae3dbf9b6 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Mon, 30 Jul 2007 23:52:17 +0000
Subject: [PATCH] fix a rebuild bug related to quilt

SVN-Revision: 8255
---
 include/depends.mk    | 8 +++++---
 include/host-build.mk | 3 +--
 include/package.mk    | 4 ++--
 3 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/include/depends.mk b/include/depends.mk
index be58ed1cf0..4819d6dfc1 100644
--- a/include/depends.mk
+++ b/include/depends.mk
@@ -19,11 +19,13 @@ define rdep
   )
 
   ifneq ($(3),)
-    ifneq ($$(shell find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s),$(if $(3),$(shell cat $(3) 2>/dev/null)))
+    ifneq ($$(shell find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s),$(if $(3),$(shell cat $(3) || touch $(3) 2>/dev/null)))
       $(2): $(3)
     endif
   
-    $(3): FORCE
-	  @-find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
   endif
+
+  $(3): FORCE
+	  @-find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
+  .PRECIOUS: $(3)
 endef
diff --git a/include/host-build.mk b/include/host-build.mk
index e934c91c66..f4b6b449e1 100644
--- a/include/host-build.mk
+++ b/include/host-build.mk
@@ -80,7 +80,7 @@ ifneq ($(strip $(PKG_SOURCE)),)
   $(STAMP_PREPARED): $(DL_DIR)/$(PKG_SOURCE)
 endif
 
-ifneq ($(CONFIG_AUTOREBUILD),)
+ifneq ($(if $(QUILT),,$(CONFIG_AUTOREBUILD)),)
   define HostBuild/Autoclean
     $(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
     $(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED))
@@ -105,7 +105,6 @@ define HostBuild
 
   $(STAMP_BUILT): $(STAMP_CONFIGURED)
 	$(call Build/Compile)
-	@$(NO_TRACE_MAKE) $(PKG_BUILD_DIR)/.dep_files
 	touch $$@
 
   $(STAGING_DIR)/stampfiles/.host_$(PKG_NAME)-installed: $(STAMP_BUILT)
diff --git a/include/package.mk b/include/package.mk
index cccf17437e..153b138034 100644
--- a/include/package.mk
+++ b/include/package.mk
@@ -28,7 +28,7 @@ override MAKEFLAGS=
 export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
 
 ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),)
-  ifneq ($(CONFIG_AUTOREBUILD),)
+  ifneq ($(if $(QUILT),,$(CONFIG_AUTOREBUILD)),)
     define Build/Autoclean
       $(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED)
       $(call rdep,${CURDIR} $(PKG_FILE_DEPEND),$(STAMP_PREPARED))
@@ -37,6 +37,7 @@ ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),)
   endif
 endif
 
+
 define Build/DefaultTargets
   ifneq ($(strip $(PKG_SOURCE_URL)),)
     download: $(DL_DIR)/$(PKG_SOURCE)
@@ -62,7 +63,6 @@ define Build/DefaultTargets
 
   $(STAMP_BUILT): $(STAMP_CONFIGURED)
 	$(Build/Compile)
-	@$(NO_TRACE_MAKE) $(PKG_BUILD_DIR)/.dep_files
 	touch $$@
 
   ifdef Build/InstallDev
-- 
GitLab