develooper Front page | perl.perl5.porters | Postings from December 2013

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

Thread Previous | Thread Next
From:
Irek Szczesniak
Date:
December 2, 2013 11:46
Subject:
Re: Option to use and create "unique" library names
Message ID:
CALnxO55vnK+kDxPONP9f+pJkSgH7R3kXZTCE8=h_qXOpB6JwDg@mail.gmail.com
On Wed, Nov 20, 2013 at 6: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_unique
> and can be tested by compiling perl with -Dd_libname_unique.
>
> Any objections to this going in?

Yes, I do have one. I think this should be fixed in Android and not be
the burden of every damn platform or language to fix. There are more
than perl which will stumble over this, and IMHO the Google staff who
invented this should get the whips where it hurts.

If we work around this issue for perl than Google is likely never
fixing their broken linker.

Irek

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