projects
/
openwrt
/
openwrt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
build: call ipkg-remove using xargs if #args>=512
[openwrt/openwrt.git]
/
include
/
package-ipkg.mk
diff --git
a/include/package-ipkg.mk
b/include/package-ipkg.mk
index fa39c0927cce6552708e2ae574171644ddb77c7f..7fc0f86124444fc75446a0ac6b3e7a7bfa54e298 100644
(file)
--- a/
include/package-ipkg.mk
+++ b/
include/package-ipkg.mk
@@
-18,10
+18,20
@@
IPKG_REMOVE:= \
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
+# 1: command and initial arguments
+# 2: arguments list
+# 3: tmp filename
+define maybe_use_xargs
+ $(if $(word 512,$(2)), \
+ $(file >$(3),$(2)) $(XARGS) $(1) < "$(3)"; rm "$(3)", \
+ $(1) $(2))
+endef
+
# 1: package name
# 2: candidate ipk files
define remove_ipkg_files
# 1: package name
# 2: candidate ipk files
define remove_ipkg_files
- $(if $(strip $(2)),$(IPKG_REMOVE) $(1) $(2))
+ $(if $(strip $(2)), \
+ $(call maybe_use_xargs,$(IPKG_REMOVE) $(1),$(2),$(TMP_DIR)/$(1).in))
endef
# 1: package name
endef
# 1: package name