[Reproducible-commits] [libextutils-depends-perl] 144/187: Imported Upstream version 0.309

Maria Valentina Marin Rodrigues akira-guest at moszumanska.debian.org
Wed Jan 21 21:16:58 UTC 2015


This is an automated email from the git hooks/post-receive script.

akira-guest pushed a commit to branch pu/reproducible_builds
in repository libextutils-depends-perl.

commit ee1001844ba23cca305069d42f815fbd58e18214
Author: gregor herrmann <gregoa at debian.org>
Date:   Sun Aug 3 14:12:37 2014 +0200

    Imported Upstream version 0.309
---
 Changes                           |  6 ++++++
 MANIFEST                          |  5 ++++-
 META.json                         |  4 ++--
 META.yml                          | 26 +++++++++++++-------------
 MYMETA.json                       |  4 ++--
 MYMETA.yml                        | 26 +++++++++++++-------------
 lib/ExtUtils/Depends.pm           | 24 +++++++++++++++++++++---
 t/04_extra_libs.t                 | 12 +++++++++---
 t/inc/DepTest/PL_DepTest.dll      |  0
 t/inc/DepTest/PL_DepTest.lib      |  0
 t/inc/DepTest/PL_DepTest.so       |  0
 t/inc/DepTest/PL_libDepTest.dll.a |  0
 12 files changed, 70 insertions(+), 37 deletions(-)

diff --git a/Changes b/Changes
index 7d6a0db..cc82def 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,11 @@
 Revision history for Perl extension ExtUtils::Depends.
 
+0.309 Sat Aug  2 15:23:03 PDT 2014
+    - Depends.pm: use $DLEXT instead of $SO for library filename extensions
+    - MANIFEST: remove MYMETA.* files
+    - use DynaLoader::mod2fname if available
+    - Added Android support
+
 0.308 Sun May 18 16:22:11 PDT 2014
     - Fix win32 test failure in t/02_save_load.t (closes RT#95301)
 
diff --git a/MANIFEST b/MANIFEST
index b7277bf..eea3748 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,5 +1,4 @@
 Changes
-ExtUtils-Depends-0.308.tar.gz
 lib/ExtUtils/Depends.pm
 Makefile.PL
 MANIFEST			This list of files
@@ -16,6 +15,10 @@ t/inc/DepTest/DepTest.dll
 t/inc/DepTest/DepTest.lib
 t/inc/DepTest/Install/.keep
 t/inc/DepTest/libDepTest.dll.a
+t/inc/DepTest/PL_DepTest.dll
+t/inc/DepTest/PL_DepTest.lib
+t/inc/DepTest/PL_DepTest.so
+t/inc/DepTest/PL_libDepTest.dll.a
 t/lib/TestHelper.pm
 META.yml                                 Module YAML meta-data (added by MakeMaker)
 META.json                                Module JSON meta-data (added by MakeMaker)
diff --git a/META.json b/META.json
index 90eb9a5..0a6a603 100644
--- a/META.json
+++ b/META.json
@@ -4,7 +4,7 @@
       "Gtk2-Perl Team <gtk-perl-list at gnome dot org>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.86, CPAN::Meta::Converter version 2.133380",
+   "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520",
    "keywords" : [
       "XS",
       "XS extensions",
@@ -73,5 +73,5 @@
       },
       "x_MailingList" : "https://mail.gnome.org/mailman/listinfo/gtk-perl-list"
    },
-   "version" : "0.308"
+   "version" : "0.309"
 }
diff --git a/META.yml b/META.yml
index c3ba7b2..93a68ba 100644
--- a/META.yml
+++ b/META.yml
@@ -3,15 +3,15 @@ abstract: unknown
 author:
   - 'Gtk2-Perl Team <gtk-perl-list at gnome dot org>'
 build_requires:
-  ExtUtils::MakeMaker: 0
-  Test::More: 0
+  ExtUtils::MakeMaker: '0'
+  Test::More: '0'
 configure_requires:
-  Data::Dumper: 0
-  ExtUtils::MakeMaker: 0
-  File::Spec: 0
-  IO::File: 0
+  Data::Dumper: '0'
+  ExtUtils::MakeMaker: '0'
+  File::Spec: '0'
+  IO::File: '0'
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.86, CPAN::Meta::Converter version 2.133380'
+generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520'
 keywords:
   - XS
   - 'XS extensions'
