Subject: libraries picked up from xsrc as well as /usr/pkg
To: None <tech-pkg@netbsd.org>
From: Mark Davies <mark@mcs.vuw.ac.nz>
List: tech-pkg
Date: 04/05/2005 16:56:18
Hi,
   something has changed in the last couple of weeks to cause the breaking of 
the preferring of /usr/pkg/lib versions of libraries over /usr/X11R6/lib.  
Some other people have also recently noticed and reported this but here is a 
concrete example.

Using a pkgsrc tree from a few weeks ago (around the middle of the freeze I 
think) on a NetBSD 2.99.10 box building gimp produces this binary:

/usr/pkg/bin/gimp-2.2:
        -lintl.0 => /usr/lib/libintl.so.0
        -lglib-2.0.0 => /usr/pkg/lib/libglib-2.0.so.0
        -lgobject-2.0.0 => /usr/pkg/lib/libgobject-2.0.so.0
        -lgimpbase-2.0.0 => /usr/pkg/lib/libgimpbase-2.0.so.0
        -lm.0 => /usr/lib/libm387.so.0
        -lm.0 => /usr/lib/libm.so.0
        -lgimpcolor-2.0.0 => /usr/pkg/lib/libgimpcolor-2.0.so.0
        -lgmodule-2.0.0 => /usr/pkg/lib/libgmodule-2.0.so.0
        -lpthread.0 => /usr/lib/libpthread.so.0
        -lgdk_pixbuf-2.0.0 => /usr/pkg/lib/libgdk_pixbuf-2.0.so.0
        -lX11.6 => /usr/X11R6/lib/libX11.so.6
        -lXext.6 => /usr/X11R6/lib/libXext.so.6
        -lXrender.1 => /usr/pkg/lib/libXrender.so.1
        -lXrandr.2 => /usr/pkg/lib/libXrandr.so.2
        -lXi.6 => /usr/X11R6/lib/libXi.so.6
        -lz.0 => /usr/lib/libz.so.0
        -lfreetype.6 => /usr/pkg/lib/libfreetype.so.6
        -lexpat.0 => /usr/pkg/lib/libexpat.so.0
        -lfontconfig.1 => /usr/pkg/lib/libfontconfig.so.1
        -lXft.2 => /usr/pkg/lib/libXft.so.2
        -lXfixes.0 => /usr/pkg/lib/libXfixes.so.0
        -lXcursor.1 => /usr/pkg/lib/libXcursor.so.1
        -lpango-1.0.0 => /usr/pkg/lib/libpango-1.0.so.0
        -lpangoft2-1.0.0 => /usr/pkg/lib/libpangoft2-1.0.so.0
        -lpangoxft-1.0.0 => /usr/pkg/lib/libpangoxft-1.0.so.0
        -lpangox-1.0.0 => /usr/pkg/lib/libpangox-1.0.so.0
        -lgdk-x11-2.0.0 => /usr/pkg/lib/libgdk-x11-2.0.so.0
        -latk-1.0.0 => /usr/pkg/lib/libatk-1.0.so.0
        -lgtk-x11-2.0.0 => /usr/pkg/lib/libgtk-x11-2.0.so.0
        -lgimpwidgets-2.0.0 => /usr/pkg/lib/libgimpwidgets-2.0.so.0
        -lgimpmodule-2.0.0 => /usr/pkg/lib/libgimpmodule-2.0.so.0
        -lgimpmath-2.0.0 => /usr/pkg/lib/libgimpmath-2.0.so.0
        -lgimpthumb-2.0.0 => /usr/pkg/lib/libgimpthumb-2.0.so.0
        -lart_lgpl_2.2 => /usr/pkg/lib/libart_lgpl_2.so.2
        -lc.12 => /usr/lib/libc.so.12

Updating pkgsrc to yesterdays tree and rebuilding gimp (but not any of the 
packages it depends on) produces:

/usr/pkg/bin/gimp-2.2:
        -lintl.0 => /usr/lib/libintl.so.0
        -lglib-2.0.0 => /usr/pkg/lib/libglib-2.0.so.0
        -lgobject-2.0.0 => /usr/pkg/lib/libgobject-2.0.so.0
        -lgimpbase-2.0.0 => /usr/pkg/lib/libgimpbase-2.0.so.0
        -lm.0 => /usr/lib/libm387.so.0
        -lm.0 => /usr/lib/libm.so.0
        -lgimpcolor-2.0.0 => /usr/pkg/lib/libgimpcolor-2.0.so.0
        -lgmodule-2.0.0 => /usr/pkg/lib/libgmodule-2.0.so.0
        -lpthread.0 => /usr/lib/libpthread.so.0
        -lgdk_pixbuf-2.0.0 => /usr/pkg/lib/libgdk_pixbuf-2.0.so.0
        -lX11.6 => /usr/X11R6/lib/libX11.so.6
        -lXext.6 => /usr/X11R6/lib/libXext.so.6
        -lXrender.1 => /usr/pkg/lib/libXrender.so.1
        -lXrandr.2 => /usr/pkg/lib/libXrandr.so.2
        -lXi.6 => /usr/X11R6/lib/libXi.so.6
        -lz.0 => /usr/lib/libz.so.0
        -lfreetype.6 => /usr/pkg/lib/libfreetype.so.6
        -lexpat.0 => /usr/pkg/lib/libexpat.so.0
        -lfontconfig.1 => /usr/pkg/lib/libfontconfig.so.1
        -lXft.2 => /usr/pkg/lib/libXft.so.2
        -lXfixes.0 => /usr/pkg/lib/libXfixes.so.0
        -lXcursor.1 => /usr/pkg/lib/libXcursor.so.1
        -lpango-1.0.0 => /usr/pkg/lib/libpango-1.0.so.0
        -lpangoft2-1.0.0 => /usr/pkg/lib/libpangoft2-1.0.so.0
        -lpangoxft-1.0.0 => /usr/pkg/lib/libpangoxft-1.0.so.0
        -lpangox-1.0.0 => /usr/pkg/lib/libpangox-1.0.so.0
        -lgdk-x11-2.0.0 => /usr/pkg/lib/libgdk-x11-2.0.so.0
        -latk-1.0.0 => /usr/pkg/lib/libatk-1.0.so.0
        -lgtk-x11-2.0.0 => /usr/pkg/lib/libgtk-x11-2.0.so.0
        -lgimpwidgets-2.0.0 => /usr/pkg/lib/libgimpwidgets-2.0.so.0
        -lgimpmodule-2.0.0 => /usr/pkg/lib/libgimpmodule-2.0.so.0
        -lgimpmath-2.0.0 => /usr/pkg/lib/libgimpmath-2.0.so.0
        -lgimpthumb-2.0.0 => /usr/pkg/lib/libgimpthumb-2.0.so.0
        -lart_lgpl_2.2 => /usr/pkg/lib/libart_lgpl_2.so.2
        -lexpat.4 => /usr/X11R6/lib/libexpat.so.4
        -lfontconfig.1 => /usr/X11R6/lib/libfontconfig.so.1
        -lc.12 => /usr/lib/libc.so.12

Note the extra libexpat and libfontconfig and this version of gimp complains 
that fontconfig is too old when you try and run it and exits.

Apart from gimp itself the only other packages that got built were 
libtool-base (as 1.5.14 is the required version now) and xextensions (as the 
randrext/buildlink3.mk now pulls it in) but reverting to and forcing use of 
old versions of these didn't make a difference so I presume the actual 
problem is in some change to a bit of the wrapper/buildlink framework.

Any ideas where and how to fix?  (or how to narrow down the location of the 
problem).

cheers
mark