[openwrt/openwrt] build: package-ipkg: avoid calling wildcard twice
LEDE Commits
lede-commits at lists.infradead.org
Sat Jul 11 09:54:44 EDT 2020
ynezz pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/40acc13ca72ca7d2815dc5d94549d5dc48e16e98
commit 40acc13ca72ca7d2815dc5d94549d5dc48e16e98
Author: Eneas U de Queiroz <cotequeiroz at gmail.com>
AuthorDate: Thu Feb 20 18:29:02 2020 -0300
build: package-ipkg: avoid calling wildcard twice
Instead of calling $(wildcard) to check if the removal list is empty,
then calling it again to actually remove the files, define a function so
that the arguments are expanded only once when it gets called.
Signed-off-by: Eneas U de Queiroz <cotequeiroz at gmail.com>
---
include/package-ipkg.mk | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk
index 569edcbf03..fa39c0927c 100644
--- a/include/package-ipkg.mk
+++ b/include/package-ipkg.mk
@@ -18,6 +18,12 @@ IPKG_REMOVE:= \
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
+# 1: package name
+# 2: candidate ipk files
+define remove_ipkg_files
+ $(if $(strip $(2)),$(IPKG_REMOVE) $(1) $(2))
+endef
+
# 1: package name
# 2: variable name
# 3: variable suffix
@@ -185,7 +191,7 @@ $(_endef)
$$(IPKG_$(1)) : export DESCRIPTION=$$(Package/$(1)/description)
$$(IPKG_$(1)) : export PATH=$$(TARGET_PATH_PKG)
$(PKG_INFO_DIR)/$(1).provides $$(IPKG_$(1)): $(STAMP_BUILT) $(INCLUDE_DIR)/package-ipkg.mk
- @rm -rf $$(IDIR_$(1)) $$(if $$(call opkg_package_files,$(1)*),; $$(IPKG_REMOVE) $(1) $$(call opkg_package_files,$(1)*))
+ @rm -rf $$(IDIR_$(1)); $$(call remove_ipkg_files,$(1),$$(call opkg_package_files,$(1)*))
mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/CONTROL $(PKG_INFO_DIR)
$(call Package/$(1)/install,$$(IDIR_$(1)))
$(if $(Package/$(1)/install-overlay),mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/rootfs-overlay)
@@ -253,7 +259,7 @@ $(_endef)
@[ -f $$(IPKG_$(1)) ]
$(1)-clean:
- $$(if $$(call opkg_package_files,$(1)*),$$(IPKG_REMOVE) $(1) $$(call opkg_package_files,$(1)*))
+ $$(call remove_ipkg_files,$(1),$$(call opkg_package_files,$(1)*))
clean: $(1)-clean
More information about the lede-commits
mailing list