@@ -19,7 +19,7 @@ keywords:
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: ExtUtils-Depends
 no_index:
   directory:
@@ -28,14 +28,14 @@ no_index:
   package:
     - ExtUtils::MM
 requires:
-  Data::Dumper: 0
-  File::Spec: 0
-  IO::File: 0
-  perl: 5.006
+  Data::Dumper: '0'
+  File::Spec: '0'
+  IO::File: '0'
+  perl: '5.006'
 resources:
   MailingList: https://mail.gnome.org/mailman/listinfo/gtk-perl-list
   bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=ExtUtils-Depends
   homepage: http://gtk2-perl.sourceforge.net
   license: http://dev.perl.org/licenses/
   repository: git://git.gnome.org/perl-ExtUtils-Depends
-version: 0.308
+version: '0.309'
diff --git a/MYMETA.json b/MYMETA.json
index 6c41d06..4c4e42f 100644
--- a/MYMETA.json
+++ b/MYMETA.json
@@ -4,7 +4,7 @@
       "Gtk2-Perl Team <gtk-perl-list at gnome dot org>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "ExtUtils::MakeMaker version 6.86, CPAN::Meta::Converter version 2.133380",
+   "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520",
    "keywords" : [
       "XS",
       "XS extensions",
@@ -73,5 +73,5 @@
       },
       "x_MailingList" : "https://mail.gnome.org/mailman/listinfo/gtk-perl-list"
    },
-   "version" : "0.308"
+   "version" : "0.309"
 }
diff --git a/MYMETA.yml b/MYMETA.yml
index 7d2e945..a89e095 100644
--- a/MYMETA.yml
+++ b/MYMETA.yml
@@ -3,15 +3,15 @@ abstract: unknown
 author:
   - 'Gtk2-Perl Team <gtk-perl-list at gnome dot org>'
 build_requires:
-  ExtUtils::MakeMaker: 0
-  Test::More: 0
+  ExtUtils::MakeMaker: '0'
+  Test::More: '0'
 configure_requires:
-  Data::Dumper: 0
-  ExtUtils::MakeMaker: 0
-  File::Spec: 0
-  IO::File: 0
+  Data::Dumper: '0'
+  ExtUtils::MakeMaker: '0'
+  File::Spec: '0'
+  IO::File: '0'
 dynamic_config: 0
-generated_by: 'ExtUtils::MakeMaker version 6.86, CPAN::Meta::Converter version 2.133380'
+generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520'
 keywords:
   - XS
   - 'XS extensions'
@@ -19,7 +19,7 @@ keywords:
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: ExtUtils-Depends
 no_index:
   directory:
@@ -28,14 +28,14 @@ no_index:
   package:
     - ExtUtils::MM
 requires:
-  Data::Dumper: 0
-  File::Spec: 0
-  IO::File: 0
-  perl: 5.006
+  Data::Dumper: '0'
+  File::Spec: '0'
+  IO::File: '0'
+  perl: '5.006'
 resources:
   MailingList: https://mail.gnome.org/mailman/listinfo/gtk-perl-list
   bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=ExtUtils-Depends
   homepage: http://gtk2-perl.sourceforge.net
   license: http://dev.perl.org/licenses/
   repository: git://git.gnome.org/perl-ExtUtils-Depends
-version: 0.308
+version: '0.309'
diff --git a/lib/ExtUtils/Depends.pm b/lib/ExtUtils/Depends.pm
index a449176..89d3365 100644
--- a/lib/ExtUtils/Depends.pm
+++ b/lib/ExtUtils/Depends.pm
@@ -7,11 +7,12 @@ package ExtUtils::Depends;
 use strict;
 use warnings;
 use Carp;
+use Config;
 use File::Find;
 use File::Spec;
 use Data::Dumper;
 
