On 18. 3. 2012, at 21:46, Joerg Sonnenberger wrote:
On Sun, Mar 18, 2012 at 08:57:53PM +0100, Filip Hajny wrote:
On 18. 3. 2012, at 19:06, Joerg Sonnenberger wrote:
On Sun, Mar 18, 2012 at 01:55:44PM +0100, Filip Hajny wrote:
Without the patch, for instance 'expat' has /usr/lib/libexpat.so.1 (or
whatever else 'ldd' resolved under the DESTDIR environment) recorded
in its REQUIRES, even though the binary (xmlwf) is in fact linked
against the package's own libexpat.so.1.
BTW, you should look at getting the readelf based shared library check
to work for Solaris, since it is more precise and reliable.
Thanks, but that's not a good option IMO. readelf is not a guaranteed
part of the SunOS platform. And bringing in devel/binutils opens
a different can of worms.
Solaris has no tools to extract the necessary data directly in the base
installation? It doesn't have to be readelf. I.e. what is needed is
DT_RPATH and DT_NEEDED.
There is elfdump, but I don't see how it helps in this case. The only information you can
get from NEEDED are the base names of the libraries, and RPATH reports (typically) the
single ${PREFIX}/lib path, so you can't get a full list of "what's required from
where", let alone identify which libs are to be ignored for the REQUIRES meta, for
they are in fact part of the PROVIDES meta.
Or am I missing something?