On Thu, 2014-03-13 at 09:55 +0100, Michał Górny wrote: > Dnia 2014-03-12, o godz. 15:46:01 > hasufell <hasuf...@gentoo.org> napisał(a): > > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA512 > > > > We have a problem where the crossdev pkg-config wrapper scripts > > interfere with multilib. > > > > crossdev for example sets in their pkg-config wrappers: > > > > PKG_CONFIG_LIBDIR="${SYSROOT}/usr/lib/pkgconfig:${SYSROOT}/usr/share/pkgconfig" > > > > Now, SYSROOT is chosen from multiple conditions. When emerging a > > package, that happens to be "/" and thus results in: > > "//usr/lib/pkgconfig://usr/share/pkgconfig" > > > > Build systems like autotools will pick the crossdev provided > > "i686-pc-linux-gnu-pkg-config" for the 32bit ABI which will in turn > > override the eclass-exported PKG_CONFIG_LIBDIR and now effectively > > find the pkg-config files in /usr/lib64/... > > > > This is not a problem most of the time if the package just wants to > > get the libs to link against. > > > > However, every package that tries to access variables that are > > different between /usr/lib32/pkgconfig/foo.pc and > > /usr/lib64/pkgconfig/foo.pc like "libdir" will fail or produce > > unexpected results. > > > > That already happens for > > x11-libs/libva-vdpau-driver > > x11-libs/libva (https://bugs.gentoo.org/show_bug.cgi?id=500338) > > > > and there are probably more. > > Another possible workaround is to make pkgconfig true-multilib. Then it > would own i686-pc-linux-gnu-pkgconfig, and that executable would work > correctly. More than that, we could work on killing the PKG_CONFIG_PATH > hack.
That won't work with current versions of crossdev because they blindly create/delete their pkg-config wrappers without checking if they are overwriting or removing something that belongs to another package.
signature.asc
Description: This is a digitally signed message part