summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2018-08-22 08:37:46 +0000
committerwiz <wiz@pkgsrc.org>2018-08-22 08:37:46 +0000
commitefe154c38a6348432c88fa1e881db01d97e42fe1 (patch)
tree494bfae7a64e021dd82287ac5cea2be4e542bd6a
parent19cd45275b44839bbeeea2e608405d050ed49065 (diff)
downloadpkgsrc-efe154c38a6348432c88fa1e881db01d97e42fe1.tar.gz
perl: update to 5.28.0.
Removed some ancient patches. Fix a pkglint warning. Core Enhancements Unicode 10.0 is supported delete on key/value hash slices Experimentally, there are now alphabetic synonyms for some regular expression assertions Mixed Unicode scripts are now detectable In-place editing with perl -i is now safer Initialisation of aggregate state variables Full-size inode numbers The sprintf %j format size modifier is now available with pre-C99 compilers Close-on-exec flag set atomically String- and number-specific bitwise ops are no longer experimental Locales are now thread-safe on systems that support them New read-only predefined variable ${^SAFE_LOCALES} Security [CVE-2017-12837] Heap buffer overflow in regular expression compiler [CVE-2017-12883] Buffer over-read in regular expression parser [CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows Default Hash Function Change Incompatible Changes Subroutine attribute and signature order Comma-less variable lists in formats are no longer allowed The :locked and :unique attributes have been removed \N{} with nothing between the braces is now illegal Opening the same symbol as both a file and directory handle is no longer allowed Use of bare << to mean <<"" is no longer allowed Setting $/ to a reference to a non-positive integer no longer allowed Unicode code points with values exceeding IV_MAX are now fatal The B::OP::terse method has been removed Use of inherited AUTOLOAD for non-methods is no longer allowed Use of strings with code points over 0xFF is not allowed for bitwise string operators Setting ${^ENCODING} to a defined value is now illegal Backslash no longer escapes colon in PATH for the -S switch the -DH (DEBUG_H) misfeature has been removed Yada-yada is now strictly a statement Sort algorithm can no longer be specified Over-radix digits in floating point literals Return type of unpackstring() Deprecations Use of vec on strings with code points above 0xFF is deprecated Some uses of unescaped "{" in regexes are no longer fatal Use of unescaped "{" immediately after a "(" in regular expression patterns is deprecated Assignment to $[ will be fatal in Perl 5.30 hostname() won't accept arguments in Perl 5.32 Module removals Performance Enhancements Modules and Pragmata Removal of use vars Use of DynaLoader changed to XSLoader in many modules Updated Modules and Pragmata Removed Modules and Pragmata More details are in the included perldelta.pod.
-rw-r--r--lang/perl5/Makefile4
-rw-r--r--lang/perl5/Makefile.common4
-rw-r--r--lang/perl5/distinfo25
-rw-r--r--lang/perl5/patches/patch-Configure48
-rw-r--r--lang/perl5/patches/patch-MANIFEST16
-rw-r--r--lang/perl5/patches/patch-aq34
-rw-r--r--lang/perl5/patches/patch-cflags.SH8
-rw-r--r--lang/perl5/patches/patch-ch13
-rw-r--r--lang/perl5/patches/patch-ck26
-rw-r--r--lang/perl5/patches/patch-cn22
-rw-r--r--lang/perl5/patches/patch-cpan_File-Path_lib_File_Path.pm64
-rw-r--r--lang/perl5/patches/patch-ext_Errno_Errno__pm.PL14
-rw-r--r--lang/perl5/patches/patch-ext_File-Glob_bsd_glob.c89
-rw-r--r--lang/perl5/patches/patch-ext_File-Glob_t_rt131211.t103
-rw-r--r--lang/perl5/patches/patch-hints_sco.sh77
-rw-r--r--lang/perl5/patches/patch-ze28
16 files changed, 39 insertions, 536 deletions
diff --git a/lang/perl5/Makefile b/lang/perl5/Makefile
index c43281e9c74..1a74895c79c 100644
--- a/lang/perl5/Makefile
+++ b/lang/perl5/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.246 2018/07/04 13:40:22 jperkin Exp $
+# $NetBSD: Makefile,v 1.247 2018/08/22 08:37:46 wiz Exp $
.include "license.mk"
.include "Makefile.common"
@@ -237,7 +237,7 @@ SUBST_VARS.policysh+= SYSLIBPATH
.include "../../mk/dlopen.buildlink3.mk"
.include "options.mk"
-.if !empty(MACHINE_PLATFORM:MMirBSD*)
+.if !empty(MACHINE_PLATFORM:MMirBSD)
SUBST_CLASSES+= mirbsd-paths
SUBST_STAGE.mirbsd-paths= pre-configure
SUBST_FILES.mirbsd-paths= hints/mirbsd.sh
diff --git a/lang/perl5/Makefile.common b/lang/perl5/Makefile.common
index 442fab3ce68..23d2ed58711 100644
--- a/lang/perl5/Makefile.common
+++ b/lang/perl5/Makefile.common
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile.common,v 1.33 2018/04/27 09:44:27 adam Exp $
+# $NetBSD: Makefile.common,v 1.34 2018/08/22 08:37:46 wiz Exp $
#
# used by lang/perl5/Makefile
# used by databases/p5-gdbm/Makefile
-DISTNAME= perl-5.26.2
+DISTNAME= perl-5.28.0
CATEGORIES= lang devel perl5
MASTER_SITES= ${MASTER_SITE_PERL_CPAN:S,/modules/by-module/$,/src/5.0/,}
DISTFILES+= ${DISTNAME}${EXTRACT_SUFX}
diff --git a/lang/perl5/distinfo b/lang/perl5/distinfo
index 92c9ab4cc3d..574cf3e1fb3 100644
--- a/lang/perl5/distinfo
+++ b/lang/perl5/distinfo
@@ -1,28 +1,17 @@
-$NetBSD: distinfo,v 1.150 2018/04/27 09:44:27 adam Exp $
+$NetBSD: distinfo,v 1.151 2018/08/22 08:37:46 wiz Exp $
-SHA1 (perl-5.26.2.tar.xz) = bfa5c7921ed7bf5e035dbf2f7ff81367b81e372c
-RMD160 (perl-5.26.2.tar.xz) = 45a0bc31f57b786ebe1273b7e5070e6e1bf59c7b
-SHA512 (perl-5.26.2.tar.xz) = fd54c90da250144c81b94587c01c49fa367f84c54406f1d360ddab4a41589a7b19efc1707f95c95d6357fae66fc3f6f00bf69dd7741db114c7034a14f52be65f
-Size (perl-5.26.2.tar.xz) = 11931624 bytes
-SHA1 (patch-Configure) = 6f3aa5c8d971e2c58dbd3e348f9edd59e298c181
-SHA1 (patch-MANIFEST) = b27b0e1754fe2c4484931219fa17c562db88d41a
+SHA1 (perl-5.28.0.tar.xz) = c0e9e7a0dea97ec9816687d865fd461a99ef185c
+RMD160 (perl-5.28.0.tar.xz) = 34c9ad0560a2eed134e09282696bfae307cbeb6a
+SHA512 (perl-5.28.0.tar.xz) = de701e37371b81cecf06098bb2c09017bde9cebaf9537d58838d0adf605ac2ecf739897b0a73576a7adb74d4cf65591ec4d2ed1f94b7191e695f88cb7e214a39
+Size (perl-5.28.0.tar.xz) = 12410536 bytes
+SHA1 (patch-Configure) = e4ae2c84bece8823ec1bf98415706b4d2491a5e9
SHA1 (patch-Makefile.SH) = e9353181a286f52303d09cb4ce0b2c04ec104217
SHA1 (patch-aa) = 3a2b39c9eb903e68ef7d03ae448c51c147c19aa1
SHA1 (patch-ab) = 0ad5988b7cadfb13d9646a59a57f6cf884a6238a
SHA1 (patch-ac) = 4baa8f80695687abb53d4f4e1830cf86db5b2bf7
-SHA1 (patch-aq) = 4bf5a76f0277b0939b2ca7720f4bb045a788b5cc
SHA1 (patch-caretx.c) = 9f53a9133f8dd2f962b448d7288b5b20454c86fb
-SHA1 (patch-cflags.SH) = 2ac2cf326d332976f676b0f56d3cf4a68a186922
-SHA1 (patch-ch) = 5b6a89c82e158bab0a5f06add48c28e600678099
-SHA1 (patch-ck) = 483e93a782e5627d3c7334d930ee11010fe7f7d8
-SHA1 (patch-cn) = d1877383e213a414562b5bb4c1e8aa785926fab7
-SHA1 (patch-cpan_File-Path_lib_File_Path.pm) = e8a08e7e7fdbebabbeef7eaa651147353eedbfd7
-SHA1 (patch-ext_Errno_Errno__pm.PL) = 4f135e267da17de38f8f1e7e03d5209bfd09a323
-SHA1 (patch-ext_File-Glob_bsd_glob.c) = e43252b55f04bb1cd69d48e8155aa110532c9fbe
-SHA1 (patch-ext_File-Glob_t_rt131211.t) = 9aeddad078cdc920e64ed2e73f952be341745d7e
+SHA1 (patch-cflags.SH) = 7ad64e5a17b876bff4bbe238abc4a57354acf4fe
SHA1 (patch-hints_cygwin.sh) = 1b21d927d6b7379754c4cd64a2b05d3632c35470
SHA1 (patch-hints_netbsd.sh) = 0d549a48800372d75fe34b783529a78cba90f646
-SHA1 (patch-hints_sco.sh) = 8d43cdc0632799e1cdb5dc6fdb968052a9ae4216
SHA1 (patch-hints_solaris__2.sh) = 0e54889648a6f0f2a0232c5e01bef89d245c213d
SHA1 (patch-ta) = a9d13eeec22733e4087942f217a0d47a19498a6f
-SHA1 (patch-ze) = d6fb718a1417e37a7d6bee1ae89fe2beec51c81b
diff --git a/lang/perl5/patches/patch-Configure b/lang/perl5/patches/patch-Configure
index c7572685307..4364ee070fa 100644
--- a/lang/perl5/patches/patch-Configure
+++ b/lang/perl5/patches/patch-Configure
@@ -1,4 +1,4 @@
-$NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
+$NetBSD: patch-Configure,v 1.6 2018/08/22 08:37:46 wiz Exp $
* Use "uname -r" to get OS version for *BSD.
* Move $loclibpth to the end of $dlist, instead of the beginning.
@@ -6,9 +6,9 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
* Honor more ldflags in shared objects.
* Several other changes.
---- Configure.orig 2017-09-22 14:27:02.000000000 +0000
+--- Configure.orig 2018-05-21 12:29:23.000000000 +0000
+++ Configure
-@@ -3485,13 +3485,14 @@ EOM
+@@ -3471,13 +3471,14 @@ EOM
osvers="$3"
;;
dragonfly) osname=dragonfly
@@ -25,7 +25,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
genix) osname=genix ;;
gnu) osname=gnu
osvers="$3" ;;
-@@ -3514,7 +3515,7 @@ EOM
+@@ -3500,7 +3501,7 @@ EOM
MiNT) osname=mint
;;
netbsd*) osname=netbsd
@@ -34,16 +34,16 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
;;
news-os) osvers="$3"
case "$3" in
-@@ -3524,7 +3525,7 @@ EOM
+@@ -3510,7 +3511,7 @@ EOM
;;
nonstop-ux) osname=nonstopux ;;
openbsd) osname=openbsd
-- osvers="$3"
-+ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
- ;;
+- osvers="$3"
++ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
+ ;;
os2) osname=os2
osvers="$4"
-@@ -3539,6 +3540,9 @@ EOM
+@@ -3525,6 +3526,9 @@ EOM
qnx) osname=qnx
osvers="$4"
;;
@@ -53,7 +53,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
solaris) osname=solaris
case "$3" in
5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;;
-@@ -4977,7 +4981,7 @@ esac
+@@ -4963,7 +4967,7 @@ esac
# If using gcc or clang, we can get better values for libpth, incpth
# and usrinc directly from the compiler.
# Note that ccname for clang is also gcc.
@@ -62,7 +62,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
gcc)
$echo 'extern int foo;' > try.c
set X `$cppstdin -v try.c 2>&1 | $awk '/^#include </,/^End of search /'|$cppfilter $grep '/include'`
-@@ -5053,14 +5057,14 @@ case "$plibpth" in
+@@ -5039,14 +5043,14 @@ case "$plibpth" in
esac
case "$libpth" in
' ') dlist='';;
@@ -79,7 +79,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
case " $libpth " in
*" $xxx "*) ;;
*) libpth="$libpth $xxx";;
-@@ -5176,7 +5180,7 @@ lib_ext=$_a
+@@ -5162,7 +5166,7 @@ lib_ext=$_a
obj_ext=$_o
path_sep=$p_
@@ -88,7 +88,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
: Which makefile gets called first. This is used by make depend.
case "$firstmakefile" in
-@@ -5507,7 +5511,7 @@ default|recommended)
+@@ -5493,7 +5497,7 @@ default|recommended)
# thing. (NWC)
case "$osname" in
amigaos) ;; # -fstack-protector builds but doesn't work
@@ -97,7 +97,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
?*) set stack-protector-strong -fstack-protector-strong
eval $checkccflag
case "$dflt" in
-@@ -6492,6 +6496,15 @@ case "$nm_so_opt" in
+@@ -6477,6 +6481,15 @@ case "$nm_so_opt" in
;;
esac
@@ -113,7 +113,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
: Figure out where the libc is located
case "$runnm" in
true)
-@@ -7626,7 +7639,9 @@ rp='Pathname for the site-specific libra
+@@ -7604,7 +7617,9 @@ rp='Pathname for the site-specific libra
. ./getfile
prefixvar=sitelib
. ./setprefixvar
@@ -124,7 +124,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
: Determine list of previous versions to include in @INC
$cat > getverlist <<EOPL
-@@ -8038,7 +8053,9 @@ case "$vendorprefix" in
+@@ -8015,7 +8030,9 @@ case "$vendorprefix" in
vendorlibexp="$ansexp"
;;
esac
@@ -135,7 +135,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
prefixvar=vendorlib
. ./installprefix
-@@ -8580,6 +8597,7 @@ EOM
+@@ -8511,6 +8528,7 @@ EOM
esac
;;
*linux*|irix*|gnu*) dflt="-shared $optimize" ;;
@@ -143,7 +143,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
solaris) # See [perl #66604].
# On Solaris 11, gcc -m64 on amd64
# appears not to understand -G. gcc versions at
-@@ -8619,7 +8637,7 @@ EOM
+@@ -8550,7 +8568,7 @@ EOM
esac
for thisflag in $ldflags; do
case "$thisflag" in
@@ -152,7 +152,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
case " $dflt " in
*" $thisflag "*) ;;
*) dflt="$dflt $thisflag" ;;
-@@ -8878,6 +8896,10 @@ if "$useshrplib"; then
+@@ -8809,6 +8827,10 @@ if "$useshrplib"; then
bsdos|linux|irix*|dec_osf|gnu*|haiku)
xxx="-Wl,-rpath,$shrpdir"
;;
@@ -163,7 +163,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
hpux*)
# hpux doesn't like the default, either.
tmp_shrpenv="env LDOPTS=\"+s +b${shrpdir}\""
-@@ -8885,6 +8907,9 @@ if "$useshrplib"; then
+@@ -8816,6 +8838,9 @@ if "$useshrplib"; then
cygwin)
# cygwin needs only ldlibpth
;;
@@ -173,7 +173,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
*)
tmp_shrpenv="env LD_RUN_PATH=$shrpdir"
;;
-@@ -9966,6 +9991,13 @@ esac
+@@ -9896,6 +9921,13 @@ esac
: Check if we want perlio
useperlio="$define"
@@ -187,7 +187,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
: Set the vendorbin variables
case "$vendorprefix" in
'') d_vendorbin="$undef"
-@@ -20424,7 +20456,15 @@ RCAT(Rei,ser)
+@@ -19825,7 +19857,15 @@ RCAT(Rei,ser)
ACAT(Cir,cus)
EOCP
$cppstdin $cppflags $cppminus <cpp_stuff.c >cpp_stuff.out 2>&1
@@ -204,7 +204,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
echo "Oh! Smells like ANSI's been here." >&4
echo "We can catify or stringify, separately or together!"
cpp_stuff=42
-@@ -23296,6 +23336,21 @@ eval $inhdr
+@@ -22641,6 +22681,21 @@ eval $inhdr
set fenv.h i_fenv
eval $inhdr
@@ -226,7 +226,7 @@ $NetBSD: patch-Configure,v 1.5 2018/01/12 11:32:21 jperkin Exp $
: see if this is a fp.h system
set fp.h i_fp
eval $inhdr
-@@ -25665,4 +25720,3 @@ $rm -f kit*isdone ark*isdone
+@@ -25015,4 +25070,3 @@ $rm -f kit*isdone ark*isdone
$rm -rf UU
: End of Configure
diff --git a/lang/perl5/patches/patch-MANIFEST b/lang/perl5/patches/patch-MANIFEST
deleted file mode 100644
index 198a392e557..00000000000
--- a/lang/perl5/patches/patch-MANIFEST
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-MANIFEST,v 1.2 2017/06/05 13:41:22 ryoon Exp $
-
-[perl #131211] fixup File::Glob degenerate matching
-https://research.swtch.com/glob
-https://perl5.git.perl.org/perl.git/commit/33252c318625f3c6c89b816ee88481940e3e6f95
-
---- MANIFEST.orig 2017-05-30 09:57:56.000000000 +0000
-+++ MANIFEST
-@@ -3948,6 +3948,7 @@ ext/File-Glob/t/basic.t See if File::Gl
- ext/File-Glob/t/case.t See if File::Glob works
- ext/File-Glob/t/global.t See if File::Glob works
- ext/File-Glob/t/rt114984.t See if File::Glob works
-+ext/File-Glob/t/rt131211.t See if File::Glob works
- ext/File-Glob/t/taint.t See if File::Glob works
- ext/File-Glob/t/threads.t See if File::Glob + threads works
- ext/File-Glob/TODO File::Glob extension todo list
diff --git a/lang/perl5/patches/patch-aq b/lang/perl5/patches/patch-aq
deleted file mode 100644
index 5ab0435e0c3..00000000000
--- a/lang/perl5/patches/patch-aq
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD: patch-aq,v 1.4 2012/10/03 19:59:47 adam Exp $
-
---- XSUB.h.orig 2012-08-03 17:35:26.000000000 +0000
-+++ XSUB.h
-@@ -102,6 +102,9 @@ is a lexical $_ in scope.
- #ifndef PERL_UNUSED_VAR
- # define PERL_UNUSED_VAR(x) ((void)x)
- #endif
-+#ifndef PERL_UNUSED_DECL
-+# define PERL_UNUSED_DECL
-+#endif
-
- #define ST(off) PL_stack_base[ax + (off)]
-
-@@ -137,18 +140,7 @@ is a lexical $_ in scope.
- # define XS_INTERNAL(name) EXPORT_C STATIC XSPROTO(name)
- #endif
- #ifndef XS_EXTERNAL
--# if defined(HASATTRIBUTE_UNUSED) && !defined(__cplusplus)
--# define XS_EXTERNAL(name) void name(pTHX_ CV* cv __attribute__unused__)
--# define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
--# else
--# ifdef __cplusplus
--# define XS_EXTERNAL(name) extern "C" XSPROTO(name)
--# define XS_INTERNAL(name) static XSPROTO(name)
--# else
--# define XS_EXTERNAL(name) XSPROTO(name)
--# define XS_INTERNAL(name) STATIC XSPROTO(name)
--# endif
--# endif
-+# define XS_EXTERNAL(name) void name(pTHX_ CV* cv PERL_UNUSED_DECL)
- #endif
-
- /* We do export xsub symbols by default for the public XS macro.
diff --git a/lang/perl5/patches/patch-cflags.SH b/lang/perl5/patches/patch-cflags.SH
index 3c841302b5e..cc6352294ae 100644
--- a/lang/perl5/patches/patch-cflags.SH
+++ b/lang/perl5/patches/patch-cflags.SH
@@ -1,15 +1,15 @@
-$NetBSD: patch-cflags.SH,v 1.2 2018/01/15 10:07:50 jperkin Exp $
+$NetBSD: patch-cflags.SH,v 1.3 2018/08/22 08:37:46 wiz Exp $
Don't add -std=c89 or -ansi, requires c99.
---- cflags.SH.orig 2017-07-18 22:49:30.000000000 +0000
+--- cflags.SH.orig 2018-05-21 12:29:23.000000000 +0000
+++ cflags.SH
-@@ -186,7 +186,7 @@ Intel*) ;; # # Is that you, Intel C++?
+@@ -178,7 +178,7 @@ Intel*) ;; # # Is that you, Intel C++?
# -std=c89 before -ansi
# -pedantic* before -Werror=d-a-s
#
-*) for opt in -std=c89 -ansi $pedantic \
+*) for opt in $pedantic \
-Werror=declaration-after-statement \
+ -Werror=pointer-arith \
-Wextra -W \
- -Wc++-compat -Wwrite-strings
diff --git a/lang/perl5/patches/patch-ch b/lang/perl5/patches/patch-ch
deleted file mode 100644
index 6f2ad07b8b3..00000000000
--- a/lang/perl5/patches/patch-ch
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ch,v 1.4 2008/10/10 21:58:43 he Exp $
-
---- hints/dec_osf.sh.orig 2007-12-18 11:47:07.000000000 +0100
-+++ hints/dec_osf.sh
-@@ -79,7 +79,7 @@ case "$unamer" in
- # fixed in 4.0E or better.
- ;;
- *)
-- lddlflags="$lddlflags $optimize"
-+ lddlflags="$lddlflags"
- ;;
- esac
- # -msym: If using a sufficiently recent /sbin/loader,
diff --git a/lang/perl5/patches/patch-ck b/lang/perl5/patches/patch-ck
deleted file mode 100644
index ae78c34999b..00000000000
--- a/lang/perl5/patches/patch-ck
+++ /dev/null
@@ -1,26 +0,0 @@
-$NetBSD: patch-ck,v 1.3 2015/12/28 13:44:03 adam Exp $
-
---- hints/aix_4.sh.orig 2004-09-09 23:29:04.000000000 -0700
-+++ hints/aix_4.sh 2005-03-08 18:42:35.000000000 -0700
-@@ -103,9 +103,10 @@
- esac
-
- # uname -m output is too specific and not appropriate here
--case "$archname" in
-- '') archname="$osname" ;;
-- esac
-+#case "$archname" in
-+# '') archname="$osname" ;;
-+# esac
-+archname="rs6000-$osname"
-
- cc=${cc:-cc}
- ccflags="$ccflags -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE"
-@@ -310,6 +311,7 @@
- d_getgrent_r='undef'
- d_getpwent_r='undef'
- d_random_r='undef'
-+ d_srandom_r='undef'
- d_setgrent_r='undef'
- d_setpwent_r='undef'
- d_srand48_r='undef'
diff --git a/lang/perl5/patches/patch-cn b/lang/perl5/patches/patch-cn
deleted file mode 100644
index d6e06723304..00000000000
--- a/lang/perl5/patches/patch-cn
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-cn,v 1.4 2012/10/03 19:59:47 adam Exp $
-
---- hints/hpux.sh.orig 2012-08-03 17:35:26.000000000 +0000
-+++ hints/hpux.sh
-@@ -387,7 +387,7 @@ case "$ccisgcc" in
- *O[3456789]*) optimize=`echo "$optimize" | sed -e 's/O[3-9]/O2/'` ;;
- esac
- #ld="$cc"
-- ld=/usr/bin/ld
-+ ld=ld
- cccdlflags='-fPIC'
- #lddlflags='-shared'
- lddlflags='-b'
-@@ -458,7 +458,7 @@ case "$ccisgcc" in
- toke_cflags="$toke_cflags;optimize=\"$opt\""
- regexec_cflags="optimize=\"$opt\""
- fi
-- ld=/usr/bin/ld
-+ ld=ld
- cccdlflags='+Z'
- lddlflags='-b +vnocompatwarnings'
- ;;
diff --git a/lang/perl5/patches/patch-cpan_File-Path_lib_File_Path.pm b/lang/perl5/patches/patch-cpan_File-Path_lib_File_Path.pm
deleted file mode 100644
index f3261a86438..00000000000
--- a/lang/perl5/patches/patch-cpan_File-Path_lib_File_Path.pm
+++ /dev/null
@@ -1,64 +0,0 @@
-$NetBSD: patch-cpan_File-Path_lib_File_Path.pm,v 1.1 2017/06/05 18:58:44 bsiegert Exp $
-OpenBSD 6.1 errata 10, June 04, 2017:
-
-Use fchmod to avoid a race condition in File::Path.
-Fixes CVE-2017-6512.
-
---- cpan/File-Path/lib/File/Path.pm 5 Feb 2017 00:31:58 -0000
-+++ cpan/File-Path/lib/File/Path.pm 1 Jun 2017 22:00:11 -0000
-@@ -18,7 +18,7 @@ BEGIN {
-
- use Exporter ();
- use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
--$VERSION = '2.12_01';
-+$VERSION = '2.12_02';
- $VERSION = eval $VERSION;
- @ISA = qw(Exporter);
- @EXPORT = qw(mkpath rmtree);
-@@ -354,21 +354,32 @@ sub _rmtree {
-
- # see if we can escalate privileges to get in
- # (e.g. funny protection mask such as -w- instead of rwx)
-- $perm &= oct '7777';
-- my $nperm = $perm | oct '700';
-- if (
-- !(
-- $arg->{safe}
-- or $nperm == $perm
-- or chmod( $nperm, $root )
-- )
-- )
-- {
-- _error( $arg,
-- "cannot make child directory read-write-exec", $canon );
-- next ROOT_DIR;
-+ # This uses fchmod to avoid traversing outside of the proper
-+ # location (CVE-2017-6512)
-+ my $root_fh;
-+ if (open($root_fh, '<', $root)) {
-+ my ($fh_dev, $fh_inode) = (stat $root_fh )[0,1];
-+ $perm &= oct '7777';
-+ my $nperm = $perm | oct '700';
-+ local $@;
-+ if (
-+ !(
-+ $arg->{safe}
-+ or $nperm == $perm
-+ or !-d _
-+ or $fh_dev ne $ldev
-+ or $fh_inode ne $lino
-+ or eval { chmod( $nperm, $root_fh ) }
-+ )
-+ )
-+ {
-+ _error( $arg,
-+ "cannot make child directory read-write-exec", $canon );
-+ next ROOT_DIR;
-+ }
-+ close $root_fh;
- }
-- elsif ( !chdir($root) ) {
-+ if ( !chdir($root) ) {
- _error( $arg, "cannot chdir to child", $canon );
- next ROOT_DIR;
- }
diff --git a/lang/perl5/patches/patch-ext_Errno_Errno__pm.PL b/lang/perl5/patches/patch-ext_Errno_Errno__pm.PL
deleted file mode 100644
index 66b3f10e941..00000000000
--- a/lang/perl5/patches/patch-ext_Errno_Errno__pm.PL
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: patch-ext_Errno_Errno__pm.PL,v 1.1 2014/06/07 11:57:34 obache Exp $
-
-* add include path for Haiku new directory layout.
-
---- ext/Errno/Errno_pm.PL.orig 2014-05-26 13:34:20.000000000 +0000
-+++ ext/Errno/Errno_pm.PL
-@@ -142,6 +142,7 @@ sub get_files {
- $file{$linux_errno_h} = 1;
- } elsif ($^O eq 'haiku') {
- # hidden in a special place
-+ $file{'/boot/system/develop/headers/posix/errno.h'} = 1;
- $file{'/boot/develop/headers/posix/errno.h'} = 1;
-
- } elsif ($^O eq 'vos') {
diff --git a/lang/perl5/patches/patch-ext_File-Glob_bsd_glob.c b/lang/perl5/patches/patch-ext_File-Glob_bsd_glob.c
deleted file mode 100644
index 2eb2aa8a184..00000000000
--- a/lang/perl5/patches/patch-ext_File-Glob_bsd_glob.c
+++ /dev/null
@@ -1,89 +0,0 @@
-$NetBSD: patch-ext_File-Glob_bsd_glob.c,v 1.1 2017/04/28 22:59:48 sevan Exp $
-
-[perl #131211] fixup File::Glob degenerate matching
-https://research.swtch.com/glob
-https://perl5.git.perl.org/perl.git/commit/33252c318625f3c6c89b816ee88481940e3e6f95
-
---- ext/File-Glob/bsd_glob.c.orig 2017-04-28 18:41:33.000000000 +0000
-+++ ext/File-Glob/bsd_glob.c
-@@ -911,33 +911,43 @@ globextend(const Char *path, glob_t *pgl
- /*
- * pattern matching function for filenames. Each occurrence of the *
- * pattern causes a recursion level.
-+ *
-+ * Note, this function differs from the original as per the discussion
-+ * here: https://research.swtch.com/glob
-+ *
-+ * Basically we removed the recursion and made it use the algorithm
-+ * from Russ Cox to not go quadratic on cases like a file called ("a" x 100) . "x"
-+ * matched against a pattern like "a*a*a*a*a*a*a*y".
-+ *
- */
- static int
- match(Char *name, Char *pat, Char *patend, int nocase)
- {
- int ok, negate_range;
- Char c, k;
-+ Char *nextp = NULL;
-+ Char *nextn = NULL;
-
-+ loop:
- while (pat < patend) {
- c = *pat++;
- switch (c & M_MASK) {
- case M_ALL:
- if (pat == patend)
- return(1);
-- do
-- if (match(name, pat, patend, nocase))
-- return(1);
-- while (*name++ != BG_EOS)
-- ;
-- return(0);
-+ if (*name == BG_EOS)
-+ return 0;
-+ nextn = name + 1;
-+ nextp = pat - 1;
-+ break;
- case M_ONE:
- if (*name++ == BG_EOS)
-- return(0);
-+ goto fail;
- break;
- case M_SET:
- ok = 0;
- if ((k = *name++) == BG_EOS)
-- return(0);
-+ goto fail;
- if ((negate_range = ((*pat & M_MASK) == M_NOT)) != BG_EOS)
- ++pat;
- while (((c = *pat++) & M_MASK) != M_END)
-@@ -953,16 +963,25 @@ match(Char *name, Char *pat, Char *paten
- } else if (nocase ? (tolower(c) == tolower(k)) : (c == k))
- ok = 1;
- if (ok == negate_range)
-- return(0);
-+ goto fail;
- break;
- default:
- k = *name++;
- if (nocase ? (tolower(k) != tolower(c)) : (k != c))
-- return(0);
-+ goto fail;
- break;
- }
- }
-- return(*name == BG_EOS);
-+ if (*name == BG_EOS)
-+ return 1;
-+
-+ fail:
-+ if (nextn) {
-+ pat = nextp;
-+ name = nextn;
-+ goto loop;
-+ }
-+ return 0;
- }
-
- /* Free allocated data belonging to a glob_t structure. */
diff --git a/lang/perl5/patches/patch-ext_File-Glob_t_rt131211.t b/lang/perl5/patches/patch-ext_File-Glob_t_rt131211.t
deleted file mode 100644
index 7d06847650b..00000000000
--- a/lang/perl5/patches/patch-ext_File-Glob_t_rt131211.t
+++ /dev/null
@@ -1,103 +0,0 @@
-$NetBSD: patch-ext_File-Glob_t_rt131211.t,v 1.1 2017/04/28 22:59:48 sevan Exp $
-
-[perl #131211] fixup File::Glob degenerate matching
-https://research.swtch.com/glob
-https://perl5.git.perl.org/perl.git/commit/33252c318625f3c6c89b816ee88481940e3e6f95
-
---- ext/File-Glob/t/rt131211.t.orig 2017-04-28 18:37:15.000000000 +0000
-+++ ext/File-Glob/t/rt131211.t
-@@ -0,0 +1,94 @@
-+use strict;
-+use warnings;
-+use v5.16.0;
-+use File::Temp 'tempdir';
-+use File::Spec::Functions;
-+use Test::More;
-+use Time::HiRes qw(time);
-+
-+plan tests => 13;
-+
-+my $path = tempdir uc cleanup => 1;
-+my @files= (
-+ "x".("a" x 50)."b", # 0
-+ "abbbbbbbbbbbbc", # 1
-+ "abbbbbbbbbbbbd", # 2
-+ "aaabaaaabaaaabc", # 3
-+ "pq", # 4
-+ "r", # 5
-+ "rttiiiiiii", # 6
-+ "wewewewewewe", # 7
-+ "weeeweeeweee", # 8
-+ "weewweewweew", # 9
-+ "wewewewewewewewewewewewewewewewewq", # 10
-+ "wtttttttetttttttwr", # 11
-+);
-+
-+
-+foreach (@files) {
-+ open(my $f, ">", catfile $path, $_);
-+}
-+
-+my $elapsed_fail= 0;
-+my $elapsed_match= 0;
-+my @got_files;
-+my @no_files;
-+my $count = 0;
-+
-+while (++$count < 10) {
-+ $elapsed_match -= time;
-+ @got_files= glob catfile $path, "x".("a*" x $count) . "b";
-+ $elapsed_match += time;
-+
-+ $elapsed_fail -= time;
-+ @no_files= glob catfile $path, "x".("a*" x $count) . "c";
-+ $elapsed_fail += time;
-+ last if $elapsed_fail > $elapsed_match * 100;
-+}
-+
-+is $count,10,
-+ "tried all the patterns without bailing out";
-+
-+cmp_ok $elapsed_fail/$elapsed_match,"<",2,
-+ "time to fail less than twice the time to match";
-+is "@got_files", catfile($path, $files[0]),
-+ "only got the expected file for xa*..b";
-+is "@no_files", "", "shouldnt have files for xa*..c";
-+
-+
-+@got_files= glob catfile $path, "a*b*b*b*bc";
-+is "@got_files", catfile($path, $files[1]),
-+ "only got the expected file for a*b*b*b*bc";
-+
-+@got_files= sort glob catfile $path, "a*b*b*bc";
-+is "@got_files", catfile($path, $files[3])." ".catfile($path,$files[1]),
-+ "got the expected two files for a*b*b*bc";
-+
-+@got_files= sort glob catfile $path, "p*";
-+is "@got_files", catfile($path, $files[4]),
-+ "p* matches pq";
-+
-+@got_files= sort glob catfile $path, "r*???????";
-+is "@got_files", catfile($path, $files[6]),
-+ "r*??????? works as expected";
-+
-+@got_files= sort glob catfile $path, "w*e*w??e";
-+is "@got_files", join(" ", sort map { catfile($path, $files[$_]) } (7,8)),
-+ "w*e*w??e works as expected";
-+
-+@got_files= sort glob catfile $path, "w*e*we??";
-+is "@got_files", join(" ", sort map { catfile($path, $files[$_]) } (7,8,9,10)),
-+ "w*e*we?? works as expected";
-+
-+@got_files= sort glob catfile $path, "w**e**w";
-+is "@got_files", join(" ", sort map { catfile($path, $files[$_]) } (9)),
-+ "w**e**w works as expected";
-+
-+@got_files= sort glob catfile $path, "*wee*";
-+is "@got_files", join(" ", sort map { catfile($path, $files[$_]) } (8,9)),
-+ "*wee* works as expected";
-+
-+@got_files= sort glob catfile $path, "we*";
-+is "@got_files", join(" ", sort map { catfile($path, $files[$_]) } (7,8,9,10)),
-+ "we* works as expected";
-+
diff --git a/lang/perl5/patches/patch-hints_sco.sh b/lang/perl5/patches/patch-hints_sco.sh
deleted file mode 100644
index 052593c2146..00000000000
--- a/lang/perl5/patches/patch-hints_sco.sh
+++ /dev/null
@@ -1,77 +0,0 @@
-$NetBSD: patch-hints_sco.sh,v 1.1 2014/03/14 22:41:10 ryoon Exp $
-
-* More hints
-
---- hints/sco.sh.orig 2013-11-04 15:15:38.000000000 +0000
-+++ hints/sco.sh
-@@ -120,6 +120,7 @@ else
- *gcc*)
- ccflags="$ccflags -melf"
- optimize='-O2'
-+ ldflags="-shared"
- ;;
- *)
- ccflags="$ccflags -w0 -belf"
-@@ -144,8 +145,8 @@ else
- case "$cc" in
- *gcc*)
- ccdlflags='-Xlinker -Bexport -L/usr/local/lib'
-- cccdlflags='-fpic'
-- lddlflags='-G -L/usr/local/lib'
-+ cccdlflags="-fpic $cccdlflags"
-+ lddlflags=" -G -L/usr/local/lib $lddlflags"
- ;;
- *)
- ccdlflags='-Wl,-Bexport -L/usr/local/lib'
-@@ -168,6 +169,51 @@ else
- fi
- fi
-
-+d_gethostbyname_r="define"
-+d_gethostbyaddr_r="define"
-+d_gethostent_r="define"
-+d_getnetbyname_r="define"
-+d_getnetbyaddr_r="define"
-+d_getnetent_r="define"
-+d_getprotobyname_r="define"
-+d_getprotoent_r="define"
-+d_getprotobynumber_r="define"
-+d_getservbyname_r="define"
-+d_getprotobynumber_r="define"
-+d_getservent_r="define"
-+d_getservbyname_r="define"
-+d_getservbyport_r="define"
-+d_setservent_r="define"
-+d_sethostent_r="define"
-+d_setnetent_r="define"
-+d_setprotoent_r="define"
-+d_endhostent_r="define"
-+d_endnetent_r="define"
-+d_endprotoent_r="define"
-+d_endservent_r="define"
-+
-+d_gethostbyname_r_proto="define"
-+d_gethostbyaddr_r_proto="define"
-+d_gethostent_r_proto="define"
-+d_getnetbyname_r_proto="define"
-+d_getnetbyaddr_r_proto="define"
-+d_getnetent_r_proto="define"
-+d_getprotobyname_r_proto="define"
-+d_getprotoent_r_proto="define"
-+d_getprotobynumber_r_proto="define"
-+d_getservbyname_r_proto="define"
-+d_getprotobynumber_r_proto="define"
-+d_getservent_r_proto="define"
-+d_getservbyname_r_proto="define"
-+d_getservbyport_r_proto="define"
-+d_setservent_r_proto="define"
-+d_sethostent_r_proto="define"
-+d_setnetent_r_proto="define"
-+d_setprotoent_r_proto="define"
-+d_endhostent_r_proto="define"
-+d_endnetent_r_proto="define"
-+d_endprotoent_r_proto="define"
-+d_endservent_r_proto="define"
-
- ###############################################################
- # Various hints, common to all releases, to have it work better:
diff --git a/lang/perl5/patches/patch-ze b/lang/perl5/patches/patch-ze
deleted file mode 100644
index aa45c453465..00000000000
--- a/lang/perl5/patches/patch-ze
+++ /dev/null
@@ -1,28 +0,0 @@
-$NetBSD: patch-ze,v 1.6 2014/05/29 07:57:07 adam Exp $
-
-Fixes compilation problem on Solaris/SPARC.
-
---- perl.h.orig 2014-05-26 13:34:20.000000000 +0000
-+++ perl.h
-@@ -1265,8 +1265,8 @@ EXTERN_C char *crypt(const char *, const
- # endif
- #else
- # ifdef HAS_SYS_ERRLIST
-- extern int sys_nerr;
-- extern char *sys_errlist[];
-+ extern const int sys_nerr;
-+ extern const char *const sys_errlist[];
- # ifndef Strerror
- # define Strerror(e) \
- ((e) < 0 || (e) >= sys_nerr ? UNKNOWN_ERRNO_MSG : sys_errlist[e])
-@@ -1331,6 +1331,10 @@ EXTERN_C char *crypt(const char *, const
- */
-
- #if defined(I_SYSMODE)
-+#if defined(__sun)
-+#include <sys/stat.h>
-+#include <sys/vnode.h>
-+#endif
- #include <sys/mode.h>
- #endif
-