summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2016-09-25 09:30:55 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2016-09-25 09:30:55 +0200
commit663145e419410876f6a962e7f3461ed73eb50831 (patch)
tree92893603e2313927cb9b9ef747fc4859198d68e6 /include
parentce89535bce052c9463e32ad83b950d00c988c21f (diff)
downloadmaster-31e0f0ae-663145e419410876f6a962e7f3461ed73eb50831.tar.gz
master-31e0f0ae-663145e419410876f6a962e7f3461ed73eb50831.tar.bz2
master-31e0f0ae-663145e419410876f6a962e7f3461ed73eb50831.zip
image: fix CONFIG_CLEAN_IPKG with CONFIG_TARGET_PER_DEVICE_ROOTFS
Running prepare_rootfs on TARGET_DIR deletes the opkg state when CONFIG_CLEAN_IPKG is enabled, making the per-device rootfs package install fail. To avoid this, create a copy of the TARGET_DIR before prepare_rootfs is run and use this as basis for per-device rootfs generation. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Diffstat (limited to 'include')
-rw-r--r--include/image.mk2
-rw-r--r--include/rootfs.mk2
2 files changed, 3 insertions, 1 deletions
diff --git a/include/image.mk b/include/image.mk
index b963735266..d48b1f6abf 100644
--- a/include/image.mk
+++ b/include/image.mk
@@ -297,7 +297,7 @@ opkg_target = \
target-dir-%: FORCE
rm -rf $(mkfs_cur_target_dir) $(mkfs_cur_target_dir).opkg
- $(CP) $(TARGET_DIR) $(mkfs_cur_target_dir)
+ $(CP) $(TARGET_DIR_ORIG) $(mkfs_cur_target_dir)
-mv $(mkfs_cur_target_dir)/etc/opkg $(mkfs_cur_target_dir).opkg
echo 'src default file://$(PACKAGE_DIR_ALL)' > $(mkfs_cur_target_dir).conf
$(if $(call opkg_package_files,$(mkfs_packages_add)), \
diff --git a/include/rootfs.mk b/include/rootfs.mk
index 6ca7c9c322..6a6610019f 100644
--- a/include/rootfs.mk
+++ b/include/rootfs.mk
@@ -52,6 +52,8 @@ opkg_package_files = $(wildcard \
$(foreach dir,$(PACKAGE_SUBDIRS), \
$(foreach pkg,$(1), $(dir)/$(pkg)_*.ipk)))
+TARGET_DIR_ORIG := $(TARGET_ROOTFS_DIR)/root.orig-$(BOARD)
+
define prepare_rootfs
@if [ -d $(TOPDIR)/files ]; then \
$(call file_copy,$(TOPDIR)/files/.,$(1)); \