From 999a4c28918e28bc1dae8c33dc66293a3708dda9 Mon Sep 17 00:00:00 2001 From: jow Date: Tue, 5 Oct 2010 19:18:15 +0000 Subject: [PATCH] [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 --- .../patches/170-resolve_conffiles.patch | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 tools/ipkg-utils/patches/170-resolve_conffiles.patch 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 000000000..31faf30a0 --- /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