build: leaving behind incomplete metadata files on cancelled builds
[openwrt/staging/blogic.git] / include / scan.mk
index 00cfe31fba8f4fa5bf3b9c355bc66d55d950572d..5bb263d713c03487e6e5c45ea50f222ca6b3f985 100644 (file)
@@ -26,12 +26,8 @@ define feedname
 $(if $(patsubst feeds/%,,$(1)),,$(word 2,$(subst /, ,$(1))))
 endef
 
-ifdef SDK
-  IGNORE_PACKAGES = linux
-endif
-
 define PackageDir
-  $(if $(filter $(addprefix %_,$(IGNORE_PACKAGES)),$(1)),,$(TMP_DIR)/.$(SCAN_TARGET): $(TMP_DIR)/info/.$(SCAN_TARGET)-$(1))
+  $(TMP_DIR)/.$(SCAN_TARGET): $(TMP_DIR)/info/.$(SCAN_TARGET)-$(1)
   $(TMP_DIR)/info/.$(SCAN_TARGET)-$(1): $(SCAN_DIR)/$(2)/Makefile $(SCAN_STAMP) $(foreach DEP,$(DEPS_$(SCAN_DIR)/$(2)/Makefile) $(SCAN_DEPS),$(wildcard $(if $(filter /%,$(DEP)),$(DEP),$(SCAN_DIR)/$(2)/$(DEP))))
        { \
                $$(call progress,Collecting $(SCAN_NAME) info: $(SCAN_DIR)/$(2)) \
@@ -44,7 +40,8 @@ define PackageDir
                        rm -f $$@; \
                }; \
                echo; \
-       } > $$@ || true
+       } > $$@.tmp
+       mv $$@.tmp $$@
 endef
 
 $(OVERRIDELIST):
@@ -80,7 +77,8 @@ $(TMP_DIR)/info/.files-$(SCAN_TARGET).mk: $(FILELIST)
                        print "$$(eval $$(call PackageDir," info "," dir "," pkg "))"; \
                } ' < $<; \
                true; \
-       ) > $@
+       ) > $@.tmp
+       mv $@.tmp $@
 
 -include $(TMP_DIR)/info/.files-$(SCAN_TARGET).mk