image: don't override opkg list directory in per-device rootfs mode
authorMatthias Schiffer <mschiffer@universe-factory.net>
Sat, 24 Sep 2016 01:29:31 +0000 (03:29 +0200)
committerMatthias Schiffer <mschiffer@universe-factory.net>
Sat, 24 Sep 2016 01:37:08 +0000 (03:37 +0200)
opkg's -l option is always interpreted relative to the installation root.
This leads to very weird paths inside the rootfs (containing the whole path
to the LEDE tree on the build machine) and causes the subsequent deletion
of the list directory to fail (cluttering the resulting images).

Instead, use the default list directory and remove its contents in
prepare_rootfs.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
include/image.mk
include/rootfs.mk

index 261f0f8..63cefff 100644 (file)
@@ -293,8 +293,7 @@ mkfs_cur_target_dir = $(call mkfs_target_dir,pkg=$(target_params))
 
 opkg_target = \
        $(call opkg,$(mkfs_cur_target_dir)) \
-               -f $(mkfs_cur_target_dir).conf \
-               -l $(mkfs_cur_target_dir).tmp
+               -f $(mkfs_cur_target_dir).conf
 
 target-dir-%: FORCE
        rm -rf $(mkfs_cur_target_dir) $(mkfs_cur_target_dir).opkg
@@ -311,9 +310,7 @@ target-dir-%: FORCE
        $(call Image/mkfs/prepare,$(mkfs_cur_target_dir))
        $(call prepare_rootfs,$(mkfs_cur_target_dir))
        mv $(mkfs_cur_target_dir).opkg $(mkfs_cur_target_dir)/etc/opkg
-       rm -rf \
-               $(mkfs_cur_target_dir).conf \
-               $(mkfs_cur_target_dir).tmp
+       rm -f $(mkfs_cur_target_dir).conf
 
 $(KDIR)/root.%: kernel_prepare
        $(call Image/mkfs/$(word 1,$(target_params)),$(target_params))
index f3ba33a..6ca7c9c 100644 (file)
@@ -72,6 +72,7 @@ define prepare_rootfs
        @-find $(1) -name .svn  | $(XARGS) rm -rf
        @-find $(1) -name .git  | $(XARGS) rm -rf
        @-find $(1) -name '.#*' | $(XARGS) rm -f
+       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)