perl: update to 5.24.0.
Major rewrite of the template. Uses perl-cross now. Closes #4618.
This commit is contained in:
parent
75997a193c
commit
3e6205a06c
18 changed files with 146 additions and 10367 deletions
|
@ -57,7 +57,7 @@ libgcc_s.so.1 libgcc-4.4.0_1
|
|||
libgcj.so.15 libgcj-4.9.0_1
|
||||
libgcj-tools.so.15 libgcj-4.9.0_1
|
||||
libgij.so.15 libgcj-4.9.0_1
|
||||
libperl.so.5.22 perl-5.22.0_1
|
||||
libperl.so.5.24 perl-5.24.0_1
|
||||
libmp.so.3 gmp-5.0.1_1
|
||||
libgmp.so.10 gmp-5.0.1_1
|
||||
libgmpxx.so.4 gmpxx-6.0.0_2
|
||||
|
|
|
@ -1,117 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
: script used to extract .SH files with variable substitutions
|
||||
|
||||
mkdir -p UU
|
||||
cd UU
|
||||
cat >extract <<'EOS'
|
||||
PERL_CONFIG_SH=true
|
||||
echo "Doing variable substitutions on .SH files..."
|
||||
if test -f MANIFEST; then
|
||||
set x `awk '{print $1}' < MANIFEST | grep '\.SH$'`
|
||||
else
|
||||
echo "(Looking for .SH files under the source directory.)"
|
||||
set x `(cd "$src"; find . -name "*.SH" -print)`
|
||||
fi
|
||||
shift
|
||||
case $# in
|
||||
0) set x `(cd "$src"; echo *.SH)`; shift;;
|
||||
esac
|
||||
if test ! -f "$src/$1"; then
|
||||
shift
|
||||
fi
|
||||
mkdir_p='
|
||||
name=$1;
|
||||
create="";
|
||||
while test $name; do
|
||||
if test ! -d "$name"; then
|
||||
create="$name $create";
|
||||
name=`echo $name | sed -e "s|^[^/]*$||"`;
|
||||
name=`echo $name | sed -e "s|\(.*\)/.*|\1|"`;
|
||||
else
|
||||
name="";
|
||||
fi;
|
||||
done;
|
||||
for file in $create; do
|
||||
mkdir $file;
|
||||
done
|
||||
'
|
||||
for file in $*; do
|
||||
case "$src" in
|
||||
".")
|
||||
case "$file" in
|
||||
*/*)
|
||||
dir=`expr X$file : 'X\(.*\)/'`
|
||||
file=`expr X$file : 'X.*/\(.*\)'`
|
||||
(cd "$dir" && . ./$file)
|
||||
;;
|
||||
*)
|
||||
. ./$file
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
case "$file" in
|
||||
*/*)
|
||||
dir=`expr X$file : 'X\(.*\)/'`
|
||||
file=`expr X$file : 'X.*/\(.*\)'`
|
||||
(set x $dir; shift; eval $mkdir_p)
|
||||
sh <"$src/$dir/$file"
|
||||
;;
|
||||
*)
|
||||
sh <"$src/$file"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
done
|
||||
if test -f "$src/config_h.SH"; then
|
||||
if test ! -f config.h; then
|
||||
: oops, they left it out of MANIFEST, probably, so do it anyway.
|
||||
. "$src/config_h.SH"
|
||||
fi
|
||||
fi
|
||||
EOS
|
||||
|
||||
cd ..
|
||||
|
||||
# For now
|
||||
make=make
|
||||
|
||||
echo "Run a copy of the end of Configure"
|
||||
|
||||
: if this fails, just run all the .SH files by hand
|
||||
. ./config.sh
|
||||
|
||||
echo " "
|
||||
|
||||
pwd=`pwd`
|
||||
. ./UU/extract
|
||||
cd "$pwd"
|
||||
|
||||
|
||||
echo "Run $make depend unconditionally"
|
||||
$make depend && echo "Now you must run '$make'."
|
||||
|
||||
if $test -f Policy.sh; then
|
||||
$cat <<EOM
|
||||
|
||||
If you compile $package on a different machine or from a different object
|
||||
directory, copy the Policy.sh file from this object directory to the
|
||||
new one before you run Configure -- this will help you with most of
|
||||
the policy defaults.
|
||||
|
||||
EOM
|
||||
fi
|
||||
if $test -f config.msg; then
|
||||
echo "Hmm. I also noted the following information while running:"
|
||||
echo " "
|
||||
$cat config.msg >&4
|
||||
$rm -f config.msg
|
||||
fi
|
||||
$rm -f kit*isdone ark*isdone
|
||||
$rm -rf UU
|
||||
|
||||
: End of Configure
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4,
|
||||
1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
|
||||
1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
|
||||
1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
|
||||
2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
|
||||
3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
|
||||
3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
|
||||
4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8
|
||||
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,297 +0,0 @@
|
|||
{
|
||||
/* sv '\0' Special scalar variable */
|
||||
want_vtbl_sv | PERL_MAGIC_READONLY_ACCEPTABLE,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* arylen '#' Array length ($#ary) */
|
||||
want_vtbl_arylen | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
/* rhash '%' extra data for restricted hashes */
|
||||
magic_vtable_max | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* proto '&' my sub prototype CV */
|
||||
magic_vtable_max,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* pos '.' pos() lvalue */
|
||||
want_vtbl_pos | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* symtab ':' extra data for symbol tables */
|
||||
magic_vtable_max | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
/* backref '<' for weak ref data */
|
||||
want_vtbl_backref | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* arylen_p '@' to move arylen out of XPVAV */
|
||||
magic_vtable_max | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
/* bm 'B' Boyer-Moore (fast string search) */
|
||||
want_vtbl_regexp | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
/* regdata 'D' Regex match position data (@+ and @- vars) */
|
||||
want_vtbl_regdata,
|
||||
/* env 'E' %ENV hash */
|
||||
want_vtbl_env,
|
||||
0,
|
||||
0,
|
||||
/* hints 'H' %^H hash */
|
||||
want_vtbl_hints,
|
||||
/* isa 'I' @ISA array */
|
||||
want_vtbl_isa,
|
||||
0,
|
||||
0,
|
||||
/* dbfile 'L' Debugger %_<filename */
|
||||
magic_vtable_max,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* tied 'P' Tied array or hash */
|
||||
want_vtbl_pack | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
/* sig 'S' %SIG hash */
|
||||
magic_vtable_max,
|
||||
0,
|
||||
/* uvar 'U' Available for use by extensions */
|
||||
want_vtbl_uvar,
|
||||
/* vstring 'V' SV was vstring literal */
|
||||
magic_vtable_max | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* checkcall ']' inlining/mutation of call to this CV */
|
||||
want_vtbl_checkcall | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* overload_table 'c' Holds overload table (AMT) on stash */
|
||||
want_vtbl_ovrld,
|
||||
/* regdatum 'd' Regex match position data element */
|
||||
want_vtbl_regdatum,
|
||||
/* envelem 'e' %ENV hash element */
|
||||
want_vtbl_envelem,
|
||||
/* fm 'f' Formline ('compiled' format) */
|
||||
want_vtbl_regexp | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* regex_global 'g' m//g target */
|
||||
want_vtbl_mglob | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* hintselem 'h' %^H hash element */
|
||||
want_vtbl_hintselem,
|
||||
/* isaelem 'i' @ISA array element */
|
||||
want_vtbl_isaelem,
|
||||
0,
|
||||
/* nkeys 'k' scalar(keys()) lvalue */
|
||||
want_vtbl_nkeys | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* dbline 'l' Debugger %_<filename element */
|
||||
want_vtbl_dbline,
|
||||
0,
|
||||
0,
|
||||
/* collxfrm 'o' Locale transformation */
|
||||
want_vtbl_collxfrm | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* tiedelem 'p' Tied array or hash element */
|
||||
want_vtbl_packelem,
|
||||
/* tiedscalar 'q' Tied scalar or handle */
|
||||
want_vtbl_packelem,
|
||||
/* qr 'r' precompiled qr// regex */
|
||||
want_vtbl_regexp | PERL_MAGIC_READONLY_ACCEPTABLE | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* sigelem 's' %SIG hash element */
|
||||
want_vtbl_sigelem,
|
||||
/* taint 't' Taintedness */
|
||||
want_vtbl_taint | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
/* vec 'v' vec() lvalue */
|
||||
want_vtbl_vec | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* utf8 'w' Cached UTF-8 information */
|
||||
want_vtbl_utf8 | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* substr 'x' substr() lvalue */
|
||||
want_vtbl_substr | PERL_MAGIC_VALUE_MAGIC,
|
||||
/* defelem 'y' Shadow "foreach" iterator variable / smart parameter vivification */
|
||||
want_vtbl_defelem | PERL_MAGIC_VALUE_MAGIC,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
/* ext '~' Available for use by extensions */
|
||||
magic_vtable_max,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
|
||||
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
|
||||
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
|
||||
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
}
|
38
srcpkgs/perl/patches/cpan_definstalldirs.diff
Normal file
38
srcpkgs/perl/patches/cpan_definstalldirs.diff
Normal file
|
@ -0,0 +1,38 @@
|
|||
From 91c395844c280f07b4eeb4aa20f1b2abd9fe1126 Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Veller <tove@gentoo.org>
|
||||
Date: Sat, 14 Apr 2012 13:34:20 +0200
|
||||
Subject: Provide a sensible INSTALLDIRS default for modules installed from
|
||||
CPAN.
|
||||
|
||||
Some modules which are included in core set INSTALLDIRS => 'perl'
|
||||
explicitly in Makefile.PL or Build.PL. This makes sense for the normal @INC
|
||||
ordering, but not ours.
|
||||
Taken from Debian.
|
||||
|
||||
Patch-Name: gentoo/cpan_definstalldirs.diff
|
||||
---
|
||||
cpan/CPAN/lib/CPAN/FirstTime.pm | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/cpan/CPAN/lib/CPAN/FirstTime.pm b/cpan/CPAN/lib/CPAN/FirstTime.pm
|
||||
index 5030ef9..5953cb7 100644
|
||||
--- cpan/CPAN/lib/CPAN/FirstTime.pm
|
||||
+++ cpan/CPAN/lib/CPAN/FirstTime.pm
|
||||
@@ -990,7 +990,7 @@ sub init {
|
||||
my_prompt_loop(prefer_installer => 'MB', $matcher, 'MB|EUMM|RAND');
|
||||
|
||||
if (!$matcher or 'makepl_arg make_arg' =~ /$matcher/) {
|
||||
- my_dflt_prompt(makepl_arg => "", $matcher);
|
||||
+ my_dflt_prompt(makepl_arg => "INSTALLDIRS=site", $matcher);
|
||||
my_dflt_prompt(make_arg => "", $matcher);
|
||||
if ( $CPAN::Config->{makepl_arg} =~ /LIBS=|INC=/ ) {
|
||||
$CPAN::Frontend->mywarn(
|
||||
@@ -1022,7 +1022,7 @@ sub init {
|
||||
my_dflt_prompt(make_install_arg => $CPAN::Config->{make_arg} || "",
|
||||
$matcher);
|
||||
|
||||
- my_dflt_prompt(mbuildpl_arg => "", $matcher);
|
||||
+ my_dflt_prompt(mbuildpl_arg => "--installdirs site", $matcher);
|
||||
my_dflt_prompt(mbuild_arg => "", $matcher);
|
||||
|
||||
if (exists $CPAN::HandleConfig::keys{mbuild_install_build_command}
|
|
@ -1,58 +0,0 @@
|
|||
From eb67d0bdd774241d93c7aad72fa894da725020aa Mon Sep 17 00:00:00 2001
|
||||
From: Vladimir Smirnov <civil@gentoo.org>
|
||||
Date: Mon, 19 May 2014 19:41:49 +0400
|
||||
Subject: [PATCH] Set libperl soname
|
||||
|
||||
Bug-Gentoo: https://bugs.gentoo.org/286840
|
||||
|
||||
Patch-Name: gentoo/create_libperl_soname.diff
|
||||
|
||||
Ported to Perl 5.20
|
||||
---
|
||||
Makefile.SH | 11 ++++++++---
|
||||
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/Makefile.SH b/Makefile.SH
|
||||
index b65a7f3..a8b838f 100755
|
||||
--- Makefile.SH
|
||||
+++ Makefile.SH
|
||||
@@ -59,7 +59,7 @@ true)
|
||||
${api_revision}.${api_version}.${api_subversion} \
|
||||
-current_version \
|
||||
${revision}.${patchlevel}.${subversion} \
|
||||
- -install_name \$(shrpdir)/\$@"
|
||||
+ -install_name \$(shrpdir)/libperl.${revision}.${patchlevel}.dylib"
|
||||
;;
|
||||
cygwin*)
|
||||
shrpldflags="$shrpldflags -Wl,--out-implib=libperl.dll.a -Wl,--image-base,0x52000000"
|
||||
@@ -67,13 +67,15 @@ true)
|
||||
;;
|
||||
sunos*)
|
||||
linklibperl="-lperl"
|
||||
+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
|
||||
;;
|
||||
- netbsd*|freebsd[234]*|openbsd*|dragonfly*|bitrig*)
|
||||
+ netbsd*|freebsd*|openbsd*|dragonfly*|bitrig*)
|
||||
linklibperl="-L. -lperl"
|
||||
+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
|
||||
;;
|
||||
interix*)
|
||||
linklibperl="-L. -lperl"
|
||||
- shrpldflags="$shrpldflags -Wl,--image-base,0x57000000"
|
||||
+ shrpldflags="$shrpldflags -Wl,--image-base,0x57000000 -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
|
||||
;;
|
||||
aix*)
|
||||
case "$cc" in
|
||||
@@ -111,6 +113,9 @@ true)
|
||||
linklibperl='libperl.x'
|
||||
DPERL_EXTERNAL_GLOB=''
|
||||
;;
|
||||
+ linux*)
|
||||
+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
|
||||
+ ;;
|
||||
esac
|
||||
case "$ldlibpthname" in
|
||||
'') ;;
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -8,27 +8,28 @@ Bug-Gentoo: https://bugs.gentoo.org/348557
|
|||
Patch-Name: gentoo/drop_fstack_protector.diff
|
||||
|
||||
Original by Torsten Veller, ported to perl 5.20
|
||||
---
|
||||
Configure | 24 ------------------------
|
||||
1 file changed, 24 deletions(-)
|
||||
|
||||
diff --git a/Configure b/Configure
|
||||
index 293ef61..b221390 100755
|
||||
--- Configure
|
||||
+++ Configure
|
||||
@@ -5423,19 +5423,6 @@
|
||||
|
||||
diff -ruN perl-5.24.0-RC5.orig/Configure perl-5.24.0-RC5/Configure
|
||||
--- Configure 2016-04-27 00:11:09.000000000 +0200
|
||||
+++ Configure 2016-05-05 21:32:53.575232970 +0200
|
||||
@@ -5474,23 +5474,6 @@
|
||||
# is to add the flag to the flags passed to the compiler at link time,
|
||||
# as that way the compiler can do the right implementation dependant
|
||||
# thing. (NWC)
|
||||
- case "$gccversion" in
|
||||
- ?*) set stack-protector-strong -fstack-protector-strong
|
||||
- eval $checkccflag
|
||||
- case "$dflt" in
|
||||
- *-fstack-protector-strong*) ;; # It got added.
|
||||
- *) # Try the plain/older -fstack-protector.
|
||||
- set stack-protector -fstack-protector
|
||||
- eval $checkccflag
|
||||
- ;;
|
||||
- case "$osname" in
|
||||
- amigaos) ;; # -fstack-protector builds but doesn't work
|
||||
- *) case "$gccversion" in
|
||||
- ?*) set stack-protector-strong -fstack-protector-strong
|
||||
- eval $checkccflag
|
||||
- case "$dflt" in
|
||||
- *-fstack-protector-strong*) ;; # It got added.
|
||||
- *) # Try the plain/older -fstack-protector.
|
||||
- set stack-protector -fstack-protector
|
||||
- eval $checkccflag
|
||||
- ;;
|
||||
- esac
|
||||
- ;;
|
||||
- esac
|
||||
- ;;
|
||||
- esac
|
||||
|
@ -36,7 +37,7 @@ index 293ef61..b221390 100755
|
|||
esac
|
||||
|
||||
case "$mips_type" in
|
||||
@@ -5573,21 +5560,6 @@
|
||||
@@ -5633,21 +5616,6 @@
|
||||
;;
|
||||
*) dflt="$ldflags";;
|
||||
esac
|
||||
|
@ -58,7 +59,7 @@ index 293ef61..b221390 100755
|
|||
|
||||
: Try to guess additional flags to pick up local libraries.
|
||||
for thislibdir in $libpth; do
|
||||
@@ -8473,21 +8445,6 @@
|
||||
@@ -8570,21 +8538,6 @@
|
||||
''|' ') dflt='none' ;;
|
||||
esac
|
||||
|
||||
|
|
|
@ -59,17 +59,6 @@ index 63b8848..d0a3c28 100755
|
|||
$test -f $ranlib || ranlib=''
|
||||
;;
|
||||
esac
|
||||
@@ -23566,8 +23564,8 @@ lkflags='$lkflags'
|
||||
ln='$ln'
|
||||
lns='$lns'
|
||||
localtime_r_proto='$localtime_r_proto'
|
||||
-locincpth='$locincpth'
|
||||
-loclibpth='$loclibpth'
|
||||
+locincpth=''
|
||||
+loclibpth=''
|
||||
longdblkind='$longdblkind'
|
||||
longdblsize='$longdblsize'
|
||||
longlongsize='$longlongsize'
|
||||
--
|
||||
1.9.3
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
# Template build file for 'perl'.
|
||||
pkgname=perl
|
||||
version=5.22.2
|
||||
revision=2
|
||||
version=5.24.0
|
||||
revision=1
|
||||
_perl_cross_version=1.0.3
|
||||
build_style=gnu-configure
|
||||
hostmakedepends="less"
|
||||
makedepends="zlib-devel bzip2-devel gdbm-devel db-devel"
|
||||
depends="less"
|
||||
|
@ -9,141 +11,139 @@ short_desc="Practical Extraction and Report Language"
|
|||
maintainer="Juan RP <xtraeme@voidlinux.eu>"
|
||||
homepage="http://www.perl.org"
|
||||
license="Artistic, GPL-1"
|
||||
distfiles="http://www.cpan.org/src/5.0/perl-${version}.tar.gz"
|
||||
checksum=81ad196385aa168cb8bd785031850e808c583ed18a7901d33e02d4f70ada83c2
|
||||
distfiles="http://www.cpan.org/src/5.0/perl-${version}.tar.gz
|
||||
https://github.com/arsv/perl-cross/releases/download/${_perl_cross_version}/perl-${version}-cross-${_perl_cross_version}.tar.gz"
|
||||
checksum="7e430c6e0e0d9017c3f72898850dea657fa6b51909220a7bcf305a87f2475202
|
||||
cac4616274edaef81f48d8880d4224e05b81d0033ebad45d42a3a18664c3409c"
|
||||
|
||||
# Before updating this package to a new major version, run ${FILESDIR}/provides.pl
|
||||
# against ${wrksrc} to find the list of built in packages.
|
||||
|
||||
provides="perl-Archive-Tar-2.04_1
|
||||
perl-Attribute-Handlers-0.97_1
|
||||
perl-Attribute-Handlers-0.99_1
|
||||
perl-AutoLoader-5.74_1
|
||||
perl-B-Debug-1.23_1
|
||||
perl-CPAN-2.11_1
|
||||
perl-CPAN-Meta-2.150001_1
|
||||
perl-CPAN-Meta-Requirements-2.132_1
|
||||
perl-CPAN-Meta-YAML-0.012_1
|
||||
perl-Carp-1.36_1
|
||||
perl-Compress-Raw-Bzip2-2.068_1
|
||||
perl-Compress-Raw-Zlib-2.068_1
|
||||
perl-Config-Perl-V-0.24_1
|
||||
perl-CPAN-Meta-2.150005_1
|
||||
perl-CPAN-Meta-Requirements-2.140_1
|
||||
perl-CPAN-Meta-YAML-0.018_1
|
||||
perl-Carp-1.40_1
|
||||
perl-Compress-Raw-Bzip2-2.069_1
|
||||
perl-Compress-Raw-Zlib-2.069_1
|
||||
perl-Config-Perl-V-0.25_1
|
||||
perl-DB_File-1.835_1
|
||||
perl-Data-Dumper-2.158_1
|
||||
perl-Devel-PPPort-3.31_1
|
||||
perl-Data-Dumper-2.160_1
|
||||
perl-Devel-PPPort-3.32_1
|
||||
perl-Devel-SelfStubber-1.05_1
|
||||
perl-Digest-1.17_1
|
||||
perl-Digest-MD5-2.54_1
|
||||
perl-Digest-SHA-5.95_1
|
||||
perl-Dumpvalue-1.17_1
|
||||
perl-Encode-2.72_1
|
||||
perl-Dumpvalue-1.18_1
|
||||
perl-Encode-2.80_1
|
||||
perl-Env-1.04_1
|
||||
perl-Exporter-5.72_1
|
||||
perl-ExtUtils-CBuilder-0.280221_1
|
||||
perl-ExtUtils-Command-1.20_1
|
||||
perl-ExtUtils-CBuilder-0.280225_1
|
||||
perl-ExtUtils-Constant-0.23_1
|
||||
perl-ExtUtils-Install-2.04_1
|
||||
perl-ExtUtils-MakeMaker-7.04_01_1
|
||||
perl-ExtUtils-MakeMaker-7.10_01_1
|
||||
perl-ExtUtils-Manifest-1.70_1
|
||||
perl-ExtUtils-ParseXS-3.28_1
|
||||
perl-ExtUtils-ParseXS-3.31_1
|
||||
perl-File-Fetch-0.48_1
|
||||
perl-File-Path-2.09_1
|
||||
perl-File-Path-2.12_01_1
|
||||
perl-File-Temp-0.2304_1
|
||||
perl-Filter-Simple-0.92_1
|
||||
perl-Filter-Util-Call-1.54_1
|
||||
perl-Getopt-Long-2.45_1
|
||||
perl-HTTP-Tiny-0.054_1
|
||||
perl-Filter-Util-Call-1.55_1
|
||||
perl-Getopt-Long-2.48_1
|
||||
perl-HTTP-Tiny-0.056_1
|
||||
perl-I18N-Collate-1.02_1
|
||||
perl-I18N-LangTags-0.40_1
|
||||
perl-IO-1.35_1
|
||||
perl-IO-Compress-2.068_1
|
||||
perl-IO-1.36_1
|
||||
perl-IO-Compress-2.069_1
|
||||
perl-IO-Socket-IP-0.37_1
|
||||
perl-IO-Zlib-1.10_1
|
||||
perl-IPC-Cmd-0.92_1
|
||||
perl-IPC-SysV-2.04_1
|
||||
perl-IPC-SysV-2.06_01_1
|
||||
perl-JSON-PP-2.27300_1
|
||||
perl-Locale-Codes-3.34_1
|
||||
perl-Locale-Codes-3.37_1
|
||||
perl-Locale-Maketext-1.26_1
|
||||
perl-Locale-Maketext-Simple-0.21_1
|
||||
perl-MIME-Base64-3.15_1
|
||||
perl-Math-BigInt-1.9997_1
|
||||
perl-Math-BigInt-FastCalc-0.31_1
|
||||
perl-Math-BigRat-0.2608_1
|
||||
perl-Math-BigInt-1.999715_1
|
||||
perl-Math-BigInt-FastCalc-0.40_1
|
||||
perl-Math-BigRat-0.260802_1
|
||||
perl-Math-Complex-1.59_1
|
||||
perl-Memoize-1.03_1
|
||||
perl-Module-CoreList-5.20160429_1
|
||||
perl-Module-CoreList-5.20160506_1
|
||||
perl-Module-Load-0.32_1
|
||||
perl-Module-Load-Conditional-0.64_1
|
||||
perl-Module-Loaded-0.08_1
|
||||
perl-Module-Metadata-1.000026_1
|
||||
perl-Module-Metadata-1.000031_1
|
||||
perl-NEXT-0.65_1
|
||||
perl-Net-Ping-2.43_1
|
||||
perl-Params-Check-0.38_1
|
||||
perl-Parse-CPAN-Meta-1.4414_1
|
||||
perl-PathTools-3.56_01_1
|
||||
perl-Perl-OSType-1.008_1
|
||||
perl-Parse-CPAN-Meta-1.4417_1
|
||||
perl-PathTools-3.63_1
|
||||
perl-Perl-OSType-1.009_1
|
||||
perl-PerlIO-via-QuotedPrint-0.08_1
|
||||
perl-Pod-Checker-1.60_1
|
||||
perl-Pod-Escapes-1.07_1
|
||||
perl-Pod-Parser-1.63_1
|
||||
perl-Pod-Perldoc-3.25_1
|
||||
perl-Pod-Simple-3.29_1
|
||||
perl-Pod-Usage-1.64_1
|
||||
perl-Pod-Perldoc-3.25_02_1
|
||||
perl-Pod-Simple-3.32_1
|
||||
perl-Pod-Usage-1.68_1
|
||||
perl-Safe-2.39_1
|
||||
perl-Scalar-List-Utils-1.41_1
|
||||
perl-Scalar-List-Utils-1.42_02_1
|
||||
perl-Search-Dict-1.07_1
|
||||
perl-SelfLoader-1.22_1
|
||||
perl-Socket-2.018_1
|
||||
perl-Storable-2.53_01_1
|
||||
perl-SelfLoader-1.23_1
|
||||
perl-Socket-2.020_03_1
|
||||
perl-Storable-2.56_1
|
||||
perl-Sys-Syslog-0.33_1
|
||||
perl-Term-ANSIColor-4.03_1
|
||||
perl-Term-Cap-1.15_1
|
||||
perl-Term-ANSIColor-4.04_1
|
||||
perl-Term-Cap-1.17_1
|
||||
perl-Term-Complete-1.403_1
|
||||
perl-Term-ReadLine-1.15_1
|
||||
perl-Test-1.26_1
|
||||
perl-Test-Harness-3.35_1
|
||||
perl-Test-1.28_1
|
||||
perl-Test-Harness-3.36_1
|
||||
perl-Test-Simple-1.001014_1
|
||||
perl-Text-Abbrev-1.02_1
|
||||
perl-Text-Balanced-2.03_1
|
||||
perl-Text-ParseWords-3.30_1
|
||||
perl-Text-Tabs-2013.0523_1
|
||||
perl-Thread-Queue-3.05_1
|
||||
perl-Thread-Queue-3.09_1
|
||||
perl-Thread-Semaphore-2.12_1
|
||||
perl-Tie-File-1.01_1
|
||||
perl-Tie-File-1.02_1
|
||||
perl-Tie-RefHash-1.39_1
|
||||
perl-Time-HiRes-1.9726_1
|
||||
perl-Time-HiRes-1.9733_1
|
||||
perl-Time-Local-1.2300_1
|
||||
perl-Time-Piece-1.29_1
|
||||
perl-Unicode-Collate-1.12_1
|
||||
perl-Unicode-Normalize-1.18_1
|
||||
perl-Time-Piece-1.31_1
|
||||
perl-Unicode-Collate-1.14_1
|
||||
perl-Unicode-Normalize-1.25_1
|
||||
perl-Win32-0.52_1
|
||||
perl-Win32API-File-0.1202_1
|
||||
perl-XSLoader-0.20_1
|
||||
perl-autodie-2.26_1
|
||||
perl-autouse-1.08_1
|
||||
perl-base-2.22_1
|
||||
perl-bignum-0.39_1
|
||||
perl-Win32API-File-0.1203_1
|
||||
perl-XSLoader-0.21_1
|
||||
perl-autodie-2.29_1
|
||||
perl-autouse-1.11_1
|
||||
perl-base-2.23_1
|
||||
perl-bignum-0.42_1
|
||||
perl-constant-1.33_1
|
||||
perl-encoding-warnings-0.11_1
|
||||
perl-experimental-0.013_1
|
||||
perl-if-0.0604_1
|
||||
perl-encoding-warnings-0.12_1
|
||||
perl-experimental-0.016_1
|
||||
perl-if-0.0606_1
|
||||
perl-lib-0.63_1
|
||||
perl-libnet-3.05_1
|
||||
perl-parent-0.232_1
|
||||
perl-perlfaq-5.021009_1
|
||||
perl-podlators-2.5.3_1
|
||||
perl-threads-2.01_1
|
||||
perl-threads-shared-1.48_1
|
||||
perl-version-0.9909_1"
|
||||
perl-libnet-3.08_1
|
||||
perl-parent-0.234_1
|
||||
perl-perlfaq-5.021010_1
|
||||
perl-podlators-5.006_1
|
||||
perl-threads-2.07_1
|
||||
perl-threads-shared-1.51_1
|
||||
perl-version-0.9916_1"
|
||||
|
||||
for f in ${provides}; do
|
||||
replaces+=" $($XBPS_UHELPER_CMD getpkgname ${f})>=0"
|
||||
done
|
||||
|
||||
# Before updating this package to a new major version, run ${FILESDIR}/provides.pl
|
||||
# against ${wrksrc} to find the list of built in packages.
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
hostmakedepends+=" perl"
|
||||
fi
|
||||
|
||||
do_configure() {
|
||||
local _args="-Dusethreads -Duseshrplib
|
||||
local _args="-Dusethreads -Duseshrplib -Dusesoname
|
||||
-Dprefix=/usr -Dvendorprefix=/usr
|
||||
-Dprivlib=/usr/share/perl5/core_perl
|
||||
-Darchlib=/usr/lib/perl5/core_perl
|
||||
|
@ -156,91 +156,25 @@ do_configure() {
|
|||
-Dman1dir=/usr/share/man/man1
|
||||
-Dman3dir=/usr/share/man/man3"
|
||||
|
||||
ln -sf libperl.so.${version%.*} libperl.so
|
||||
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
cp -f ${FILESDIR}/cross/*.h .
|
||||
cp -f ${FILESDIR}/cross/config.sh-${XBPS_TARGET_MACHINE} config.sh
|
||||
cp -f ${FILESDIR}/Configure.cross .
|
||||
|
||||
# substitute some required strings in generated config.sh
|
||||
sed -e "s,@@XBPS_CROSS_ARCH@@,${XBPS_TARGET_MACHINE},g" \
|
||||
-e "s,@@XBPS_CROSS_TRIPLET@@,${XBPS_CROSS_TRIPLET},g" \
|
||||
-e "s|@@XBPS_CROSS_CFLAGS@@|${CFLAGS}|g" \
|
||||
-e "s|@@XBPS_CROSS_LDFLAGS@@|${LDFLAGS}|g" \
|
||||
-e "s,@@PERL_VERSION@@,${version},g" \
|
||||
-e "s,@@PERL_SUBVERSION@@,${version##*.},g" \
|
||||
-e "s,@@PERL_SONAME@@,${version%.*},g" \
|
||||
-i config.sh
|
||||
|
||||
sh ./Configure.cross
|
||||
perl -Ilib make_patchnum.pl
|
||||
else
|
||||
./Configure -des ${_args} -Dlibperl="libperl.so.${version%.*}" \
|
||||
-Dcccdlflags="-fPIC" \
|
||||
-Doptimize="${CFLAGS}" -Dccflags="${CFLAGS}" \
|
||||
-Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}"
|
||||
_args+=" --target=$XBPS_CROSS_TRIPLET"
|
||||
fi
|
||||
|
||||
export LD="$CC"
|
||||
./configure --prefix=/usr $_args \
|
||||
-Dcccdlflags="-fPIC" \
|
||||
-Doptimize="${CFLAGS}" -Dccflags="${CFLAGS}" \
|
||||
-Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" \
|
||||
-Dperl_static_inline='static __inline__' -Dd_static_inline
|
||||
}
|
||||
|
||||
do_build() {
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
export HOST_PERL=/usr/bin/perl
|
||||
export PERL_TO_USE=$HOST_PERL
|
||||
export HOST_PERL_LIBS=/usr/lib/perl5/core_perl
|
||||
export LIB=$XBPS_CROSS_BASE/usr/lib
|
||||
export INCLUDE=$XBPS_CROSS_BASE/usr/include
|
||||
|
||||
make SHRPLDFLAGS="-shared -Wl,-soname,libperl.so.${version%.*}" \
|
||||
CROSS_PERL=$HOST_PERL libperl.so.${version%.*} ${makejobs}
|
||||
|
||||
cp -fr $HOST_PERL_LIBS/auto/* lib/auto/
|
||||
mkdir -p lib/$XBPS_CROSS_TRIPLET
|
||||
make extensions CROSS_PERL=$HOST_PERL \
|
||||
INST_ARCHLIB=$wrksrc/lib/$XBPS_CROSS_TRIPLET \
|
||||
${makejobs}
|
||||
else
|
||||
make ${makejobs}
|
||||
fi
|
||||
}
|
||||
|
||||
do_install() {
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
export HOST_PERL=/usr/bin/perl
|
||||
export PERL_TO_USE=$HOST_PERL
|
||||
export HOST_PERL_LIBS=/usr/lib/perl5/core_perl
|
||||
export LIB=$XBPS_CROSS_BASE/usr/lib
|
||||
export INCLUDE=$XBPS_CROSS_BASE/usr/include
|
||||
|
||||
cp -fr $HOST_PERL_LIBS/auto/* lib/auto/
|
||||
make CROSS_PERL=$HOST_PERL LDLIBPTH= DESTDIR=$DESTDIR install
|
||||
find lib/auto -name .exists -o -name '*.bs' | xargs rm -f
|
||||
vmkdir usr/lib/perl5/core_perl/auto
|
||||
cp -fr lib/$XBPS_CROSS_TRIPLET/auto/* \
|
||||
${DESTDIR}/usr/lib/perl5/core_perl/auto/
|
||||
find ${DESTDIR} -name .exists |xargs rm -f
|
||||
rm -rf ${DESTDIR}/usr/share/perl5/core_perl/$XBPS_CROSS_TRIPLET
|
||||
|
||||
# Remove references to cross toolchain.
|
||||
sed -i "s/$XBPS_CROSS_TRIPLET-//g" \
|
||||
${DESTDIR}/usr/lib/perl5/core_perl/Config_heavy.pl \
|
||||
${DESTDIR}/usr/lib/perl5/core_perl/Config.pm
|
||||
else
|
||||
make DESTDIR=${DESTDIR} install
|
||||
fi
|
||||
|
||||
post_install() {
|
||||
find ${DESTDIR}/usr/share -type f -exec chmod 644 {} \;
|
||||
find ${DESTDIR}/usr/lib -type f -exec chmod 644 {} \;
|
||||
|
||||
# Make a link from perl${version} to perl.
|
||||
# Make a symbolic link from perl${version} to perl.
|
||||
ln -sf perl${version} ${DESTDIR}/usr/bin/perl
|
||||
|
||||
### CPAN Settings ###
|
||||
# Set CPAN default config to use the site directories.
|
||||
sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \
|
||||
-e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
|
||||
-i ${DESTDIR}/usr/share/perl5/core_perl/CPAN/FirstTime.pm
|
||||
|
||||
# Remove all pod files *except* those under
|
||||
# /usr/share/perl5/core_perl/pod/ (FS#16488)
|
||||
rm -f ${DESTDIR}/usr/share/perl5/core_perl/*.pod
|
||||
|
@ -252,21 +186,7 @@ do_install() {
|
|||
find ${DESTDIR}/usr/lib -name *.pod -delete
|
||||
find ${DESTDIR} -name .packlist -delete
|
||||
|
||||
# Make a symlink so that libperl.so is accesible.
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
mv ${DESTDIR}/usr/lib/perl5/core_perl/CORE/libperl.so \
|
||||
${DESTDIR}/usr/lib/perl5/core_perl/CORE/libperl.so.${version%.*}
|
||||
else
|
||||
rm -f ${DESTDIR}/usr/lib/perl5/core_perl/CORE/libperl.so
|
||||
fi
|
||||
rm -f ${DESTDIR}/usr/lib/perl5/core_perl/CORE/libperl.so
|
||||
ln -sfr ${DESTDIR}/usr/lib/perl5/core_perl/CORE/libperl.so.${version%.*} \
|
||||
${DESTDIR}/usr/lib/libperl.so.${version%.*}
|
||||
ln -s libperl.so.${version%.*} ${DESTDIR}/usr/lib/libperl.so
|
||||
}
|
||||
|
||||
post_install() {
|
||||
# Remove references to hardening -specs.
|
||||
sed -e "s|\(-specs=.*hardened-ld\)||g" -e "s|\(-specs=.*hardened-cc1\)||g" \
|
||||
sed -e "s|-specs=.*hardened-ld||g" -e "s|-specs=.*hardened-cc1||g" \
|
||||
-i ${DESTDIR}/usr/lib/perl5/core_perl/Config_heavy.pl
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue