[perl-ExtUtils-Depends] use DynaLoader::mod2fname if available



commit 1867f32fdfa4f4fb2b83bbb9fedbecd6623edae4
Author: Brian Fraser <fraserbn gmail com>
Date:   Fri Jul 25 17:22:54 2014 +0200

    use DynaLoader::mod2fname if available
    
    mod2fname isn't exactly well documented, but basically, some
    platforms have some unusual requirements for their library
    names, so instead of, say, Utils.so for List::Utils, you
    might end up with PL_List__Utils.so; what mod2fname does is
    get you that library name.
    
    There's currently two systems with mod2fname defined, VMS
    and Android. OS/2 uses it as well, but the OS/2 port isn't
    functional at the moment. Additionally, Windows may start
    using it in the near future.

 lib/ExtUtils/Depends.pm |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/lib/ExtUtils/Depends.pm b/lib/ExtUtils/Depends.pm
index 2a5b527..8b7f448 100644
--- a/lib/ExtUtils/Depends.pm
+++ b/lib/ExtUtils/Depends.pm
@@ -320,6 +320,10 @@ sub find_extra_libs {
        my @found_libs = ();
        foreach my $name (keys %{ $self->{deps} }) {
                (my $stem = $name) =~ s/^.*:://;
+               if ( defined &DynaLoader::mod2fname ) {
+                        my @parts = split /::/, $name;
+                        $stem = DynaLoader::mod2fname([ parts]);
+               }
                my $lib = $mapper->($stem);
                my $pattern = qr/$lib$/;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]