Hi,

this patch attached takes care of the shared libraies in /usr/lib and makes
sure you get a dependency on thoe. It's a rude hack, and you will get one
warning for every library. For libraries in /lib, you get a warning that it
can't find them in /usr/lib. For libs in /usr/lib, you get warnings that it
can't find them in /lib. That's okay, the dependencies will be ok, because
it checks both, lib and usr/lib (one always works, one always fails).

I think you will also get warnings that it can't find the X libs in
/X11R6/lib or /usr/usr/X11R6/lib, depending on how you define
LD_LIBRARY_PATH.

In any way, please add this patch. missing dependencies can be annoying.
It can also happen that you get a broken Depends: line otherwise. So just
add this for now.

I will give a notice when dpkg-dev has a dpkg-shlibdeps which works better.

Thanks,
Marcus

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org [EMAIL PROTECTED]
Marcus Brinkmann              GNU    http://www.gnu.org    [EMAIL PROTECTED]
[EMAIL PROTECTED]
http://www.marcus-brinkmann.de
--- /usr/bin/dpkg-shlibdeps.orig        Sat Jan 13 15:01:31 2001
+++ /gnu/bin/dpkg-shlibdeps     Sun Mar  4 15:07:29 2001
@@ -114,15 +114,19 @@
        chomp;
        if (m,^\s*NEEDED\s+,) {
            if (m,^\s*NEEDED\s+((\S+)\.so\.(\S+))$,) {
-               push(@libname,$2); push(@libsoname,$3);
-               push(@libf,$execf[$i]);
+               push(@libname,$2); push(@libname,$2);
+               push(@libsoname,$3); push(@libsoname,$3);
+               push(@libf,$execf[$i]); push(@libf,$execf[$i]);
                &warn("could not find path for $1") unless 
defined($so2path{$1});
                push(@libfiles,$so2path{$1});
+               push(@libfiles, "/usr" . $so2path{$1});
            } elsif (m,^\s*NEEDED\s+((\S+)-(\S+)\.so)$,) {
-               push(@libname,$2); push(@libsoname,$3);
-               push(@libf,$execf[$i]);
+               push(@libname,$2); push(@libname,$2);
+               push(@libsoname,$3); push(@libsoname,$3);
+               push(@libf,$execf[$i]); push(@libf,$execf[$i]);
                &warn("could not find path for $1") unless 
defined($so2path{$1});
                push(@libfiles,$so2path{$1});
+               push(@libfiles,"/usr" . $so2path{$1});
            } else {
                m,^\s*NEEDED\s+(\S+)$,;
                &warn("format of $1 not recognized");

Reply via email to