Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Dealing with global /usr/bin/libtool use vs CC/CXX etc.
Date: Sun, 10 Jan 2021 14:47:55
Message-Id: 001793010784d3ee41e95f66a051b199010ae056.camel@gentoo.org
In Reply to: Re: [gentoo-dev] [RFC] Dealing with global /usr/bin/libtool use vs CC/CXX etc. by Fabian Groffen
1 On Sun, 2021-01-10 at 14:54 +0100, Fabian Groffen wrote:
2 > On 10-01-2021 14:34:13 +0100, Michał Górny wrote:
3 > > The vast majority of libtool-based programs use configure script to
4 > > generate libtool. However, a few non-autoconf packages also use libtool
5 > > by calling system-installed /usr/bin/libtool. The problem is that this
6 > > libtool hardcodes the values of CC/CXX at its' build time, so unless it
7 > > is rebuilt frequently, packages end up using the stale values.
8 > > The problem is known since 2005 [1] and hasn't been resolved yet.
9 > >
10 > > I can think of two ways of solving it:
11 > >
12 > > 1. We could patch system-installed libtool to respect environment
13 > > variables such as CC, CXX, etc. This will probably require carrying
14 > > a (possibly non-trivial) patch forever. On the bright side, libtool is
15 > > not exactly a package seeing frequent releases. I mean, the current
16 > > version is from 2015.
17 > >
18 > > 2. We could regenerate libtool and force local instance of libtool
19 > > in the packages needing it. The main advantage of this is that it's
20 > > a no-brainer. I could make a quick eclass that does configure a local
21 > > instance and prepends it into PATH.
22 > >
23 > > WDYT?
24 >
25 > I would prefer option 2, also because on some systems usr/bin/libtool is
26 > some entirely different tool than GNU libtool.
27 >
28 > I remember this being much more of a problem ~15 years ago, so I wonder
29 > do we have an easy way of crafting a list of affected packages, such
30 > that we can see how big the problem actually is nowadays? I'm thinking
31 > perhaps tinderbox logs or something can reveal /usr/bin/libtool usage
32 > somehow.
33
34 I think it might be possible to do something akin USE=-native-symlinks
35 that makes libtool not install /usr/bin/libtool, and see what breaks.
36 However, I'm not sure if this executable isn't required for some obscure
37 reason anyway.
38
39 --
40 Best regards,
41 Michał Górny

Replies