develooper Front page | perl.perl5.porters | Postings from January 2014

Re: Option to use and create "unique" library names

Thread Previous | Thread Next
From:
Brian Fraser
Date:
January 7, 2014 05:37
Subject:
Re: Option to use and create "unique" library names
Message ID:
CA+nL+nb10pddKutZiAknpHEJDYi_hL-nZedyT2RCdJgfEAL6qA@mail.gmail.com
On Wed, Nov 20, 2013 at 2:41 AM, Brian Fraser <fraserbn@gmail.com> wrote:

> Background:
> Android's linker has some bugg^Wunusual behavior, in that it caches loaded
> libraries, but only uses the basename in the cache.  That means that,
> as far as its dlopen() is concerned, the libraries for Hash::Util and
> List::Util,
> both of which are named Util.so, are the same.
>
> What we did in the android branch was introduce an option,
> d_libname_unique,
> that when defined, has Makemaker create an "unique" libname for each
> module,
> and teaches XSLoader and Dynaloader to look for those; So for example,
> Hash/Util/Util.so becomes Hash/Util/Perl_Hash_Util.so.
>
> The changes for this are in
> http://perl5.git.perl.org/perl.git/shortlog/refs/heads/hugmeir/d_libname_uniqueand can be tested by compiling perl with -Dd_libname_unique.
>
> Any objections to this going in?
>
>
To follow up on this, the revised version is now on blead, but I did not
merge the changes to Module::Build and MakeMaker, so currently compiling
with -Dd_libname_unique will fail two of Module::Build's tests; the
necessary fixes are already in the respective githubs[0][1], so the tests
with -Dd_libname_unique will start passing once those get merged back to
blead.

[0]
https://github.com/Perl-Toolchain-Gang/Module-Build/commit/ff5b2f970325e7dfbb3caf57a37e6b4807978b97
[1]
https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/60a8ef2f5110732f5689d05b591aab37195a2ebf<https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/issues/78>

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About