-our $VERSION = '0.308';
+our $VERSION = '0.309';
 
 sub import {
 	my $class = shift;
@@ -301,7 +302,7 @@ sub build_dll_lib {
 	my ($self, $vars) = @_;
 	$vars->{macro} ||= {};
 	$vars->{macro}{'INST_DYNAMIC_LIB'} =
-		'$(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT)';
+		'$(INST_ARCHAUTODIR)/$(DLBASE)$(LIB_EXT)';
 }
 
 # Search for extra library files to link against on Windows (either native
@@ -313,6 +314,7 @@ sub find_extra_libs {
 	my %mappers = (
 		MSWin32 => sub { $_[0] . '\.(?:lib|a)' },
 		cygwin	=> sub { $_[0] . '\.dll'},
+		android => sub { $_[0] . '\.' . $Config{dlext} },
 	);
 	my $mapper = $mappers{$^O};
 	return () unless defined $mapper;
@@ -320,6 +322,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$/;
 
@@ -334,6 +340,18 @@ sub find_extra_libs {
 
 		if ($matching_file && -f $matching_file) {
 			push @found_libs, ('-L' . $matching_dir, '-l' . $stem);
+			# Android's linker ignores the RTLD_GLOBAL flag
+			# and loads everything as if under RTLD_LOCAL.
+			# What this means in practice is that modules need
+			# to explicitly link to their dependencies,
+			# because otherwise they won't be able to locate any
+			# functions they define.
+			# We use the -l:foo.so flag to indicate that the
+			# actual library name to look for is foo.so, not
+			# libfoo.so
+			if ( $^O eq 'android' ) {
+				$found_libs[-1] = "-l:$stem.$Config{dlext}";
+			}
 			next;
 		}
 	}
@@ -356,7 +374,7 @@ sub static_lib {
 	return <<"__EOM__"
 # This isn't actually a static lib, it just has the same name on Win32.
 \$(INST_DYNAMIC_LIB): \$(INST_DYNAMIC)
-	$DLLTOOL --def \$(EXPORT_LIST) --output-lib \$\@ --dllname \$(BASEEXT).\$(SO) \$(INST_DYNAMIC)
+	$DLLTOOL --def \$(EXPORT_LIST) --output-lib \$\@ --dllname \$(DLBASE).\$(DLEXT) \$(INST_DYNAMIC)
 
 dynamic:: \$(INST_DYNAMIC_LIB)
 __EOM__
diff --git a/t/04_extra_libs.t b/t/04_extra_libs.t
index dbf70f4..a3c48cd 100644
--- a/t/04_extra_libs.t
+++ b/t/04_extra_libs.t
@@ -12,9 +12,10 @@ use ExtUtils::Depends;
 
 my $tmp_inc = temp_inc;
 
-plan (($^O eq 'MSWin32' || $^O eq 'cygwin') ?
+plan (($^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'android') ?
         (tests => 1) :
-        (skip_all => 'test only applicable to MSWin32 and cygwin'));
+        (skip_all
+            => "test only for 'MSWin32', 'cygwin', and 'android'"));
 
 my $dep_info = ExtUtils::Depends->new ('DepTest');
 $dep_info->save_config (catfile $tmp_inc, qw(DepTest Install Files.pm));
@@ -24,6 +25,11 @@ $dep_info->save_config (catfile $tmp_inc, qw(DepTest Install Files.pm));
 my $use_info = ExtUtils::Depends->new ('UseTest', 'DepTest');
 my %vars = $use_info->get_makefile_vars;
 
-like ($vars{LIBS}, qr/DepTest/);
+my $libname = 'DepTest';
+
+require DynaLoader;
+$libname = DynaLoader::mod2fname([$libname]) if defined &DynaLoader::mod2fname;
+
+like ($vars{LIBS}, qr/$libname/);
 
 # --------------------------------------------------------------------------- #
diff --git a/t/inc/DepTest/PL_DepTest.dll b/t/inc/DepTest/PL_DepTest.dll
new file mode 100644
index 0000000..e69de29
diff --git a/t/inc/DepTest/PL_DepTest.lib b/t/inc/DepTest/PL_DepTest.lib
new file mode 100644
index 0000000..e69de29
diff --git a/t/inc/DepTest/PL_DepTest.so b/t/inc/DepTest/PL_DepTest.so
new file mode 100644
index 0000000..e69de29
diff --git a/t/inc/DepTest/PL_libDepTest.dll.a b/t/inc/DepTest/PL_libDepTest.dll.a
new file mode 100644
index 0000000..e69de29

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/libextutils-depends-perl.git



More information about the Reproducible-commits mailing list