Subject: | [PATCH] Kid.pm: add system libpath "/system/lib" on Android |
When cross-compiling for Android, 3 tests of this distribution packaged in perl core fail: postamble.t, prereq.t and writemakefile_args.t.
The reason is that Kid.pm does not look into /system/lib for $Config{perllibs}, so a warning is emitted on stderr and pollutes the result of these 3 tests.
This patch adds "-L/system/lib " at the beginning of $potential_libs, only when on Android.
Subject: | 0001-ExtUtils-MakeMaker-Kid.pm-add-standard-libpath-syste.patch |
From 8b61bf34792ae100623dad98f4b615671a0f2070 Mon Sep 17 00:00:00 2001
From: "Alexandre (Midnite) Jousset" <mid@gtmp.org>
Date: Tue, 19 Aug 2014 23:02:55 +0200
Subject: [PATCH] ExtUtils-MakeMaker: Kid.pm: add standard libpath /system/lib
on Android
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------------1.9.1"
This is a multi-part message in MIME format.
--------------1.9.1
Content-Type: text/plain; charset=UTF-8; format=fixed
Content-Transfer-Encoding: 8bit
Prevent printing of warnings like
"Warning (mostly harmless): No library found for -lc"
that make tests that collect stderr fail.
---
cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm | 2 ++
1 file changed, 2 insertions(+)
--------------1.9.1
Content-Type: text/x-patch; name="0001-ExtUtils-MakeMaker-Kid.pm-add-standard-libpath-syste.patch"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment; filename="0001-ExtUtils-MakeMaker-Kid.pm-add-standard-libpath-syste.patch"
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
index e39c8b2..1fb8e43 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
@@ -32,8 +32,10 @@ sub _unix_os2_ext {
# Dynamic libraries are not transitive, so we may need including
# the libraries linked against perl.dll/libperl.so again.
+ # On Android, add -L/system/lib for standard shared libs location
$potential_libs .= " " if $potential_libs;
+ $potential_libs .= "-L/system/lib " if $^O eq 'android';
$potential_libs .= $Config{perllibs};
}
return ( "", "", "", "", ( $give_libs ? [] : () ) ) unless $potential_libs;
--------------1.9.1--