aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2017-01-24 17:00:43 +0100
committerMatthias Schiffer <mschiffer@universe-factory.net>2017-01-27 10:09:50 +0100
commit04a508512790017c768acf887cf0ac52daaba234 (patch)
tree6d523f5c090e41b157dac89d2e0d9a218c52f9a6 /include
parentdfe77be01fb16178efc43350c431f998a3b65ff1 (diff)
downloadupstream-04a508512790017c768acf887cf0ac52daaba234.tar.gz
upstream-04a508512790017c768acf887cf0ac52daaba234.tar.bz2
upstream-04a508512790017c768acf887cf0ac52daaba234.zip
include/rootfs.mk: keep Require-User lines with CONFIG_CLEAN_IPKG
Require-User is handled by /etc/uci-defaults/13_fix_group_user on first boot, so we need to keep these when removing all opkg data with CONFIG_CLEAN_IPKG. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Diffstat (limited to 'include')
-rw-r--r--include/rootfs.mk10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/rootfs.mk b/include/rootfs.mk
index 90d70a11f2..c014b1d14a 100644
--- a/include/rootfs.mk
+++ b/include/rootfs.mk
@@ -47,6 +47,14 @@ opkg = \
TARGET_DIR_ORIG := $(TARGET_ROOTFS_DIR)/root.orig-$(BOARD)
+ifdef CONFIG_CLEAN_IPKG
+ define clean_ipkg
+ -find $(1)/usr/lib/opkg -type f -and -not -name '*.control' | $(XARGS) rm -rf
+ -sed -i -ne '/^Require-User: /p' $(1)/usr/lib/opkg/info/*.control
+ -find $(1)/usr/lib/opkg -empty | $(XARGS) rm -rf
+ endef
+endif
+
define prepare_rootfs
@if [ -d $(TOPDIR)/files ]; then \
$(call file_copy,$(TOPDIR)/files/.,$(1)); \
@@ -75,6 +83,6 @@ define prepare_rootfs
rm -f $(1)/usr/lib/opkg/lists/*
rm -f $(1)/usr/lib/opkg/info/*.postinst*
rm -f $(1)/usr/lib/opkg/info/*.prerm*
- $(if $(CONFIG_CLEAN_IPKG),rm -rf $(1)/usr/lib/opkg)
+ $(call clean_ipkg,$(1))
$(call mklibs,$(1))
endef