diff options
author | Felix Fietkau <nbd@nbd.name> | 2016-11-08 05:47:39 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-11-08 10:49:51 +0100 |
commit | 64c386c5662e923d284b1c5b742cb72d7ad24671 (patch) | |
tree | 9bf3a4048503b37729b0c390e618069d2d22357f | |
parent | 7ee661def6da779917ef405e04eb7eb4230ebb0a (diff) | |
download | openwrt-64c386c5662e923d284b1c5b742cb72d7ad24671.tar.gz openwrt-64c386c5662e923d284b1c5b742cb72d7ad24671.tar.bz2 openwrt-64c386c5662e923d284b1c5b742cb72d7ad24671.zip |
build: remove stale .ipk files if package dir changes
If a package nonshared status is changed, a stale .ipk file might still
be present in the old package directory. Remove the .ipk file from all
package directories when building a new one (or explicitly running
clean)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r-- | include/feeds.mk | 4 | ||||
-rw-r--r-- | include/package-ipkg.mk | 4 | ||||
-rw-r--r-- | include/rootfs.mk | 4 |
3 files changed, 6 insertions, 6 deletions
diff --git a/include/feeds.mk b/include/feeds.mk index c79c941ffa..2ff57e5762 100644 --- a/include/feeds.mk +++ b/include/feeds.mk @@ -25,6 +25,10 @@ endif PACKAGE_DIR_ALL := $(TOPDIR)/staging_dir/packages/$(BOARD) +opkg_package_files = $(wildcard \ + $(foreach dir,$(PACKAGE_SUBDIRS), \ + $(foreach pkg,$(1), $(dir)/$(pkg)_*.ipk))) + PKG_CONFIG_DEPENDS += \ CONFIG_PER_FEED_REPO \ CONFIG_PER_FEED_REPO_ADD_DISABLED \ diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index c90eeb2b46..afd2d4ef7a 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -175,7 +175,7 @@ $(_endef) $$(IPKG_$(1)) : export DESCRIPTION=$$(Package/$(1)/description) $$(IPKG_$(1)) : export PATH=$$(TARGET_PATH_PKG) $$(IPKG_$(1)): $(STAMP_BUILT) $(INCLUDE_DIR)/package-ipkg.mk - @rm -rf $$(PDIR_$(1))/$(1)_* $$(IDIR_$(1)) + @rm -rf $$(IDIR_$(1)) $$(call opkg_package_files,$(1)) mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/CONTROL $(PKG_INFO_DIR) $(call Package/$(1)/install,$$(IDIR_$(1))) -find $$(IDIR_$(1)) -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| $(XARGS) rm -rf @@ -230,7 +230,7 @@ $(_endef) @[ -f $$(IPKG_$(1)) ] $(1)-clean: - rm -f $$(PDIR_$(1))/$(1)_* + $$(if $$(call opkg_package_files,$(1)),rm -f $$(call opkg_package_files,$(1))) clean: $(1)-clean diff --git a/include/rootfs.mk b/include/rootfs.mk index b1617215a3..90d70a11f2 100644 --- a/include/rootfs.mk +++ b/include/rootfs.mk @@ -45,10 +45,6 @@ opkg = \ --add-arch all:100 \ --add-arch $(if $(ARCH_PACKAGES),$(ARCH_PACKAGES),$(BOARD)):200 -opkg_package_files = $(wildcard \ - $(foreach dir,$(PACKAGE_SUBDIRS), \ - $(foreach pkg,$(1), $(dir)/$(pkg)_*.ipk))) - TARGET_DIR_ORIG := $(TARGET_ROOTFS_DIR)/root.orig-$(BOARD) define prepare_rootfs |