From 7a05d5e17437e0010a7b68de5979e6965a4fe204 Mon Sep 17 00:00:00 2001 From: Matthias Hentges Date: Tue, 4 Apr 2006 22:15:55 +0000 Subject: ipkg-utils/ipkg-link: Add patch from .oz354x --- packages/ipkg-utils/ipkg-link/.mtn2git_empty | 0 packages/ipkg-utils/ipkg-link/link-vfat-libs.patch | 34 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 packages/ipkg-utils/ipkg-link/.mtn2git_empty create mode 100644 packages/ipkg-utils/ipkg-link/link-vfat-libs.patch (limited to 'packages/ipkg-utils/ipkg-link') diff --git a/packages/ipkg-utils/ipkg-link/.mtn2git_empty b/packages/ipkg-utils/ipkg-link/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch b/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch new file mode 100644 index 0000000000..7f495f9f4c --- /dev/null +++ b/packages/ipkg-utils/ipkg-link/link-vfat-libs.patch @@ -0,0 +1,34 @@ +--- ipkg-utils/ipkg-link.orig 2006-04-05 00:08:28.518992136 +0200 ++++ ipkg-utils/ipkg-link 2006-04-05 00:08:40.399186072 +0200 +@@ -58,6 +58,31 @@ + `ln -s "$PREFIX$line" "$line"` + fi + fi ++ ++ # The next function checks whether the _source_ file (ie: /media/card/something) ++ # does actually exist. If it doesn't, it could by a library symlink (ie: libsomething.0.1 -> libsomething.0) ++ # Since VFAT & friends do not support symlinks, these library links would not exist after installation ++ # and trying to symlink them into the rootfs with ipkg-link results in unconnected symlinks in the rootfs. ++ # So we use the real lib file in /media/card/whatever and create all needed symlinks in the rootfs ++ # using the real file as source. ++ ++ if [ ! -e "$PREFIX$line" ]; then ++ if ( echo "$line" | grep -q "lib" ) ; then ++ libsearchfile=$(echo $line | sed -e "s#[a-z0-9/.]*/##g") ++ libfoundfiles=$(find $PREFIX -name "$libsearchfile*") ++ ++ for liblinkfile in $libfoundfiles; do ++ echo "Linking $line to $liblinkfile" ++ # link will be pointing to nowhere ++ if test -L $line; then ++ rm -f $line ++ fi ++ ln -s $liblinkfile $line ++ done ++ else ++ echo "WARNING: Source file [$PREFIX$line] is missing!" ++ fi ++ fi + done + } + -- cgit v1.2.3