diff --git a/perl-5.18.2-overflow.diff b/perl-5.18.2-overflow.diff index cfee578..4919a13 100644 --- a/perl-5.18.2-overflow.diff +++ b/perl-5.18.2-overflow.diff @@ -1,13 +1,11 @@ -Index: sv.c -=================================================================== ---- sv.c.orig -+++ sv.c -@@ -2153,7 +2153,7 @@ S_sv_2iuv_common(pTHX_ SV *const sv) +--- ./sv.c.orig 2022-05-21 21:26:59.000000000 +0000 ++++ ./sv.c 2022-06-23 11:53:50.561877702 +0000 +@@ -2002,7 +2002,7 @@ S_sv_2iuv_common(pTHX_ SV *const sv) #ifndef NV_PRESERVES_UV && SvIVX(sv) != IV_MIN /* avoid negating IV_MIN below */ - && (((UV)1 << NV_PRESERVES_UV_BITS) > -- (UV)(SvIVX(sv) > 0 ? SvIVX(sv) : -SvIVX(sv))) -+ (UV)(SvIVX(sv) > 0 ? (UV)SvIVX(sv) : -(UV)SvIVX(sv))) - /* Don't flag it as "accurately an integer" if the number - came from a (by definition imprecise) NV operation, and - we're outside the range of NV integer precision */ + && (((UV)1 << NV_PRESERVES_UV_BITS) > +- (UV)(SvIVX(sv) > 0 ? SvIVX(sv) : -SvIVX(sv))) ++ (UV)(SvIVX(sv) > 0 ? (UV)SvIVX(sv) : -(UV)SvIVX(sv))) + /* Don't flag it as "accurately an integer" if the number + came from a (by definition imprecise) NV operation, and + we're outside the range of NV integer precision */ diff --git a/perl-5.34.1.tar.xz b/perl-5.34.1.tar.xz deleted file mode 100644 index 61f56af..0000000 --- a/perl-5.34.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6d52cf833ff1af27bb5e986870a2c30cec73c044b41e3458cd991f94374039f7 -size 12760168 diff --git a/perl-5.34.0.dif b/perl-5.36.0.diff similarity index 71% rename from perl-5.34.0.dif rename to perl-5.36.0.diff index 7581e6b..21716bc 100644 --- a/perl-5.34.0.dif +++ b/perl-5.36.0.diff @@ -1,7 +1,6 @@ -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 @@ +--- ./Configure.orig 2022-05-20 00:01:22.000000000 +0000 ++++ ./Configure 2022-06-23 11:49:51.734269721 +0000 +@@ -114,7 +114,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi 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" @@ -10,7 +9,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure paths="$paths /sbin /usr/sbin /usr/libexec" paths="$paths /system/gnu_library/bin" -@@ -1458,7 +1458,7 @@ +@@ -1468,7 +1468,7 @@ loclibpth="/usr/local/lib /opt/local/lib loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" : general looking path for locating libraries @@ -19,7 +18,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure 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" -@@ -2556,7 +2556,7 @@ +@@ -2566,7 +2566,7 @@ uname zip " pth=`echo $PATH | sed -e "s/$p_/ /g"` @@ -28,7 +27,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure for file in $loclist; do eval xxx=\$$file case "$xxx" in -@@ -20313,14 +20313,20 @@ +@@ -20594,14 +20594,20 @@ int main(int argc, char *argv[]) } EOCP set try @@ -49,7 +48,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure i_db=$undef case " $libs " in *"-ldb "*) -@@ -20358,7 +20364,7 @@ +@@ -20639,7 +20645,7 @@ int main() } #endif EOCP @@ -58,7 +57,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure if $compiler_warning try.out >>/dev/null 2>&1 ; then db_hashtype='int' else -@@ -20398,7 +20404,7 @@ +@@ -20679,7 +20685,7 @@ int main() } #endif EOCP @@ -67,7 +66,7 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure if $compiler_warning try.out >>/dev/null 2>&1 ; then db_prefixtype='int' else -@@ -25079,7 +25085,7 @@ +@@ -25436,7 +25442,7 @@ passcat='$passcat' patchlevel='$patchlevel' path_sep='$path_sep' perl5='$perl5' @@ -75,251 +74,88 @@ diff -Nur perl-5.34.0/Configure perl-5.34.0_fix/Configure +perl='perl' perl_patchlevel='$perl_patchlevel' perl_static_inline='$perl_static_inline' - perladmin='$perladmin' -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 < - $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 + perl_thread_local='$perl_thread_local' +--- ./SuSE/SuSEconfig.perl.orig 2022-06-23 11:49:51.738269715 +0000 ++++ ./SuSE/SuSEconfig.perl 2022-06-23 11:49:51.738269715 +0000 +@@ -0,0 +1,76 @@ ++#! /bin/bash ++# ++# Copyright (c) 1996 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved. ++# ++# Author: Burchard Steinbild , 1996 ++# Martin Scherbaum , 5/1997 ++# Ruediger Oertel , 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 + - # Configure may fail to find lstat() since it's a static/inline - # function in . - 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 ++# ++# 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 + -+case `uname -m` in -+i?86) archname='i586-linux';; -+*) archname=`uname -m`-linux;; -+esac ++test -f /etc/sysconfig/suseconfig || { echo "No /etc/sysconfig/suseconfig found." && exit 1 ; } ++. /etc/sysconfig/suseconfig + -+case $archname in -+sparc64-linux) glibpth="/lib64 /usr/lib64";; -+esac ++# this skript only works in a running system. + -+cf_email='none' -+#libs='-lgdbm -ldb -ldl -lm -lc' -+#libs='-ldl -lm -lc' ++test -n "$ROOT" && exit 0 + -+usedl='true' -+dlsrc='dl_dlopen.xs' -+d_dosuid='undef' -+d_bincompat3='y' ++perl -e 'exit 0' 2>/dev/null || { echo "Perl not found." && exit 0 ; } + -+# 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= ++# ++# 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/"` + - 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 - # 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' ++NEEDED="false" + - ;; - 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; ++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 + - # 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 ++# ++# 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 2022-06-23 11:49:51.738269715 +0000 ++++ ./SuSE/perllocal.SuSE 2022-06-23 11:49:51.738269715 +0000 @@ -0,0 +1,83 @@ +#!/usr/bin/perl +# Copyright (c) 1998 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved. @@ -404,89 +240,8 @@ diff -Nur perl-5.34.0/SuSE/perllocal.SuSE perl-5.34.0_fix/SuSE/perllocal.SuSE +} else { + print "SuSEconfig.perl: Can't write to file $Config{'installarchlib'}/perllocal.pod !\n\n"; +} -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 , 1996 -+# Martin Scherbaum , 5/1997 -+# Ruediger Oertel , 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 +--- ./SuSE/sysconfig.suseconfig-perl.orig 2022-06-23 11:49:51.738269715 +0000 ++++ ./SuSE/sysconfig.suseconfig-perl 2022-06-23 11:49:51.738269715 +0000 @@ -0,0 +1,8 @@ +## Path: System/SuSEconfig +## Type: yesno @@ -496,10 +251,238 @@ diff -Nur perl-5.34.0/SuSE/sysconfig.suseconfig-perl perl-5.34.0_fix/SuSE/syscon +# May SuSEconfig modify your perllocal.pod? (yes/no) +# +CREATE_PERLLOCAL_POD="yes" -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 @@ +--- ./cpan/Compress-Raw-Zlib/config.in.orig 2021-04-29 14:35:34.000000000 +0000 ++++ ./cpan/Compress-Raw-Zlib/config.in 2022-06-23 11:49:51.734269721 +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 2022-04-17 14:55:05.000000000 +0000 ++++ ./cpan/Encode/bin/enc2xs 2022-06-23 11:49:51.734269721 +0000 +@@ -1080,7 +1080,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 2020-12-28 16:57:43.000000000 +0000 ++++ ./cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm 2022-06-23 11:49:51.734269721 +0000 +@@ -206,8 +206,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 2020-12-28 16:57:43.000000000 +0000 ++++ ./cpan/File-Temp/lib/File/Temp.pm 2022-06-23 11:49:51.734269721 +0000 +@@ -151,7 +151,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 2020-12-28 16:57:43.000000000 +0000 ++++ ./cpan/Sys-Syslog/t/syslog.t 2022-06-23 11:49:51.734269721 +0000 +@@ -222,6 +222,7 @@ SKIP: { + } + } + else { ++ $r = 1 unless -e '/dev/log'; + ok( $r, "setlogsock() should return true: '$r'" ); + } + +--- ./cpan/libnet/lib/Net/Config.pm.orig 2022-04-24 20:29:00.000000000 +0000 ++++ ./cpan/libnet/lib/Net/Config.pm 2022-06-23 11:49:51.734269721 +0000 +@@ -51,7 +51,7 @@ our %NetConfig = ( + { + ## no critic (BuiltinFunctions::ProhibitStringyEval) + $^O eq 'MacOS' and eval < + $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 2019-02-18 09:59:22.000000000 +0000 ++++ ./ext/ODBM_File/Makefile.PL 2022-06-23 11:49:51.734269721 +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 2019-02-18 09:59:22.000000000 +0000 ++++ ./ext/ODBM_File/hints/linux.pl 2022-06-23 11:49:51.734269721 +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 2020-12-28 16:57:44.000000000 +0000 ++++ ./hints/linux.sh 2022-06-23 11:49:51.734269721 +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 . + d_lstat=define +@@ -147,6 +161,7 @@ case "$optimize" in + esac + ;; + esac ++ optimize="$optimize --pipe" + ;; + esac + +@@ -234,6 +249,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.' +@@ -281,6 +323,9 @@ else + echo "Couldn't find tcsh. Csh-based globbing might be broken." + fi + fi ++csh='' ++d_csh='undef' ++full_csh='' + + # Shimpei Yamashita + # Message-Id: <33EF1634.B36B6500@pobox.com> +@@ -391,6 +436,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 2022-02-24 02:35:27.000000000 +0000 ++++ ./installperl 2022-06-23 11:49:51.734269721 +0000 +@@ -650,7 +650,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) || + $name=~/^Config_(heavy|git)\.pl\z/ +--- ./lib/perl5db.pl.orig 2022-05-14 13:28:57.000000000 +0000 ++++ ./lib/perl5db.pl 2022-06-23 11:49:51.734269721 +0000 +@@ -2369,6 +2369,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,... + +@@ -2473,6 +2475,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 2020-12-28 16:57:44.000000000 +0000 ++++ ./utils/perlbug.PL 2022-06-23 11:49:51.738269715 +0000 +@@ -1044,6 +1044,7 @@ sub _message_headers { $headers{'Cc'} = $cc if ($cc); $headers{'Message-Id'} = $messageid if ($messageid); $headers{'Reply-To'} = $from if ($from); diff --git a/perl-5.36.0.tar.xz b/perl-5.36.0.tar.xz new file mode 100644 index 0000000..82e75aa --- /dev/null +++ b/perl-5.36.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f386dccbee8e26286404b2cca144e1005be65477979beb9b1ba272d4819bcf0 +size 13051500 diff --git a/perl.changes b/perl.changes index a64b04d..191905e 100644 --- a/perl.changes +++ b/perl.changes @@ -1,3 +1,22 @@ +------------------------------------------------------------------- +Thu Jun 23 13:54:51 CEST 2022 - mls@suse.de + +- Update to 5.36.0 + * the signatures and isa features are no longer experimental and + part of the v5.36 feature bundle + * the v5.36 bundle also enables warnings + * new '-g' command line flag (alias for -0777) + * support for unicode 14.0 + * regex sets are no longer considered experimental + * experimental iterating over multiple values at a time + * experimental new builtin module + * experimental defer blocks + * try/catch can now have a finally block + * experimental non-ASCII delimiters for quote-like operators + * a physically empty sort is now a compile-time error +- Rebase perl-5.34.0.dif to perl-5.36.0.diff +- Refresh perl-5.18.2-overflow.diff + ------------------------------------------------------------------- Wed May 4 06:41:37 UTC 2022 - Dirk Stoecker diff --git a/perl.spec b/perl.spec index e346648..fd1f6f9 100644 --- a/perl.spec +++ b/perl.spec @@ -17,15 +17,17 @@ %define flavor @BUILD_FLAVOR@%{nil} -%if "%{flavor}" != "" +%if "%{?flavor}" != "" && "%{?flavor}" != ("@BUILD_" + "FLAVOR@") %define name_suffix -%{flavor} +%else +%define name_suffix %{nil} %endif -%define pversion 5.34.1 -# set to %nil when equal to pversion -%global versionlist 5.34.0 +%define pversion 5.36.0 +# set to nil when equal to pversion +%global versionlist %{nil} Name: perl%{?name_suffix} -Version: 5.34.1 +Version: 5.36.0 Release: 0 Summary: The Perl interpreter License: Artistic-1.0 OR GPL-1.0-or-later @@ -36,7 +38,7 @@ Source1: perl-rpmlintrc Source2: macros.perl Source3: README.macros Source4: baselibs.conf -Patch0: perl-5.34.0.dif +Patch0: perl-5.36.0.diff Patch3: perl-nroff.diff Patch4: perl-netcmdutf8.diff Patch5: perl-HiRes.t-timeout.diff @@ -174,7 +176,7 @@ Perl man pages and pod files. %prep %setup -q -n perl-%{pversion} cp -p %{SOURCE3} . -%patch0 -p1 +%patch0 %patch3 %patch4 %patch5