On Tue, 24 Jun 2003, Stefan van der Eijk wrote:
> - changing the .so Provides / Requires to .dso (or something else, but not
> ..so). I *urgently* suggest that this is done before the next release. Once
> this is put into a release, it will need to stay and be maintained. Why
> does this need to change? Well, because at this moment we can't really
> differentiate between .so devel dependencies
> (http://eijk.homelinux.org/~stefan/rpm_devel_dependencies.html) and
> _other_ .so dependencies. The one example I've seen is:
>
> $ rpm -q --provides libdb3.3-3.3.11-14mdk
> db3 = 3.3.11-14mdk
> libdb-3.3.so
> libdb3.3 = 3.3.11-14mdk
>
> While libdb3.3-devel (when it is rebuilt) will _also_ provide libdb3.3.so:
>
> $ ~/test06.sh libdb3.3-devel
> libdb3.3-devel Provides: libdb-3.3.so
> libdb3.3-devel Provides: libdb_cxx-3.3.so
> libdb3.3-devel Provides: libdb_tcl-3.3.so
I must say I don't know a whole lot of the rpm dependency system, but
here's my 2 cents.
cmp -l /lib/libdb-3.3.so /usr/lib/libdb-3.3.so
<nothing>
They're the same files. What's the problem exactly? As it is now, they're
file dependencies equivalent to regular .so.n dependencies. If you want
more information (header file dependencies for example), add that
explicitly instead of changing this. When you give ld the option -ldb-3.3
the linker searches for liddb-3.3.so *not* liddb-3.3.dso or something
else, so the change you want would make dependencies much less
transparent.
Christiaan