Accepting request 915813 from home:dstoecker:branches:devel:languages:perl

- update to 5.34.0
  * Experimental Try/Catch Syntax
  * Blanks freely allowed within but adjacent to curly braces
  * New octal syntax 0oddddd
  * Fix a memory leak in RegEx [GH #18604]
  * ExtUtils::PL2Bat 0.004 has been added to the Perl core.
  * Updated Modules and Pragmata
- Rebase perl-5.28.0.dif to perl-5.34.0.dif
- Rebase perl-incfix.diff
- Rebase perl_skip_flaky_tests_powerpc.patch
- Drop perl-gdbm-test-no-mmap.diff (no longer needed with gdbm 1.20)
- Add c029d660f2fe60699cf64bbb3fa9f671a1a370d5.patch to fix build with
  gdbm 1.20
- Drop perl-fix2020.patch (included upstream)

OBS-URL: https://build.opensuse.org/request/show/915813
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl?expand=0&rev=204
This commit is contained in:
Dirk Stoecker 2021-09-13 11:48:09 +00:00 committed by Git OBS Bridge
parent a7484015fe
commit 5eb95260ec
10 changed files with 505 additions and 504 deletions

View File

@ -0,0 +1,37 @@
From c029d660f2fe60699cf64bbb3fa9f671a1a370d5 Mon Sep 17 00:00:00 2001
From: Sergey Poznyakoff <gray@gnu.org>
Date: Wed, 23 Jun 2021 00:15:54 +0300
Subject: [PATCH] Fix GDBM_File to compile with version 1.20 and earlier
* ext/GDBM_File/GDBM_File.xs (ITEM_NOT_FOUND): Define conditionally,
depending on the GDBM_VERSION_MAJOR and GDBM_VERSION_MINOR.
Don't assume GDBM_ITEM_NOT_FOUND is a define (it isn't since
gdbm commit d3e27957).
---
ext/GDBM_File/GDBM_File.xs | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/ext/GDBM_File/GDBM_File.xs b/ext/GDBM_File/GDBM_File.xs
index cd0bb6f26ffa..494c2889ca89 100644
--- a/ext/GDBM_File/GDBM_File.xs
+++ b/ext/GDBM_File/GDBM_File.xs
@@ -145,14 +145,13 @@ output_datum(pTHX_ SV *arg, char *str, int size)
#define gdbm_setopt(db,optflag,optval,optlen) not_here("gdbm_setopt")
#endif
-#ifndef GDBM_ITEM_NOT_FOUND
-# define GDBM_ITEM_NOT_FOUND GDBM_NO_ERROR
-#endif
-
+#if GDBM_VERSION_MAJOR == 1 && GDBM_VERSION_MINOR < 13
/* Prior to 1.13, gdbm_fetch family functions set gdbm_errno to GDBM_NO_ERROR
if the requested key did not exist */
-#define ITEM_NOT_FOUND() \
- (gdbm_errno == GDBM_ITEM_NOT_FOUND || gdbm_errno == GDBM_NO_ERROR)
+# define ITEM_NOT_FOUND() (gdbm_errno == GDBM_NO_ERROR)
+#else
+# define ITEM_NOT_FOUND() (gdbm_errno == GDBM_ITEM_NOT_FOUND)
+#endif
#define CHECKDB(db) do { \
if (!db->dbp) { \

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:57cc47c735c8300a8ce2fa0643507b44c4ae59012bfdad0121313db639e02309
size 12610988

View File

@ -1,6 +1,7 @@
--- ./Configure.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./Configure 2018-09-26 09:54:14.330562141 +0000
@@ -114,7 +114,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi
diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure
--- perl-5.34.0/Configure 2021-05-04 08:52:48.000000000 +0200
+++ perl-5.34.0_fix/Configure 2021-08-28 14:02:09.092688019 +0200
@@ -114,7 +114,7 @@
paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
@ -9,7 +10,7 @@
paths="$paths /sbin /usr/sbin /usr/libexec"
paths="$paths /system/gnu_library/bin"
@@ -1448,7 +1448,7 @@ loclibpth="/usr/local/lib /opt/local/lib
@@ -1458,7 +1458,7 @@
loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
: general looking path for locating libraries
@ -18,7 +19,7 @@
glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
test -f /shlib/libc.so && glibpth="/shlib $glibpth"
@@ -2545,7 +2545,7 @@ uname
@@ -2556,7 +2556,7 @@
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
@ -27,7 +28,7 @@
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
@@ -19917,14 +19917,20 @@ int main(int argc, char *argv[])
@@ -20313,14 +20313,20 @@
}
EOCP
set try
@ -48,25 +49,25 @@
i_db=$undef
case " $libs " in
*"-ldb "*)
@@ -19965,7 +19971,7 @@ int main()
@@ -20358,7 +20364,7 @@
}
#endif
EOCP
- if $cc $ccflags -c try.c >try.out 2>&1 ; then
+ if $cc $ccflags -c try.c -ldb >try.out 2>&1 ; then
if $contains warning try.out >>/dev/null 2>&1 ; then
if $compiler_warning try.out >>/dev/null 2>&1 ; then
db_hashtype='int'
else
@@ -20008,7 +20014,7 @@ int main()
@@ -20398,7 +20404,7 @@
}
#endif
EOCP
- if $cc $ccflags -c try.c >try.out 2>&1 ; then
+ if $cc $ccflags -c try.c -ldb >try.out 2>&1 ; then
if $contains warning try.out >>/dev/null 2>&1 ; then
if $compiler_warning try.out >>/dev/null 2>&1 ; then
db_prefixtype='int'
else
@@ -24656,7 +24662,7 @@ passcat='$passcat'
@@ -25079,7 +25085,7 @@
patchlevel='$patchlevel'
path_sep='$path_sep'
perl5='$perl5'
@ -75,87 +76,250 @@
perl_patchlevel='$perl_patchlevel'
perl_static_inline='$perl_static_inline'
perladmin='$perladmin'
--- ./SuSE/SuSEconfig.perl.orig 2018-09-26 09:54:14.334562132 +0000
+++ ./SuSE/SuSEconfig.perl 2018-09-26 09:54:14.334562132 +0000
@@ -0,0 +1,76 @@
+#! /bin/bash
+#
+# Copyright (c) 1996 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved.
+#
+# Author: Burchard Steinbild <bs@suse.de>, 1996
+# Martin Scherbaum <maddin@suse.de>, 5/1997
+# Ruediger Oertel <ro@suse.de>, 7/1998
+
+#
+# Variables in /etc/sysconfig/suseconfig used by this script are:
+# CREATE_PERLLOCAL_POD
+#
+# This script calls the scripts:
+# /usr/sbin/perllocal.suse which comes from the package perl
+#
+
+#
+# check if we are started as root
+# only one of UID and USER must be set correctly
+#
+if test "$UID" != 0 -a "$USER" != root; then
+ echo "You must be root to start $0."
+ exit 1
diff -Nur perl-5.34.0/cpan/Compress-Raw-Zlib/config.in perl-5.34.0_fix/cpan/Compress-Raw-Zlib/config.in
--- perl-5.34.0/cpan/Compress-Raw-Zlib/config.in 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/cpan/Compress-Raw-Zlib/config.in 2021-08-28 13:55:31.639705368 +0200
@@ -16,9 +16,9 @@
# Setting the Gzip OS Code
#
-BUILD_ZLIB = True
-INCLUDE = ./zlib-src
-LIB = ./zlib-src
+BUILD_ZLIB = False
+INCLUDE = /usr/include
+LIB = /usr/lib
OLD_ZLIB = False
GZIP_OS_CODE = AUTO_DETECT
diff -Nur perl-5.34.0/cpan/Encode/bin/enc2xs perl-5.34.0_fix/cpan/Encode/bin/enc2xs
--- perl-5.34.0/cpan/Encode/bin/enc2xs 2020-10-05 00:17:12.000000000 +0200
+++ perl-5.34.0_fix/cpan/Encode/bin/enc2xs 2021-08-28 13:55:31.639705368 +0200
@@ -1075,7 +1075,7 @@
$LocalMod{$enc} ||= $mod;
}
};
- File::Find::find({wanted => $wanted}, @INC);
+ File::Find::find({wanted => $wanted}, grep {$_ ne '.'} @INC);
$_ModLines = "";
for my $enc ( sort keys %LocalMod ) {
$_ModLines .=
diff -Nur perl-5.34.0/cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm perl-5.34.0_fix/cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm
--- perl-5.34.0/cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm 2021-08-28 13:55:31.639705368 +0200
@@ -206,8 +206,11 @@
{
if (! -e $key)
{
- push(@missing, $key);
- delete($self->{data}{$key}) if ($remove);
+ if (($key !~ m!/man/!) || ! -e "$key.gz")
+ {
+ push(@missing, $key);
+ delete($self->{data}{$key}) if ($remove);
+ }
}
}
return(@missing);
diff -Nur perl-5.34.0/cpan/File-Temp/lib/File/Temp.pm perl-5.34.0_fix/cpan/File-Temp/lib/File/Temp.pm
--- perl-5.34.0/cpan/File-Temp/lib/File/Temp.pm 2020-10-24 20:43:34.000000000 +0200
+++ perl-5.34.0_fix/cpan/File-Temp/lib/File/Temp.pm 2021-08-28 13:55:31.639705368 +0200
@@ -151,7 +151,7 @@
use IO::Seekable; # For SEEK_*
use Errno;
use Scalar::Util 'refaddr';
-require VMS::Stdio if $^O eq 'VMS';
+#require VMS::Stdio if $^O eq 'VMS';
# pre-emptively load Carp::Heavy. If we don't when we run out of file
# handles and attempt to call croak() we get an error message telling
diff -Nur perl-5.34.0/cpan/libnet/lib/Net/Config.pm perl-5.34.0_fix/cpan/libnet/lib/Net/Config.pm
--- perl-5.34.0/cpan/libnet/lib/Net/Config.pm 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/cpan/libnet/lib/Net/Config.pm 2021-08-28 13:55:31.639705368 +0200
@@ -51,7 +51,7 @@
{
## no critic (BuiltinFunctions::ProhibitStringyEval)
$^O eq 'MacOS' and eval <<TRY_INTERNET_CONFIG;
-use Mac::InternetConfig;
+#use Mac::InternetConfig;
{
my %nc = (
diff -Nur perl-5.34.0/cpan/Sys-Syslog/t/syslog.t perl-5.34.0_fix/cpan/Sys-Syslog/t/syslog.t
--- perl-5.34.0/cpan/Sys-Syslog/t/syslog.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/cpan/Sys-Syslog/t/syslog.t 2021-08-28 13:55:31.639705368 +0200
@@ -222,6 +222,7 @@
}
}
else {
+ $r = 1 unless -e '/dev/log';
ok( $r, "setlogsock() should return true: '$r'" );
}
diff -Nur perl-5.34.0/ext/DynaLoader/hints/linux.pl perl-5.34.0_fix/ext/DynaLoader/hints/linux.pl
--- perl-5.34.0/ext/DynaLoader/hints/linux.pl 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/ext/DynaLoader/hints/linux.pl 2021-08-28 13:55:31.639705368 +0200
@@ -2,4 +2,7 @@
# Some Linux releases like to hide their <nlist.h>
$self->{CCFLAGS} = $Config{ccflags} . ' -I/usr/include/libelf'
if -f "/usr/include/libelf/nlist.h";
+# Some silly modules like mod_perl use DynaLoader.a in a shared
+# module, so add cccdlflags if we're going for a shared libperl
+$self->{CCFLAGS} = ($self->{CCFLAGS} || $Config{ccflags}) . " $Config{cccdlflags}" if $Config{'useshrplib'} eq 'true';
1;
diff -Nur perl-5.34.0/ext/ODBM_File/hints/linux.pl perl-5.34.0_fix/ext/ODBM_File/hints/linux.pl
--- perl-5.34.0/ext/ODBM_File/hints/linux.pl 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/ext/ODBM_File/hints/linux.pl 2021-08-28 13:55:31.639705368 +0200
@@ -1,5 +1,5 @@
# uses GDBM dbm compatibility feature - at least on SuSE 8.0
-$self->{LIBS} = ['-lgdbm'];
+$self->{LIBS} = ['-lgdbm -lgdbm_compat'];
# Debian/Ubuntu have libgdbm_compat.so but not this file,
# so linking may fail
diff -Nur perl-5.34.0/ext/ODBM_File/Makefile.PL perl-5.34.0_fix/ext/ODBM_File/Makefile.PL
--- perl-5.34.0/ext/ODBM_File/Makefile.PL 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/ext/ODBM_File/Makefile.PL 2021-08-28 13:55:31.639705368 +0200
@@ -1,7 +1,7 @@
use ExtUtils::MakeMaker;
WriteMakefile(
NAME => 'ODBM_File',
- LIBS => ["-ldbm -lucb"],
+ LIBS => ["-lgdbm -lucb"],
XSPROTOARG => '-noprototypes', # XXX remove later?
VERSION_FROM => 'ODBM_File.pm',
);
diff -Nur perl-5.34.0/hints/linux.sh perl-5.34.0_fix/hints/linux.sh
--- perl-5.34.0/hints/linux.sh 2020-10-05 00:17:13.000000000 +0200
+++ perl-5.34.0_fix/hints/linux.sh 2021-08-28 13:55:31.639705368 +0200
@@ -53,7 +53,7 @@
# BSD compatibility library no longer needed
# 'kaffe' has a /usr/lib/libnet.so which is not at all relevant for perl.
# bind causes issues with several reentrant functions
-set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ net / /' -e 's/ bind / /'`
+set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ net / /' -e 's/ bind / /' -e 's/ db / /' -e 's/ gdbm / /' -e 's/ ndbm / /'`
shift
libswanted="$*"
@@ -64,6 +64,20 @@
libswanted="$libswanted gdbm_compat"
fi
+if test -e /lib64/libc.so.6 ; then
+ libc=`ls -l /lib64/libc.so.6 | awk '{print $NF}'`
+ libc=/lib64/$libc
+ glibpth='/lib64 /usr/lib64 /usr/local/lib64'
+ libspath='/usr/local/lib64 /lib64 /usr/lib64'
+ loclibpth='/usr/local/lib64'
+ lddlflags='-shared -L/usr/local/lib64'
+ ldflags=' -L/usr/local/lib64'
+ libs='-lm -ldl -lcrypt'
+elif test -L /lib/libc.so.6; then
+ libc=`ls -l /lib/libc.so.6 | awk '{print $NF}'`
+ libc=/lib/$libc
+fi
+
+#
+# SuSEconfig sometimes sets the variable CHECK_NEWPACKAGE. If it is set
+# to false, we don't have to do anything.
+#
+test "$CHECK_NEWPACKAGE" = false && exit 0
# Configure may fail to find lstat() since it's a static/inline
# function in <sys/stat.h>.
d_lstat=define
@@ -147,6 +161,7 @@
esac
;;
esac
+ optimize="$optimize --pipe"
;;
esac
@@ -234,6 +249,33 @@
;;
esac
+man1dir=/usr/share/man/man1
+man3dir=/usr/share/man/man3
+man3ext=3pm
+
+test -f /etc/sysconfig/suseconfig || { echo "No /etc/sysconfig/suseconfig found." && exit 1 ; }
+. /etc/sysconfig/suseconfig
+case `uname -m` in
+i?86) archname='i586-linux';;
+*) archname=`uname -m`-linux;;
+esac
+
+# this skript only works in a running system.
+case $archname in
+sparc64-linux) glibpth="/lib64 /usr/lib64";;
+esac
+
+test -n "$ROOT" && exit 0
+cf_email='none'
+#libs='-lgdbm -ldb -ldl -lm -lc'
+#libs='-ldl -lm -lc'
+
+perl -e 'exit 0' 2>/dev/null || { echo "Perl not found." && exit 0 ; }
+usedl='true'
+dlsrc='dl_dlopen.xs'
+d_dosuid='undef'
+d_bincompat3='y'
+
+#
+# see if we may do any work
+#
+test -n "$CREATE_PERLLOCAL_POD" -a "$CREATE_PERLLOCAL_POD" = "yes" \
+ || { echo "disabled in sysconfig/suseconfig" && exit 1 ; }
+
+#
+# check if anything to add
+#
+PERLLOCAL_PATH=`perl -V:installarchlib | sed -e "s/.*='\(.*\)'.*/\1/"`
+# We don't want to add /usr/local/include and /usr/local/lib to the search
+# paths, they are already searched by default.
+locincpth=
+loclibpth=
+
+NEEDED="false"
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'
@@ -281,6 +323,9 @@
echo "Couldn't find tcsh. Csh-based globbing might be broken."
fi
fi
+csh=''
+d_csh='undef'
+full_csh=''
# Shimpei Yamashita <shimpei@socrates.patnet.caltech.edu>
# Message-Id: <33EF1634.B36B6500@pobox.com>
@@ -391,6 +436,8 @@
d_localtime_r_proto="$define"
d_random_r_proto="$define"
+ test -e /lib64/libc.so.6 && libs='-lm -ldl -lcrypt -lpthread'
+
+if test -d /var/adm/perl-modules ; then
+ if test /var/adm/perl-modules -nt $PERLLOCAL_PATH/perllocal.pod ; then
+ NEEDED="true"
+ elif test ! -f $PERLLOCAL_PATH/perllocal.pod ; then
+ NEEDED="true"
+ fi
+fi
;;
esac
EOCBU
diff -Nur perl-5.34.0/installperl perl-5.34.0_fix/installperl
--- perl-5.34.0/installperl 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/installperl 2021-08-28 13:55:31.639705368 +0200
@@ -687,7 +687,7 @@
return if $name eq 'ExtUtils/MakeMaker/version/regex.pm';
my $installlib = $installprivlib;
- if ($dir =~ /^auto\// ||
+ if (($dir =~ /^auto\// && $dir ne 'auto/Compress/Zlib') ||
($name =~ /^(.*)\.(?:pm|pod)$/ && $archpms{$1}) ||
($name =~ /^(.*)\.(?:h|lib)$/i && ($Is_W32 || $Is_NetWare)) ||
$name=~/^Config_(heavy|git)\.pl\z/
diff -Nur perl-5.34.0/lib/perl5db.pl perl-5.34.0_fix/lib/perl5db.pl
--- perl-5.34.0/lib/perl5db.pl 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/lib/perl5db.pl 2021-08-28 13:55:31.643705420 +0200
@@ -2370,6 +2370,8 @@
open( OUT, ">&STDOUT" ) # XXX: lost message
|| _db_warn("Can't restore DB::OUT");
}
+ # tell readline the new OUT handle
+ $term->Attribs()->{outstream} = *OUT if defined &Term::ReadLine::Gnu::readline;
next CMD;
} ## end unless ($piped = open(OUT,...
@@ -2474,6 +2476,9 @@
$obj->selected("");
}
+ # tell readline the new OUT handle
+ $term->Attribs()->{outstream} = *OUT if defined &Term::ReadLine::Gnu::readline;
+
+#
+# now call the working script
+#
+if "$NEEDED" = "true" ; then
+ if test -x /usr/lib/perl5/perllocal.SuSE ; then
+ /usr/lib/perl5/perllocal.SuSE
+ pod2man $PERLLOCAL_PATH/perllocal.pod | gzip > /usr/share/man/man3/perllocal.3pm.gz
+ else
+ echo "SuSEconfig.perl: /usr/lib/perl5/perllocal.SuSE not found!"
+ fi
+fi
+
+#
+# end of file SuSEconfig.perl
+#
--- ./SuSE/perllocal.SuSE.orig 2018-09-26 09:54:14.334562132 +0000
+++ ./SuSE/perllocal.SuSE 2018-09-26 09:54:14.334562132 +0000
# No pipes now.
$obj->piped("");
} ## end if ($piped)
diff -Nur perl-5.34.0/SuSE/perllocal.SuSE perl-5.34.0_fix/SuSE/perllocal.SuSE
--- perl-5.34.0/SuSE/perllocal.SuSE 1970-01-01 01:00:00.000000000 +0100
+++ perl-5.34.0_fix/SuSE/perllocal.SuSE 2021-08-28 13:55:31.639705368 +0200
@@ -0,0 +1,83 @@
+#!/usr/bin/perl
+# Copyright (c) 1998 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved.
@ -240,8 +404,89 @@
+} else {
+ print "SuSEconfig.perl: Can't write to file $Config{'installarchlib'}/perllocal.pod !\n\n";
+}
--- ./SuSE/sysconfig.suseconfig-perl.orig 2018-09-26 09:54:14.334562132 +0000
+++ ./SuSE/sysconfig.suseconfig-perl 2018-09-26 09:54:14.334562132 +0000
diff -Nur perl-5.34.0/SuSE/SuSEconfig.perl perl-5.34.0_fix/SuSE/SuSEconfig.perl
--- perl-5.34.0/SuSE/SuSEconfig.perl 1970-01-01 01:00:00.000000000 +0100
+++ perl-5.34.0_fix/SuSE/SuSEconfig.perl 2021-08-28 13:55:31.639705368 +0200
@@ -0,0 +1,76 @@
+#! /bin/bash
+#
+# Copyright (c) 1996 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved.
+#
+# Author: Burchard Steinbild <bs@suse.de>, 1996
+# Martin Scherbaum <maddin@suse.de>, 5/1997
+# Ruediger Oertel <ro@suse.de>, 7/1998
+
+#
+# Variables in /etc/sysconfig/suseconfig used by this script are:
+# CREATE_PERLLOCAL_POD
+#
+# This script calls the scripts:
+# /usr/sbin/perllocal.suse which comes from the package perl
+#
+
+#
+# check if we are started as root
+# only one of UID and USER must be set correctly
+#
+if test "$UID" != 0 -a "$USER" != root; then
+ echo "You must be root to start $0."
+ exit 1
+fi
+
+#
+# SuSEconfig sometimes sets the variable CHECK_NEWPACKAGE. If it is set
+# to false, we don't have to do anything.
+#
+test "$CHECK_NEWPACKAGE" = false && exit 0
+
+test -f /etc/sysconfig/suseconfig || { echo "No /etc/sysconfig/suseconfig found." && exit 1 ; }
+. /etc/sysconfig/suseconfig
+
+# this skript only works in a running system.
+
+test -n "$ROOT" && exit 0
+
+perl -e 'exit 0' 2>/dev/null || { echo "Perl not found." && exit 0 ; }
+
+#
+# see if we may do any work
+#
+test -n "$CREATE_PERLLOCAL_POD" -a "$CREATE_PERLLOCAL_POD" = "yes" \
+ || { echo "disabled in sysconfig/suseconfig" && exit 1 ; }
+
+#
+# check if anything to add
+#
+PERLLOCAL_PATH=`perl -V:installarchlib | sed -e "s/.*='\(.*\)'.*/\1/"`
+
+NEEDED="false"
+
+if test -d /var/adm/perl-modules ; then
+ if test /var/adm/perl-modules -nt $PERLLOCAL_PATH/perllocal.pod ; then
+ NEEDED="true"
+ elif test ! -f $PERLLOCAL_PATH/perllocal.pod ; then
+ NEEDED="true"
+ fi
+fi
+
+#
+# now call the working script
+#
+if "$NEEDED" = "true" ; then
+ if test -x /usr/lib/perl5/perllocal.SuSE ; then
+ /usr/lib/perl5/perllocal.SuSE
+ pod2man $PERLLOCAL_PATH/perllocal.pod | gzip > /usr/share/man/man3/perllocal.3pm.gz
+ else
+ echo "SuSEconfig.perl: /usr/lib/perl5/perllocal.SuSE not found!"
+ fi
+fi
+
+#
+# end of file SuSEconfig.perl
+#
diff -Nur perl-5.34.0/SuSE/sysconfig.suseconfig-perl perl-5.34.0_fix/SuSE/sysconfig.suseconfig-perl
--- perl-5.34.0/SuSE/sysconfig.suseconfig-perl 1970-01-01 01:00:00.000000000 +0100
+++ perl-5.34.0_fix/SuSE/sysconfig.suseconfig-perl 2021-08-28 13:55:31.639705368 +0200
@@ -0,0 +1,8 @@
+## Path: System/SuSEconfig
+## Type: yesno
@ -251,238 +496,10 @@
+# May SuSEconfig modify your perllocal.pod? (yes/no)
+#
+CREATE_PERLLOCAL_POD="yes"
--- ./cpan/Compress-Raw-Zlib/config.in.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./cpan/Compress-Raw-Zlib/config.in 2018-09-26 09:54:14.334562132 +0000
@@ -16,9 +16,9 @@
# Setting the Gzip OS Code
#
-BUILD_ZLIB = True
-INCLUDE = ./zlib-src
-LIB = ./zlib-src
+BUILD_ZLIB = False
+INCLUDE = /usr/include
+LIB = /usr/lib
OLD_ZLIB = False
GZIP_OS_CODE = AUTO_DETECT
--- ./cpan/Encode/bin/enc2xs.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./cpan/Encode/bin/enc2xs 2018-09-26 09:54:14.334562132 +0000
@@ -1091,7 +1091,7 @@ sub make_configlocal_pm {
$LocalMod{$enc} ||= $mod;
}
};
- File::Find::find({wanted => $wanted}, @INC);
+ File::Find::find({wanted => $wanted}, grep {$_ ne '.'} @INC);
$_ModLines = "";
for my $enc ( sort keys %LocalMod ) {
$_ModLines .=
--- ./cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm 2018-09-26 09:54:14.334562132 +0000
@@ -207,8 +207,11 @@ foreach my $key (sort(keys(%{$self->{dat
{
if (! -e $key)
{
- push(@missing, $key);
- delete($self->{data}{$key}) if ($remove);
+ if (($key !~ m!/man/!) || ! -e "$key.gz")
+ {
+ push(@missing, $key);
+ delete($self->{data}{$key}) if ($remove);
+ }
}
}
return(@missing);
--- ./cpan/File-Temp/lib/File/Temp.pm.orig 2018-03-20 20:06:35.000000000 +0000
+++ ./cpan/File-Temp/lib/File/Temp.pm 2018-09-26 09:54:14.334562132 +0000
@@ -16,7 +16,7 @@ use Fcntl 1.03;
use IO::Seekable; # For SEEK_*
use Errno;
use Scalar::Util 'refaddr';
-require VMS::Stdio if $^O eq 'VMS';
+#require VMS::Stdio if $^O eq 'VMS';
# pre-emptively load Carp::Heavy. If we don't when we run out of file
# handles and attempt to call croak() we get an error message telling
--- ./cpan/Sys-Syslog/t/syslog.t.orig 2018-05-21 10:44:04.000000000 +0000
+++ ./cpan/Sys-Syslog/t/syslog.t 2018-09-26 09:54:14.334562132 +0000
@@ -221,6 +221,7 @@ SKIP: {
}
}
else {
+ $r = 1 unless -e '/dev/log';
ok( $r, "setlogsock() should return true: '$r'" );
}
--- ./cpan/libnet/lib/Net/Config.pm.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./cpan/libnet/lib/Net/Config.pm 2018-09-26 09:54:14.334562132 +0000
@@ -51,7 +51,7 @@ our %NetConfig = (
{
## no critic (BuiltinFunctions::ProhibitStringyEval)
$^O eq 'MacOS' and eval <<TRY_INTERNET_CONFIG;
-use Mac::InternetConfig;
+#use Mac::InternetConfig;
{
my %nc = (
--- ./ext/DynaLoader/hints/linux.pl.orig 2018-03-20 20:06:36.000000000 +0000
+++ ./ext/DynaLoader/hints/linux.pl 2018-09-26 09:54:14.334562132 +0000
@@ -2,4 +2,7 @@
# Some Linux releases like to hide their <nlist.h>
$self->{CCFLAGS} = $Config{ccflags} . ' -I/usr/include/libelf'
if -f "/usr/include/libelf/nlist.h";
+# Some silly modules like mod_perl use DynaLoader.a in a shared
+# module, so add cccdlflags if we're going for a shared libperl
+$self->{CCFLAGS} = ($self->{CCFLAGS} || $Config{ccflags}) . " $Config{cccdlflags}" if $Config{'useshrplib'} eq 'true';
1;
--- ./ext/ODBM_File/Makefile.PL.orig 2018-03-20 20:06:36.000000000 +0000
+++ ./ext/ODBM_File/Makefile.PL 2018-09-26 09:54:14.334562132 +0000
@@ -1,7 +1,7 @@
use ExtUtils::MakeMaker;
WriteMakefile(
NAME => 'ODBM_File',
- LIBS => ["-ldbm -lucb"],
+ LIBS => ["-lgdbm -lucb"],
XSPROTOARG => '-noprototypes', # XXX remove later?
VERSION_FROM => 'ODBM_File.pm',
);
--- ./ext/ODBM_File/hints/linux.pl.orig 2018-03-20 20:06:36.000000000 +0000
+++ ./ext/ODBM_File/hints/linux.pl 2018-09-26 09:54:14.334562132 +0000
@@ -1,5 +1,5 @@
# uses GDBM dbm compatibility feature - at least on SuSE 8.0
-$self->{LIBS} = ['-lgdbm'];
+$self->{LIBS} = ['-lgdbm -lgdbm_compat'];
# Debian/Ubuntu have libgdbm_compat.so but not this file,
# so linking may fail
--- ./hints/linux.sh.orig 2018-05-21 10:44:04.000000000 +0000
+++ ./hints/linux.sh 2018-09-26 09:54:14.334562132 +0000
@@ -53,7 +53,7 @@ ignore_versioned_solibs='y'
# BSD compatibility library no longer needed
# 'kaffe' has a /usr/lib/libnet.so which is not at all relevant for perl.
# bind causes issues with several reentrant functions
-set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ net / /' -e 's/ bind / /'`
+set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ net / /' -e 's/ bind / /' -e 's/ db / /' -e 's/ gdbm / /' -e 's/ ndbm / /'`
shift
libswanted="$*"
@@ -64,6 +64,20 @@ if echo " $libswanted " | grep -q ' gdbm
libswanted="$libswanted gdbm_compat"
fi
+if test -e /lib64/libc.so.6 ; then
+ libc=`ls -l /lib64/libc.so.6 | awk '{print $NF}'`
+ libc=/lib64/$libc
+ glibpth='/lib64 /usr/lib64 /usr/local/lib64'
+ libspath='/usr/local/lib64 /lib64 /usr/lib64'
+ loclibpth='/usr/local/lib64'
+ lddlflags='-shared -L/usr/local/lib64'
+ ldflags=' -L/usr/local/lib64'
+ libs='-lm -ldl -lcrypt'
+elif test -L /lib/libc.so.6; then
+ libc=`ls -l /lib/libc.so.6 | awk '{print $NF}'`
+ libc=/lib/$libc
+fi
+
# Configure may fail to find lstat() since it's a static/inline
# function in <sys/stat.h>.
d_lstat=define
@@ -147,6 +161,7 @@ case "$optimize" in
esac
;;
esac
+ optimize="$optimize --pipe"
;;
esac
@@ -221,6 +236,33 @@ case "$libc" in
;;
esac
+man1dir=/usr/share/man/man1
+man3dir=/usr/share/man/man3
+man3ext=3pm
+
+case `uname -m` in
+i?86) archname='i586-linux';;
+*) archname=`uname -m`-linux;;
+esac
+
+case $archname in
+sparc64-linux) glibpth="/lib64 /usr/lib64";;
+esac
+
+cf_email='none'
+#libs='-lgdbm -ldb -ldl -lm -lc'
+#libs='-ldl -lm -lc'
+
+usedl='true'
+dlsrc='dl_dlopen.xs'
+d_dosuid='undef'
+d_bincompat3='y'
+
+# We don't want to add /usr/local/include and /usr/local/lib to the search
+# paths, they are already searched by default.
+locincpth=
+loclibpth=
+
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'
@@ -268,6 +310,9 @@ else
echo "Couldn't find tcsh. Csh-based globbing might be broken."
fi
fi
+csh=''
+d_csh='undef'
+full_csh=''
# Shimpei Yamashita <shimpei@socrates.patnet.caltech.edu>
# Message-Id: <33EF1634.B36B6500@pobox.com>
@@ -378,6 +423,8 @@ $define|true|[yY]*)
d_localtime_r_proto="$define"
d_random_r_proto="$define"
+ test -e /lib64/libc.so.6 && libs='-lm -ldl -lcrypt -lpthread'
+
;;
esac
EOCBU
--- ./installperl.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./installperl 2018-09-26 09:54:14.334562132 +0000
@@ -685,7 +685,7 @@ sub installlib {
return if $name eq 'ExtUtils/MakeMaker/version/regex.pm';
my $installlib = $installprivlib;
- if ($dir =~ /^auto\// ||
+ if (($dir =~ /^auto\// && $dir ne 'auto/Compress/Zlib') ||
($name =~ /^(.*)\.(?:pm|pod)$/ && $archpms{$1}) ||
($name =~ /^(.*)\.(?:h|lib)$/i && ($Is_W32 || $Is_NetWare)) ||
$name=~/^Config_(heavy|git)\.pl\z/
--- ./lib/perl5db.pl.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./lib/perl5db.pl 2018-09-26 09:54:14.334562132 +0000
@@ -2366,6 +2366,8 @@ sub _DB__handle_run_command_in_pager_com
open( OUT, ">&STDOUT" ) # XXX: lost message
|| _db_warn("Can't restore DB::OUT");
}
+ # tell readline the new OUT handle
+ $term->Attribs()->{outstream} = *OUT if defined &Term::ReadLine::Gnu::readline;
next CMD;
} ## end unless ($piped = open(OUT,...
@@ -2470,6 +2472,9 @@ sub _DB__at_end_of_every_command {
$obj->selected("");
}
+ # tell readline the new OUT handle
+ $term->Attribs()->{outstream} = *OUT if defined &Term::ReadLine::Gnu::readline;
+
# No pipes now.
$obj->piped("");
} ## end if ($piped)
--- ./utils/perlbug.PL.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./utils/perlbug.PL 2018-09-26 09:54:14.334562132 +0000
@@ -1050,6 +1050,7 @@ sub _message_headers {
diff -Nur perl-5.34.0/utils/perlbug.PL perl-5.34.0_fix/utils/perlbug.PL
--- perl-5.34.0/utils/perlbug.PL 2020-10-24 20:43:34.000000000 +0200
+++ perl-5.34.0_fix/utils/perlbug.PL 2021-08-28 13:55:31.643705420 +0200
@@ -1044,6 +1044,7 @@
$headers{'Cc'} = $cc if ($cc);
$headers{'Message-Id'} = $messageid if ($messageid);
$headers{'Reply-To'} = $from if ($from);

3
perl-5.34.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:82c2e5e5c71b0e10487a80d79140469ab1f8056349ca8545140a224dbbed7ded
size 12881416

View File

@ -1,74 +0,0 @@
submitted upstream
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2018-03-18
Subject: fix calls of timelocal to work after 2019
because year 70 then starts to mean 2070
https://bugzilla.opensuse.org/show_bug.cgi?id=1102840 trackerbug: build fails at
some time
https://rt.perl.org/Ticket/Display.html?id=132896 perl Net::NNTP
https://rt.perl.org/Ticket/Display.html?id=132898 perl Net::FTP => https://rt.cp
an.org/Public/Bug/Display.html?id=124534
https://rt.perl.org/Ticket/Display.html?id=132897 perl doc
--- ./cpan/Time-Local/t/Local.t.orig 2019-11-19 13:44:13.231729499 +0000
+++ ./cpan/Time-Local/t/Local.t 2019-11-19 13:52:27.846523342 +0000
@@ -147,21 +147,21 @@ subtest(
'diff between two calls',
sub {
is(
- timelocal( 0, 0, 1, 1, 0, 90 ) - timelocal( 0, 0, 0, 1, 0, 90 ),
+ timelocal( 0, 0, 1, 1, 0, 1990 ) - timelocal( 0, 0, 0, 1, 0, 1990 ),
3600,
'one hour difference between two calls to timelocal'
);
is(
- timelocal( 1, 2, 3, 1, 0, 100 )
- - timelocal( 1, 2, 3, 31, 11, 99 ),
+ timelocal( 1, 2, 3, 1, 0, 2000 )
+ - timelocal( 1, 2, 3, 31, 11, 1999 ),
24 * 3600,
'one day difference between two calls to timelocal'
);
# Diff beween Jan 1, 1980 and Mar 1, 1980 = (31 + 29 = 60 days)
is(
- timegm( 0, 0, 0, 1, 2, 80 ) - timegm( 0, 0, 0, 1, 0, 80 ),
+ timegm( 0, 0, 0, 1, 2, 1980 ) - timegm( 0, 0, 0, 1, 0, 1980 ),
60 * 24 * 3600,
'60 day difference between two calls to timegm'
);
@@ -176,7 +176,7 @@ subtest(
# treated like 03:00:00 rather than 01:00:00 - negative zone offsets
# used to do the latter.
{
- my $hour = ( localtime( timelocal( 0, 0, 2, 7, 3, 102 ) ) )[2];
+ my $hour = ( localtime( timelocal( 0, 0, 2, 7, 3, 2002 ) ) )[2];
# testers in US/Pacific should get 3,
# other testers should get 2
--- ./cpan/libnet/lib/Net/FTP.pm.orig 2019-11-19 13:47:09.143300523 +0000
+++ ./cpan/libnet/lib/Net/FTP.pm 2019-11-19 13:47:46.179210211 +0000
@@ -262,7 +262,7 @@ sub mdtm {
$ftp->_MDTM($file)
&& $ftp->message =~ /((\d\d)(\d\d\d?))(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/
- ? timegm($8, $7, $6, $5, $4 - 1, $2 eq '19' ? $3 : ($1 - 1900))
+ ? timegm($8, $7, $6, $5, $4 - 1, $2 eq '19' ? ($3 + 1900) : $1)
: undef;
}
--- ./cpan/libnet/lib/Net/NNTP.pm.orig 2019-11-19 13:47:57.431182773 +0000
+++ ./cpan/libnet/lib/Net/NNTP.pm 2019-11-19 13:48:08.143156648 +0000
@@ -596,7 +596,7 @@ sub date {
$nntp->_DATE
&& $nntp->message =~ /(\d{4})(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/
- ? timegm($6, $5, $4, $3, $2 - 1, $1 - 1900)
+ ? timegm($6, $5, $4, $3, $2 - 1, $1)
: undef;
}

View File

@ -1,10 +0,0 @@
--- ./ext/GDBM_File/t/fatal.t.orig 2019-10-24 20:18:04.000000000 +0000
+++ ./ext/GDBM_File/t/fatal.t 2019-11-19 13:40:06.696330179 +0000
@@ -37,6 +37,7 @@ is((open $fh, "<&=$fileno"), undef,
umask(0);
my %h;
isa_ok(tie(%h, 'GDBM_File', 'fatal_dbmx', GDBM_WRCREAT, 0640), 'GDBM_File');
+tied(%h)->setopt(7, 0, length(pack("i", 0))); # turn off mmap mode
isnt((open $fh, "<&=$fileno"), undef, "dup fileno $fileno")
or diag("\$! = $!");

View File

@ -1,5 +1,6 @@
--- ./perl_inc_macro.h.orig 2018-09-22 22:08:14.492755509 +0200
+++ ./perl_inc_macro.h 2018-09-22 22:07:36.049972877 +0200
diff -ur perl-5.34.0/perl_inc_macro.h perl-5.34.0_fix/perl_inc_macro.h
--- perl-5.34.0/perl_inc_macro.h 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/perl_inc_macro.h 2021-08-28 14:20:24.781533820 +0200
@@ -83,10 +83,12 @@
# define INCPUSH_PRIVLIB_EXP S_incpush_use_sep(aTHX_ STR_WITH_LEN(PRIVLIB_EXP), INCPUSH_CAN_RELOCATE);
#endif
@ -7,7 +8,7 @@
+#if 0
#ifdef PERL_OTHERLIBDIRS
# define INCPUSH_PERL_OTHERLIBDIRS S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), \
INCPUSH_ADD_VERSIONED_SUB_DIRS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
INCPUSH_ADD_VERSIONED_SUB_DIRS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
#endif
+#endif
@ -17,22 +18,22 @@
#if defined(SITELIB_STEM) && defined(PERL_INC_VERSION_LIST)
/* Search for version-specific dirs below here */
# define INCPUSH_SITELIB_STEM S_incpush_use_sep(aTHX_ STR_WITH_LEN(SITELIB_STEM), \
- INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_ADD_OLD_VERS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
- INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_ADD_OLD_VERS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
#endif
#if defined(PERL_VENDORLIB_STEM) && defined(PERL_INC_VERSION_LIST)
/* Search for version-specific dirs below here */
# define INCPUSH_PERL_VENDORLIB_STEM S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_VENDORLIB_STEM), \
- INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_ADD_OLD_VERS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
- INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_ADD_OLD_VERS|INCPUSH_NOT_BASEDIR|INCPUSH_CAN_RELOCATE);
#endif
#ifdef PERL_OTHERLIBDIRS
# define INCPUSH_PERL_OTHERLIBDIRS_ARCHONLY S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), \
- INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_CAN_RELOCATE);
- INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS|INCPUSH_CAN_RELOCATE);
+ INCPUSH_CAN_RELOCATE);
#endif

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Thu Sep 2 15:22:45 UTC 2021 - Dirk Stoecker <opensuse@dstoecker.de>
- update to 5.34.0
* Experimental Try/Catch Syntax
* Blanks freely allowed within but adjacent to curly braces
* New octal syntax 0oddddd
* Fix a memory leak in RegEx [GH #18604]
* ExtUtils::PL2Bat 0.004 has been added to the Perl core.
* Updated Modules and Pragmata
- Rebase perl-5.28.0.dif to perl-5.34.0.dif
- Rebase perl-incfix.diff
- Rebase perl_skip_flaky_tests_powerpc.patch
- Drop perl-gdbm-test-no-mmap.diff (no longer needed with gdbm 1.20)
- Add c029d660f2fe60699cf64bbb3fa9f671a1a370d5.patch to fix build with
gdbm 1.20
- Drop perl-fix2020.patch (included upstream)
-------------------------------------------------------------------
Sun Mar 14 20:57:51 UTC 2021 - Dirk Müller <dmueller@suse.com>

118
perl.spec
View File

@ -16,10 +16,10 @@
#
%define pversion 5.32.1
%global versionlist 5.32.0
%define pversion 5.34.0
%global versionlist 5.34.0
Name: perl
Version: 5.32.1
Version: 5.34.0
Release: 0
Summary: The Perl interpreter
License: Artistic-1.0 OR GPL-1.0-or-later
@ -30,7 +30,7 @@ Source1: %{name}-rpmlintrc
Source2: macros.perl
Source3: README.macros
Source4: baselibs.conf
Patch0: perl-5.28.0.dif
Patch0: perl-5.34.0.dif
Patch3: perl-nroff.diff
Patch4: perl-netcmdutf8.diff
Patch5: perl-HiRes.t-timeout.diff
@ -42,78 +42,79 @@ Patch9: perl-incfix.diff
Patch11: perl-5.18.2-overflow.diff
# PATCH-FIX-OPENSUSE
Patch12: perl-reproducible.patch
# PATCH-FIX-OPENSUSE skip flaky tests powerpc as bypass https://bugzilla.suse.com/show_bug.cgi?id=1063176
Patch13: perl_skip_flaky_tests_powerpc.patch
Patch14: posix-sigaction.patch
Patch15: perl-gdbm-test-no-mmap.diff
# PATCH-FIX-UPSTREAM unmerged
Patch17: perl-fix2020.patch
# PATCH-FIX-UPSTREAM https://github.com/Perl/perl5/pull/18919 - Fix build with gdbm 1.20
Patch15: https://github.com/Perl/perl5/commit/c029d660f2fe60699cf64bbb3fa9f671a1a370d5.patch
# PATCH-FIX-UPSTREAM unmerged https://www.nntp.perl.org/group/perl.perl5.porters/2018/12/msg253240.html
Patch18: perl-reproducible2.patch
BuildRequires: db-devel
BuildRequires: gdbm-devel
BuildRequires: libbz2-devel
BuildRequires: ncurses-devel
# For t/op/magic and dist/threads/t/join
BuildRequires: procps
BuildRequires: xz
BuildRequires: zlib-devel
Requires: perl-base = %{version}
Suggests: perl-doc = %{version}
Provides: perl-500
Provides: perl-Filter-Simple = 0.96
Provides: perl-Archive-Tar = 2.38
Provides: perl(:MODULE_COMPAT_%{pversion})
Provides: perl(:MODULE_COMPAT_5.32.0)
Obsoletes: perl-Filter-Simple <= 0.96
Provides: perl-I18N-LangTags = 0.44
Obsoletes: perl-I18N-LangTags <= 0.44
Provides: perl-MIME-Base64 = 3.15
Obsoletes: perl-MIME-Base64 <= 3.15
Provides: perl-Storable = 3.21
Obsoletes: perl-Storable <= 3.21
Provides: perl-Test-Simple = 1.302175
Obsoletes: perl-Test-Simple <= 1.302175
Provides: perl-Text-Balanced = 2.03
Obsoletes: perl-Text-Balanced <= 2.03
Provides: perl-Time-HiRes = 1.9764
Obsoletes: perl-Time-HiRes <= 1.9764
Provides: perl-libnet = 3.11
Obsoletes: perl-libnet <= 3.11
Provides: perl-Compress-Raw-Zlib = 2.093
Obsoletes: perl-Compress-Raw-Zlib <= 2.093
Provides: perl-Compress-Zlib = 2.093
Obsoletes: perl-Compress-Zlib <= 2.093
Provides: perl-IO-Compress-Base = 2.093
Obsoletes: perl-IO-Compress-Base <= 2.093
Provides: perl-IO-Compress-Zlib = 2.093
Obsoletes: perl-IO-Compress-Zlib <= 2.093
Provides: perl-IO-Zlib = 1.10
Obsoletes: perl-IO-Zlib <= 1.10
Provides: perl-Archive-Tar = 2.36
Obsoletes: perl-Archive-Tar <= 2.36
Provides: perl-Locale-Maketext-Simple = 0.21
Obsoletes: perl-Locale-Maketext-Simple <= 0.21
Provides: perl-Pod-Escapes = 1.07
Obsoletes: perl-Pod-Escapes <= 1.07
Provides: perl-Pod-Simple = 3.40
Obsoletes: perl-Pod-Simple <= 3.40
Provides: perl-ExtUtils-ParseXS = 3.40
Obsoletes: perl-ExtUtils-ParseXS <= 3.40
Obsoletes: perl-Archive-Tar <= 2.38
Provides: perl-autodie = 2.34
Obsoletes: perl-autodie <= 2.34
Provides: perl-Compress-Raw-Zlib = 2.101
Obsoletes: perl-Compress-Raw-Zlib <= 2.101
Provides: perl-Compress-Zlib = 2.101
Obsoletes: perl-Compress-Zlib <= 2.101
Provides: perl-CPAN-Meta = 2.150010
Obsoletes: perl-CPAN-Meta <= 2.150010
Provides: perl-CPAN-Meta-YAML = 0.018
Obsoletes: perl-CPAN-Meta-YAML <= 0.018
Provides: perl-ExtUtils-CBuilder = 0.280234
Obsoletes: perl-ExtUtils-CBuilder <= 0.280234
Provides: perl-IO-Socket-IP = 0.39
Obsoletes: perl-IO-Socket-IP <= 0.39
Provides: perl-ExtUtils-CBuilder = 0.280236
Obsoletes: perl-ExtUtils-CBuilder <= 0.280236
Provides: perl-ExtUtils-ParseXS = 3.43
Obsoletes: perl-ExtUtils-ParseXS <= 3.43
Provides: perl-Filter-Simple = 0.96
Obsoletes: perl-Filter-Simple <= 0.96
Provides: perl-I18N-LangTags = 0.44
Obsoletes: perl-I18N-LangTags <= 0.44
Provides: perl-IO-Compress-Base = 2.102
Obsoletes: perl-IO-Compress-Base <= 2.102
Provides: perl-IO-Compress-Zlib = 2.102
Obsoletes: perl-IO-Compress-Zlib <= 2.102
Provides: perl-IO-Socket-IP = 0.41
Obsoletes: perl-IO-Socket-IP <= 0.41
Provides: perl-IO-Zlib = 1.11
Obsoletes: perl-IO-Zlib <= 1.11
Provides: perl-libnet = 3.11
Obsoletes: perl-libnet <= 3.11
Provides: perl-Locale-Maketext-Simple = 0.21
Obsoletes: perl-Locale-Maketext-Simple <= 0.21
Provides: perl-MIME-Base64 = 3.15
Obsoletes: perl-MIME-Base64 <= 3.15
Provides: perl-Parse-CPAN-Meta = 2.150010
Obsoletes: perl-Parse-CPAN-Meta <= 2.150010
Provides: perl-PathTools = 3.75
Obsoletes: perl-PathTools <= 3.75
Provides: perl-autodie = 2.32
Obsoletes: perl-autodie <= 2.32
Provides: perl-Test-Harness = 3.42
Obsoletes: perl-Test-Harness <= 3.42
Provides: perl-version = 0.9924
Obsoletes: perl-version <= 0.9924
Provides: perl-Pod-Escapes = 1.07
Obsoletes: perl-Pod-Escapes <= 1.07
Provides: perl-Pod-Simple = 3.42
Obsoletes: perl-Pod-Simple <= 3.42
Provides: perl-Storable = 3.23
Obsoletes: perl-Storable <= 3.23
Provides: perl-Test-Harness = 3.43
Obsoletes: perl-Test-Harness <= 3.43
Provides: perl-Test-Simple = 1.302183
Obsoletes: perl-Test-Simple <= 1.302183
Provides: perl-Text-Balanced = 2.04
Obsoletes: perl-Text-Balanced <= 2.04
Provides: perl-Time-HiRes = 1.9767
Obsoletes: perl-Time-HiRes <= 1.9767
Provides: perl-version = 0.9928
Obsoletes: perl-version <= 0.9928
%if "%{version}" != "%{pversion}"
Provides: perl = %{pversion}-%{release}
%endif
@ -167,7 +168,7 @@ Perl man pages and pod files.
%prep
%setup -q -n perl-%{pversion}
cp -p %{SOURCE3} .
%patch0
%patch0 -p1
%patch3
%patch4
%patch5
@ -175,14 +176,13 @@ cp -p %{SOURCE3} .
%patch7
%ifarch ppc ppc64 ppc64le
%patch8 -p1
%patch13
%patch13 -p1
%endif
%patch9
%patch9 -p1
%patch11
%patch12 -p1
%patch14
%patch15
%patch17
%patch15 -p1
%patch18
%build

View File

@ -1,14 +1,6 @@
From: Michel Normand <normand@linux.vnet.ibm.com>
Subject: perl skip flaky tests powerpc
Date: Wed, 10 Jan 2018 12:55:38 +0100
skip flaky tests powerpc
as bypass https://bugzilla.suse.com/show_bug.cgi?id=1063176
Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
--- ./cpan/Memoize/t/expmod_t.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./cpan/Memoize/t/expmod_t.t 2020-10-27 15:29:28.166018437 +0000
diff -ur perl-5.34.0/cpan/Memoize/t/expmod_t.t perl-5.34.0_fix/cpan/Memoize/t/expmod_t.t
--- perl-5.34.0/cpan/Memoize/t/expmod_t.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/cpan/Memoize/t/expmod_t.t 2021-09-02 18:23:18.027586699 +0200
@@ -2,6 +2,7 @@
# test caching timeout
@ -17,8 +9,9 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
use lib '..';
use Memoize;
--- ./dist/Time-HiRes/t/alarm.t.orig 2020-10-27 15:29:07.838063807 +0000
+++ ./dist/Time-HiRes/t/alarm.t 2020-10-27 15:29:28.166018437 +0000
diff -ur perl-5.34.0/dist/Time-HiRes/t/alarm.t perl-5.34.0_fix/dist/Time-HiRes/t/alarm.t
--- perl-5.34.0/dist/Time-HiRes/t/alarm.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/dist/Time-HiRes/t/alarm.t 2021-09-02 18:23:18.027586699 +0200
@@ -1,6 +1,6 @@
use strict;
@ -27,8 +20,9 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
BEGIN { push @INC, '.' }
use t::Watchdog;
--- ./dist/Time-HiRes/t/clock.t.orig 2020-10-27 15:29:07.838063807 +0000
+++ ./dist/Time-HiRes/t/clock.t 2020-10-27 15:29:28.166018437 +0000
diff -ur perl-5.34.0/dist/Time-HiRes/t/clock.t perl-5.34.0_fix/dist/Time-HiRes/t/clock.t
--- perl-5.34.0/dist/Time-HiRes/t/clock.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/dist/Time-HiRes/t/clock.t 2021-09-02 18:23:18.027586699 +0200
@@ -1,6 +1,6 @@
use strict;
@ -37,9 +31,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
BEGIN { push @INC, '.' }
use t::Watchdog;
--- ./dist/Time-HiRes/t/nanosleep.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./dist/Time-HiRes/t/nanosleep.t 2020-10-27 15:29:28.166018437 +0000
@@ -8,7 +8,7 @@ BEGIN {
diff -ur perl-5.34.0/dist/Time-HiRes/t/nanosleep.t perl-5.34.0_fix/dist/Time-HiRes/t/nanosleep.t
--- perl-5.34.0/dist/Time-HiRes/t/nanosleep.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/dist/Time-HiRes/t/nanosleep.t 2021-09-02 18:23:18.027586699 +0200
@@ -8,7 +8,7 @@
}
}
@ -48,9 +43,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
BEGIN { push @INC, '.' }
use t::Watchdog;
--- ./dist/Time-HiRes/t/usleep.t.orig 2020-10-27 15:29:07.838063807 +0000
+++ ./dist/Time-HiRes/t/usleep.t 2020-10-27 15:29:28.166018437 +0000
@@ -8,7 +8,7 @@ BEGIN {
diff -ur perl-5.34.0/dist/Time-HiRes/t/usleep.t perl-5.34.0_fix/dist/Time-HiRes/t/usleep.t
--- perl-5.34.0/dist/Time-HiRes/t/usleep.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/dist/Time-HiRes/t/usleep.t 2021-09-02 18:23:18.027586699 +0200
@@ -8,7 +8,7 @@
}
}
@ -59,9 +55,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
BEGIN { push @INC, '.' }
use t::Watchdog;
--- ./t/op/alarm.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./t/op/alarm.t 2020-10-27 15:29:28.170018428 +0000
@@ -11,6 +11,7 @@ use Config;
diff -ur perl-5.34.0/t/op/alarm.t perl-5.34.0_fix/t/op/alarm.t
--- perl-5.34.0/t/op/alarm.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/t/op/alarm.t 2021-09-02 18:23:18.027586699 +0200
@@ -11,6 +11,7 @@
if ( !$Config{d_alarm} ) {
skip_all("alarm() not implemented on this platform");
}
@ -69,9 +66,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
plan tests => 5;
my $Perl = which_perl();
--- ./t/op/sigsystem.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./t/op/sigsystem.t 2020-10-27 15:29:28.170018428 +0000
@@ -11,6 +11,7 @@ use strict;
diff -ur perl-5.34.0/t/op/sigsystem.t perl-5.34.0_fix/t/op/sigsystem.t
--- perl-5.34.0/t/op/sigsystem.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/t/op/sigsystem.t 2021-09-02 18:23:18.027586699 +0200
@@ -11,6 +11,7 @@
use constant TRUE => ($^X, '-e', 'exit 0');
use Data::Dumper;
@ -79,9 +77,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
plan tests => 4;
SKIP: {
--- ./t/op/sselect.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./t/op/sselect.t 2020-10-27 15:29:28.170018428 +0000
@@ -13,6 +13,8 @@ BEGIN {
diff -ur perl-5.34.0/t/op/sselect.t perl-5.34.0_fix/t/op/sselect.t
--- perl-5.34.0/t/op/sselect.t 2020-06-15 01:01:25.000000000 +0200
+++ perl-5.34.0_fix/t/op/sselect.t 2021-09-02 18:23:18.027586699 +0200
@@ -13,6 +13,8 @@
skip_all("Win32 miniperl has no socket select")
if $^O eq "MSWin32" && is_miniperl();
@ -90,9 +89,10 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
plan (16);
my $blank = "";
--- ./t/op/stat.t.orig 2020-06-14 23:01:25.000000000 +0000
+++ ./t/op/stat.t 2020-10-27 15:29:28.170018428 +0000
@@ -9,6 +9,7 @@ BEGIN {
diff -ur perl-5.34.0/t/op/stat.t perl-5.34.0_fix/t/op/stat.t
--- perl-5.34.0/t/op/stat.t 2021-01-21 00:04:44.000000000 +0100
+++ perl-5.34.0_fix/t/op/stat.t 2021-09-02 18:23:18.027586699 +0200
@@ -9,6 +9,7 @@
use strict;
use warnings;
use Config;
@ -100,3 +100,15 @@ Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
my ($Null, $Curdir);
if(eval {require File::Spec; 1}) {
diff -ur perl-5.34.0/t/porting/customized.dat perl-5.34.0_fix/t/porting/customized.dat
--- perl-5.34.0/t/porting/customized.dat 2021-05-20 18:38:19.000000000 +0200
+++ perl-5.34.0_fix/t/porting/customized.dat 2021-09-02 18:24:44.556675449 +0200
@@ -9,7 +9,7 @@
Math::Complex cpan/Math-Complex/t/Trig.t 508f8e27373c08228be13ca5d42b28812ab0e020
Math::Complex cpan/Math-Complex/t/underbar.t 97e7b9615658eefc67a710d4b258349cc5bace63
Memoize cpan/Memoize/Memoize.pm 902092ff91cdec9c7b4bd06202eb179e1ce26ca2
-Memoize cpan/Memoize/t/expmod_t.t a1c3d03fd3ec2e7c6c835f02316475756e1b16b7
+Memoize cpan/Memoize/t/expmod_t.t 72542117ab47558fca0eb0791df27312b5d84801
Memoize cpan/Memoize/t/speed.t 89fe8c8928f0164c9ed898b5a427dbbc814e9976
Net::Ping dist/Net-Ping/t/000_load.t deff5dc2ca54dae28cb19d3631427db127279ac2
Net::Ping dist/Net-Ping/t/001_new.t 7b24e05672e22edfe3e6b5cc0277f815efe557e5