Hi, On Thu, 1 Jan 2009 10:46:05 +0100 =?iso-8859-1?Q?Lo=EFc?= Minier <l...@dooz.org> wrote: > On Wed, Dec 31, 2008, Andres Mejia wrote: > > The libfam shlib entry in libgamin0 is wrongly set to libfam0. Since > > libgamin > > is provided as a replacement for libfam, the entry should be set to > > libgamin0. This is a problem for packages that build depend on libgamin-dev > > since their dependency on libfam gets set to libfam0 instead of libgamin0. > > > > A fix for this would be to simply set the entry as "libfam 0 libgamin0". > > Better yet, just delete the libgamin0.shlibs file from the debian directory > > and let the shlibs file be automatically generated. > > I think you misunderstood the current shlibs; the point is to allow > building against the FAM API and ABI and depend on libfam0 (provided by > libgamin0) if programs are linked to libfam. This means you can > build-dep on fam or on gamin if you use the FAM API and this will > result on a dep on the FAM ABI and allow users to install either FAM or > Gamin as an implementation of the FAM ABI. You can also use the Gamin > API and link to libgamin which will result in a dep on the Gamin ABI. > > What problem are you trying to solve?
This is an actual problem, as libfam0 doesn't provide the FAMNoExists symbol, but programs building against libgamin-dev might detect the symbol as available and use it. So libfam0 can't properly provide "libfam.so*" from libgamin0, and shouldn't be allowed to by libgamin0.shlibs. (As the gamin homepage says "The functions FAMSuspendMonitor(), FAMResumeMonitor() and FAMMonitorCollection() are not implemented." I think libgamin0 shouldn't have ever provided libfam0 either - it's basically broken in both directions.) I think fixing libgamin0.shlibs and dropping fam from the archives is the smoothest path to fixing this mess. Also see: - https://salsa.debian.org/debian/lighttpd/-/merge_requests/18 - https://bugs.launchpad.net/bugs/1453463 [lighttpd] "undefined symbol: FAMNoExists" - https://bugs.debian.org/966273 "RFA: fam -- File Alteration Monitor" (also: FAM upstream has been dead for some time) - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=438330 "Symbol `FamErrlist' has different size in shared object, consider re-linking" (this was just an annoying warning, not a real issue) - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=438552 "libgamin0: is Conflicts: libfam0 still necessary/valid?" (2007: perhaps libfam0 wasn't "provided" at the time?) cheers, Stefan