diff options
author | Brian Fraser <fraserbn@gmail.com> | 2013-05-15 08:52:18 -0300 |
---|---|---|
committer | Brian Fraser <fraserbn@gmail.com> | 2014-01-03 19:45:06 -0300 |
commit | adedc077d57a220273128839bbe9b3289fdc5a1f (patch) | |
tree | d82812284d2c790c157a94a54b2533f08e2bea40 /dist/XSLoader | |
parent | 09d15bae7b456c0c9a2719462f699d5fdcf45aa0 (diff) | |
download | perl-adedc077d57a220273128839bbe9b3289fdc5a1f.tar.gz |
DynaLoader: Introduce d_libname_unique
Android's linker has some unusual behavior, in that it only uses
the basename of a library in its cache. That means that, as far as
dlopen() is concerned, the libraries for Hash::Util and List::Util,
both of which are called Util.so, are the same.
This commit teaches DynaLoader about d_libname_unique. When
defined, it signals DynaLoader define a mod2fname sub that renames
the .so files to something "unique" -- so for example,
Hash/Util/Util.so becomes Hash/Util/PL_Hash__Util.so.
Diffstat (limited to 'dist/XSLoader')
-rw-r--r-- | dist/XSLoader/XSLoader_pm.PL | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/dist/XSLoader/XSLoader_pm.PL b/dist/XSLoader/XSLoader_pm.PL index fb5707c29a..e382058a04 100644 --- a/dist/XSLoader/XSLoader_pm.PL +++ b/dist/XSLoader/XSLoader_pm.PL @@ -1,5 +1,7 @@ use strict; use Config; +# We require DynaLoader to make sure that mod2fname is loaded +eval { require DynaLoader }; 1 while unlink "XSLoader.pm"; open OUT, ">XSLoader.pm" or die $!; @@ -8,7 +10,7 @@ print OUT <<'EOT'; package XSLoader; -$VERSION = "0.16"; +$VERSION = "0.17"; #use strict; @@ -201,7 +203,7 @@ XSLoader - Dynamically load C libraries into Perl code =head1 VERSION -Version 0.16 +Version 0.17 =head1 SYNOPSIS |