On Feb 10, 2013, at 03:38, Jeremy Huddleston Sequoia wrote:
>
>>>>> What makes you think that? There's no reason to think that a port would
>>>>> use icu just because it's using pango.
>>>>
>>>> The output of otool -L.
>>>
>>> Yeah, that's the problem. Look at the output of nm -m, and you'll see it's
>>> not actually using icu. It's just linking against it because of glibtool's
>>> viral propagation of linkage.
>>
>> What I mean is that I get messages that libraries a program or library links
>> with cannot be found. In that sense at least, they are being "used".
>> Therefore I revbump the affected port to rebuild it with the current version
>> of the library and thus clear the error.
>
> Yep, because of glibtool suckage, we need to rebump everything that depends
> indirectly on icu (through pango) and builds with glibtool … even packages
> that seem ok to you because you happened to have built them before pango was
> updated (because someone else may have built it after the viral spread of
> that link by glibtool).
I noticed pangox-compat doesn't link with icu even if I rebuild it now. Any
idea why it's immune? It does build with libtool. It's its own copy of GNU
libtool built at configure time, not MacPorts glibtool.
>>>>> Why are we even shipping the .la files. We should really just delete
>>>>> them from every destroot as they serve no useful purpose and always seem
>>>>> to just screw up builds.
>>>>
>>>> I don't know what .la files are for so I'm not in a position to be able to
>>>> assert that we should remove them.
>>>
>>> .la files are "instructions" that glibtool leaves for itself on how it
>>> should link against a particular library. They're sometimes useful on
>>> other platforms, but on OS X, they serve absolutely NO useful purpose.
>>
>> Then I'm surprised MacPorts has gone 11 years already without removing them.
>> Do other OS X package managers remove them?
>
> I don't know about fink or homebrew, so I can't comment there, but I
> certainly removed them from XQuartz after they messed things up quite a bit
> for X11 users. There were also a handful of them shipped with OS X (in
> /usr/lib), but we got rid of them in Snow Leopard.
There are still .la files in /usr/lib on Mountain Lion (in /usr/lib/freeradius
and /usr/lib/sasl2), and many in MacPorts in directories other than
/opt/local/lib. Can we just go nuts and fs-traverse ${destroot} and remove all
.la files wherever they might be? We could use `file` to make sure they're text
files before doing so, in case some weird software somewhere uses its own .la
files that are not libtool files.
_______________________________________________
macports-dev mailing list
[email protected]
https://lists.macosforge.org/mailman/listinfo/macports-dev