svn commit: r414832 - in head: Mk Mk/Scripts lang/perl5-devel lang/perl5.18 lang/perl5.20 lang/perl5.22

Mark Millard markmi at dsl-only.net
Mon May 9 20:19:19 UTC 2016


On Mon May 9 12:08:12 UTC 2016 John Marino wrote:

> On 5/9/2016 1:58 PM, Mathieu Arnold wrote:
> >
> > This makes lang/perl5* use USE_LDCONFIG instead of hardcoding -rpath.
> >
> 
> Now that's really interesting and a shame it's not logged because IMO 
> rpath is superior to LDCONFIG wrt to rtld lookups, so it would be 
> interesting to know why perl was "downgraded" and what problem is being 
> solved.

See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209173 .

The basic problem is that when perl is built the new one is run/tested before perl is installed. When it is built with -rpath it uses that path in those early runs/tests and fails as a result of referencing where things will later be installed. It either:

A) picks up the older libperl.so*'s
or
B) finds no libperl.so*'s (first time install for where it is looking)

In case (A) the old perl version number is returned in a test that is run and so the build fails that test. (The version number apparently comes from the library.)

In case (B) a run fails by not finding the libperl.so*'s and the build fails.

The specific example submitted was for inappropriately finding the files:

/usr/local/lib/perl5/5.22/mach/CORE/libperl.so*

I was having to copy the libperl.so*'s from the failed /usr/obj/ area to /usr/local/lib/perl5/5.22/mach/CORE/ and then re-run the build (or other such manual hacks) in order that the early runs/tests would work/pass.


===
Mark Millard
markmi at dsl-only.net



More information about the svn-ports-head mailing list