[openwrt/openwrt] include/rootfs.mk: retain list of conffiles with CONFIG_CLEAN_IPKG

LEDE Commits lede-commits at lists.infradead.org
Wed Mar 7 01:54:41 PST 2018


neoraider pushed a commit to openwrt/openwrt.git, branch lede-17.01:
https://git.lede-project.org/75be005e8bdcbf86f9ad167a8737126dda98a444

commit 75be005e8bdcbf86f9ad167a8737126dda98a444
Author: Matthias Schiffer <mschiffer at universe-factory.net>
AuthorDate: Tue Mar 6 14:29:46 2018 +0100

    include/rootfs.mk: retain list of conffiles with CONFIG_CLEAN_IPKG
    
    /usr/lib/opkg/status must not be removed completely, otherwise the
    packages' conffile lists will be missing. Replace it with a reduced version
    only containing the conffile entries.
    
    Signed-off-by: Matthias Schiffer <mschiffer at universe-factory.net>
---
 include/rootfs.mk | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/include/rootfs.mk b/include/rootfs.mk
index dc400a0..816f17b 100644
--- a/include/rootfs.mk
+++ b/include/rootfs.mk
@@ -49,8 +49,15 @@ 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
+	-find $(1)/usr/lib/opkg/info -type f -and -not -name '*.control' | $(XARGS) rm -rf
 	-sed -i -ne '/^Require-User: /p' $(1)/usr/lib/opkg/info/*.control
+	awk ' \
+		BEGIN { conffiles = 0; print "Conffiles:" } \
+		/^Conffiles:/ { conffiles = 1; next } \
+		!/^ / { conffiles = 0; next } \
+		conffiles == 1 { print } \
+	' $(1)/usr/lib/opkg/status >$(1)/usr/lib/opkg/status.new
+	mv $(1)/usr/lib/opkg/status.new $(1)/usr/lib/opkg/status
 	-find $(1)/usr/lib/opkg -empty | $(XARGS) rm -rf
   endef
 endif



More information about the lede-commits mailing list