Gentoo Archives: gentoo-dev

From: hasufell <hasufell@g.o>
To: gentoo-dev@l.g.o
Cc: multilib@g.o, "Mike Frysinger (vapier)" <vapier@g.o>, toolchain@g.o, embedded@g.o
Subject: [gentoo-dev] crossdev and multilib interference
Date: Wed, 12 Mar 2014 15:46:20
Message-Id: 53208139.2040509@gentoo.org
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA512
3
4 We have a problem where the crossdev pkg-config wrapper scripts
5 interfere with multilib.
6
7 crossdev for example sets in their pkg-config wrappers:
8
9 PKG_CONFIG_LIBDIR="${SYSROOT}/usr/lib/pkgconfig:${SYSROOT}/usr/share/pkgconfig"
10
11 Now, SYSROOT is chosen from multiple conditions. When emerging a
12 package, that happens to be "/" and thus results in:
13 "//usr/lib/pkgconfig://usr/share/pkgconfig"
14
15 Build systems like autotools will pick the crossdev provided
16 "i686-pc-linux-gnu-pkg-config" for the 32bit ABI which will in turn
17 override the eclass-exported PKG_CONFIG_LIBDIR and now effectively
18 find the pkg-config files in /usr/lib64/...
19
20 This is not a problem most of the time if the package just wants to
21 get the libs to link against.
22
23 However, every package that tries to access variables that are
24 different between /usr/lib32/pkgconfig/foo.pc and
25 /usr/lib64/pkgconfig/foo.pc like "libdir" will fail or produce
26 unexpected results.
27
28 That already happens for
29 x11-libs/libva-vdpau-driver
30 x11-libs/libva (https://bugs.gentoo.org/show_bug.cgi?id=500338)
31
32 and there are probably more.
33
34 A simple workaround is:
35 PKG_CONFIG="pkg-config" emerge foo
36
37 But I think that is not appropriate to set in the eclass. How can we
38 solve this? Don't bikeshed.
39 -----BEGIN PGP SIGNATURE-----
40
41 iQJ8BAEBCgBmBQJTIIE5XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
42 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQzMDlCNDQ4NjEyNDI4NjA5REVEMDI3MzIy
43 MjBDRDFDNUJERUVEMDIwAAoJECIM0cW97tAgLvMQALJT5uZFBTL5mHNBjezudMHo
44 ceHY3TzLfeIkWHedCLU9TAapfLjl677W0jbg25zkLayPtUR3voEAIm6xFZtF2CAS
45 VsBpArieXQWqtxSrT9hHC1dJeAWQvQs1kyKXBb5ido8sEBb7WpHFlEqwmUY5bn33
46 TZjGjcQ68EojbcFQl0vmJRx1/bgXxOr9Ir4Y1bFX92S9ENhERnisu3zZrcvC+PyH
47 XqXg+wFoJfxu1fSL4/llRDfyr0UJWlWdMeCpvwgkhCpn66CBwc50BwokMP4f4x3G
48 YDbi+1Ep4GIBVHLd5MlfZOkeqhzPQRD10lbnOHmW7Wuh6Mu87UI7G9xHWZcNyEkS
49 U9Ny0ejyqnx0j5TMgMP/IcpBR1PaRcceTLFYhwJrYucgcB6/YZ1sP81Yce7f2Riy
50 M6OZontsv8GVbPA4tsgsV4wob6XUzn6d47p4jwbq67u3GUX6QU7fNB0yJ2ga56qV
51 xvIaEgdOFsAZHOyix6zfTa2AqpE2LQiVfwEF2pI4J4bTCfy7DvfWhuvA5IwWyyFA
52 jPiGr5xEns85v2q+dagUo/iup9gzbgGQs+dH6w3wXTkip72lnbxHwiz8Pa2eIXVl
53 +Tvo9vcdVSzw68tF30sS005+HNorCkj/pqdC7FND/KCyC7r3aESmagibqKdUhHPc
54 9sN1RjgyzXYst5mvQ1Hg
55 =J4Qp
56 -----END PGP SIGNATURE-----

Replies

Subject Author
Re: [gentoo-dev] crossdev and multilib interference Alexandre Rostovtsev <tetromino@g.o>
Re: [gentoo-dev] crossdev and multilib interference "Michał Górny" <mgorny@g.o>