fix recursive dependencies on build directories - should lead to fewer spontaneous...
[openwrt-10.03/.git] / include / depends.mk
index 07345a3998e6d60b3e1d8d1a20a9830e4fad4e6d..1e01d35f81bdceb395c1d66e7f45fb9977cc75bd 100644 (file)
 #      3: tempfile for file listings
 #      4: find options
 
-FINDPARAMS := -type f -not -name ".*" -and -not -path "*.svn*" 
+DEP_FINDPARAMS := -type f -not -name ".*" -and -not -path "*.svn*" 
 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)
     $(file): ;
   )
 
-  ifneq ($(shell find $(1) $(FINDPARAMS) $(4) 2>/dev/null | md5s),$(shell cat $(3) 2>/dev/null))
-    $(2): $(3)
-  endif
+  ifneq ($(3),)
+    ifneq ($$(shell find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s),$(if $(3),$(shell cat $(3) 2>/dev/null)))
+      $(2): $(3)
+    endif
   
-  $(3): FORCE
-       @-find $(1) $(FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
-
+    $(3): FORCE
+         @-find $(1) $(DEP_FINDPARAMS) $(4) 2>/dev/null | md5s > $$@
+  endif
 endef