From: Matthias Schiffer Date: Sat, 24 Sep 2016 01:29:31 +0000 (+0200) Subject: image: don't override opkg list directory in per-device rootfs mode X-Git-Tag: v17.01.0-rc1~1395 X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=commitdiff_plain;h=c15d70c6d6a00529a119a41b97953eac9c41a8fc image: don't override opkg list directory in per-device rootfs mode 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 --- diff --git a/include/image.mk b/include/image.mk index 261f0f8aea..63cefff05c 100644 --- a/include/image.mk +++ b/include/image.mk @@ -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)) diff --git a/include/rootfs.mk b/include/rootfs.mk index f3ba33a2be..6ca7c9c322 100644 --- a/include/rootfs.mk +++ b/include/rootfs.mk @@ -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)