diff options
author | wiz <wiz@pkgsrc.org> | 2018-08-22 08:37:46 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2018-08-22 08:37:46 +0000 |
commit | efe154c38a6348432c88fa1e881db01d97e42fe1 (patch) | |
tree | 494bfae7a64e021dd82287ac5cea2be4e542bd6a | |
parent | 19cd45275b44839bbeeea2e608405d050ed49065 (diff) | |
download | pkgsrc-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/Makefile | 4 | ||||
-rw-r--r-- | lang/perl5/Makefile.common | 4 | ||||
-rw-r--r-- | lang/perl5/distinfo | 25 | ||||
-rw-r--r-- | lang/perl5/patches/patch-Configure | 48 | ||||
-rw-r--r-- | lang/perl5/patches/patch-MANIFEST | 16 | ||||
-rw-r--r-- | lang/perl5/patches/patch-aq | 34 | ||||
-rw-r--r-- | lang/perl5/patches/patch-cflags.SH | 8 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ch | 13 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ck | 26 | ||||
-rw-r--r-- | lang/perl5/patches/patch-cn | 22 | ||||
-rw-r--r-- | lang/perl5/patches/patch-cpan_File-Path_lib_File_Path.pm | 64 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ext_Errno_Errno__pm.PL | 14 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ext_File-Glob_bsd_glob.c | 89 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ext_File-Glob_t_rt131211.t | 103 | ||||
-rw-r--r-- | lang/perl5/patches/patch-hints_sco.sh | 77 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ze | 28 |
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 - |