aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2010-10-05 19:18:15 +0000
committerJo-Philipp Wich <jow@openwrt.org>2010-10-05 19:18:15 +0000
commit4b56e28bbb65fa31a320899697d8d8037a6f3ce5 (patch)
treec9a7e199a26c8899449a717dcb81c16d9f4dfeed /tools
parent16e0f2e09e4822d077b167a75f29f88f0c8f73f1 (diff)
downloadupstream-4b56e28bbb65fa31a320899697d8d8037a6f3ce5.tar.gz
upstream-4b56e28bbb65fa31a320899697d8d8037a6f3ce5.tar.bz2
upstream-4b56e28bbb65fa31a320899697d8d8037a6f3ce5.zip
[tools] ipkg-utils: don't fail if conffiles do not exist, resolve them instead and silently skip not existing files.
This prepares support for sysupgrade hints using to build the keepfile list. Subsequent commits will rely on this feature - a rebuild of tools/ipkg-utils is necessary! git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23256 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'tools')
-rw-r--r--tools/ipkg-utils/patches/170-resolve_conffiles.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/ipkg-utils/patches/170-resolve_conffiles.patch b/tools/ipkg-utils/patches/170-resolve_conffiles.patch
new file mode 100644
index 0000000000..31faf30a03
--- /dev/null
+++ b/tools/ipkg-utils/patches/170-resolve_conffiles.patch
@@ -0,0 +1,23 @@
+--- a/ipkg-build
++++ b/ipkg-build
+@@ -160,12 +160,15 @@ You probably want to chown these to a sy
+ done
+
+ if [ -f $CONTROL/conffiles ]; then
+- for cf in `cat $CONTROL/conffiles`; do
+- if [ ! -f ./$cf ]; then
+- echo "*** Error: $CONTROL/conffiles mentions conffile $cf which does not exist" >&2
+- PKG_ERROR=1
+- fi
++ rm -f $CONTROL/conffiles.resolved
++
++ for cf in `$FIND $(sed -e "s!^/!$pkg_dir/!" $CONTROL/conffiles) -type f`; do
++ echo "${cf#$pkg_dir}" >> $CONTROL/conffiles.resolved
+ done
++
++ rm $CONTROL/conffiles
++ mv $CONTROL/conffiles.resolved $CONTROL/conffiles
++ chmod 0644 $CONTROL/conffiles
+ fi
+
+ cd $owd