diff --git a/macros.perl b/macros.perl index 1d8124d..1e634c3 100644 --- a/macros.perl +++ b/macros.perl @@ -98,15 +98,13 @@ for i in ${all_dir[@]}; do\ continue\ else\ if [ -d ${base_dir}/${i} ]; then\ - RES=`find "${base_dir}/${i}" -maxdepth 1 -type f`\ - if [ -n "$RES" ]; then\ - fgen_dir "%{perl_vendorlib}/${i}"\ - for file in $RES; do\ - fgen_file "%{perl_vendorlib}/${i}/$(basename ${file})"\ - done\ - else\ + if [ "%{perl_vendorlib}/${i}" != "%{perl_vendorarch}" ]; then\ fgen_dir "%{perl_vendorlib}/${i}"\ fi\ + RES=`find "${base_dir}/${i}" -maxdepth 1 -type f`\ + for file in $RES; do\ + fgen_file "%{perl_vendorlib}/${i}/$(basename ${file})"\ + done\ fi\ fi\ done\ diff --git a/perl-5.22.0_wrong_rpm_provides.diff b/perl-5.22.0_wrong_rpm_provides.diff index 6e17e86..4817571 100644 --- a/perl-5.22.0_wrong_rpm_provides.diff +++ b/perl-5.22.0_wrong_rpm_provides.diff @@ -2,7 +2,7 @@ +++ ./cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm 2017-08-30 12:16:04.561183753 +0000 @@ -6,7 +6,8 @@ use warnings; - our $VERSION = '1.999806'; + our $VERSION = '1.999811'; -package Math::BigInt; +package Math::BigInt # line break to prevent wrong rpm provides diff --git a/perl-5.26.2.tar.xz b/perl-5.26.2.tar.xz deleted file mode 100644 index 9398f5e..0000000 --- a/perl-5.26.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0f8c0fb1b0db4681adb75c3ba0dd77a0472b1b359b9e80efd79fc27b4352132c -size 11931624 diff --git a/perl-5.26.0.dif b/perl-5.28.0.dif similarity index 79% rename from perl-5.26.0.dif rename to perl-5.28.0.dif index 509c27c..03c905d 100644 --- a/perl-5.26.0.dif +++ b/perl-5.28.0.dif @@ -1,6 +1,6 @@ ---- ./Configure.orig 2017-05-30 09:57:56.000000000 +0000 -+++ ./Configure 2017-08-30 12:05:40.255184858 +0000 -@@ -117,7 +117,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi +--- ./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 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 +9,7 @@ paths="$paths /sbin /usr/sbin /usr/libexec" paths="$paths /system/gnu_library/bin" -@@ -1464,7 +1464,7 @@ loclibpth="/usr/local/lib /opt/local/lib +@@ -1448,7 +1448,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 @@ -18,7 +18,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" -@@ -2559,7 +2559,7 @@ uname +@@ -2545,7 +2545,7 @@ uname zip " pth=`echo $PATH | sed -e "s/$p_/ /g"` @@ -27,25 +27,7 @@ for file in $loclist; do eval xxx=\$$file case "$xxx" in -@@ -11963,7 +11963,7 @@ void xxx(int n, ...) - va_start(args, n); - exit((unsigned long)vsprintf(buf,"%s",args) > 10L); - } --int main() { xxx(1, "foo"); } -+int main() { xxx(1, "foo"); return 0; } - - #else /* I_VARARGS */ - -@@ -11975,7 +11975,7 @@ va_dcl - va_start(args); - exit((unsigned long)vsprintf(buf,"%s",args) > 10L); - } --int main() { xxx("foo"); } -+int main() { xxx("foo"); return 0; } - - #endif - -@@ -20516,14 +20516,20 @@ int main(int argc, char *argv[]) +@@ -19917,14 +19917,20 @@ int main(int argc, char *argv[]) } EOCP set try @@ -66,7 +48,7 @@ i_db=$undef case " $libs " in *"-ldb "*) -@@ -20564,7 +20570,7 @@ int main() +@@ -19965,7 +19971,7 @@ int main() } #endif EOCP @@ -75,7 +57,7 @@ if $contains warning try.out >>/dev/null 2>&1 ; then db_hashtype='int' else -@@ -20607,7 +20613,7 @@ int main() +@@ -20008,7 +20014,7 @@ int main() } #endif EOCP @@ -84,7 +66,7 @@ if $contains warning try.out >>/dev/null 2>&1 ; then db_prefixtype='int' else -@@ -25304,7 +25310,7 @@ passcat='$passcat' +@@ -24656,7 +24662,7 @@ passcat='$passcat' patchlevel='$patchlevel' path_sep='$path_sep' perl5='$perl5' @@ -93,8 +75,8 @@ perl_patchlevel='$perl_patchlevel' perl_static_inline='$perl_static_inline' perladmin='$perladmin' ---- ./SuSE/SuSEconfig.perl.orig 2017-08-30 12:05:40.265184858 +0000 -+++ ./SuSE/SuSEconfig.perl 2017-08-30 12:05:40.265184858 +0000 +--- ./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 +# @@ -172,9 +154,9 @@ +# +# end of file SuSEconfig.perl +# ---- ./SuSE/perllocal.SuSE.orig 2017-08-30 12:05:40.264184858 +0000 -+++ ./SuSE/perllocal.SuSE 2017-08-30 12:05:40.264184858 +0000 -@@ -0,0 +1,84 @@ +--- ./SuSE/perllocal.SuSE.orig 2018-09-26 09:54:14.334562132 +0000 ++++ ./SuSE/perllocal.SuSE 2018-09-26 09:54:14.334562132 +0000 +@@ -0,0 +1,83 @@ +#!/usr/bin/perl +# Copyright (c) 1998 S.u.S.E. Gmbh Fuerth, Germany. All rights reserved. +# @@ -258,9 +240,8 @@ +} else { + print "SuSEconfig.perl: Can't write to file $Config{'installarchlib'}/perllocal.pod !\n\n"; +} -+ ---- ./SuSE/sysconfig.suseconfig-perl.orig 2017-08-30 12:05:40.265184858 +0000 -+++ ./SuSE/sysconfig.suseconfig-perl 2017-08-30 12:05:40.265184858 +0000 +--- ./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 @@ -0,0 +1,8 @@ +## Path: System/SuSEconfig +## Type: yesno @@ -270,8 +251,8 @@ +# May SuSEconfig modify your perllocal.pod? (yes/no) +# +CREATE_PERLLOCAL_POD="yes" ---- ./cpan/Compress-Raw-Zlib/config.in.orig 2017-02-28 12:36:42.000000000 +0000 -+++ ./cpan/Compress-Raw-Zlib/config.in 2017-08-30 12:05:40.256184858 +0000 +--- ./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 # @@ -282,12 +263,12 @@ +BUILD_ZLIB = False +INCLUDE = /usr/include +LIB = /usr/lib - OLD_ZLIB = False GZIP_OS_CODE = AUTO_DETECT ---- ./cpan/Encode/bin/enc2xs.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./cpan/Encode/bin/enc2xs 2017-08-30 12:05:40.257184858 +0000 -@@ -1094,7 +1094,7 @@ sub make_configlocal_pm { + +--- ./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; } }; @@ -296,8 +277,8 @@ $_ModLines = ""; for my $enc ( sort keys %LocalMod ) { $_ModLines .= ---- ./cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm 2017-08-30 12:05:40.257184858 +0000 +--- ./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) @@ -312,8 +293,8 @@ } } return(@missing); ---- ./cpan/File-Temp/lib/File/Temp.pm.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./cpan/File-Temp/lib/File/Temp.pm 2017-08-30 12:05:40.258184858 +0000 +--- ./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; @@ -323,8 +304,8 @@ # 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 2017-04-19 13:37:05.000000000 +0000 -+++ ./cpan/Sys-Syslog/t/syslog.t 2017-08-30 12:05:40.259184858 +0000 +--- ./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: { } } @@ -333,9 +314,9 @@ ok( $r, "setlogsock() should return true: '$r'" ); } ---- ./cpan/libnet/lib/Net/Config.pm.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./cpan/libnet/lib/Net/Config.pm 2017-08-30 12:05:40.259184858 +0000 -@@ -53,7 +53,7 @@ our %NetConfig = ( +--- ./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 < $self->{CCFLAGS} = $Config{ccflags} . ' -I/usr/include/libelf' @@ -354,8 +335,8 @@ +# 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 2017-02-28 12:36:42.000000000 +0000 -+++ ./ext/ODBM_File/Makefile.PL 2017-08-30 12:05:40.260184858 +0000 +--- ./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( @@ -365,8 +346,8 @@ XSPROTOARG => '-noprototypes', # XXX remove later? VERSION_FROM => 'ODBM_File.pm', ); ---- ./ext/ODBM_File/hints/linux.pl.orig 2017-02-28 12:36:42.000000000 +0000 -+++ ./ext/ODBM_File/hints/linux.pl 2017-08-30 12:05:40.259184858 +0000 +--- ./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']; @@ -374,8 +355,8 @@ # Debian/Ubuntu have libgdbm_compat.so but not this file, # so linking may fail ---- ./hints/linux.sh.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./hints/linux.sh 2017-08-30 12:09:43.999184426 +0000 +--- ./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. @@ -467,8 +448,8 @@ ;; esac EOCBU ---- ./installperl.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./installperl 2017-08-30 12:05:40.261184858 +0000 +--- ./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'; @@ -478,9 +459,9 @@ ($name =~ /^(.*)\.(?:pm|pod)$/ && $archpms{$1}) || ($name =~ /^(.*)\.(?:h|lib)$/i && ($Is_W32 || $Is_NetWare)) || $name=~/^Config_(heavy|git)\.pl\z/ ---- ./lib/perl5db.pl.orig 2017-04-19 13:37:05.000000000 +0000 -+++ ./lib/perl5db.pl 2017-08-30 12:05:40.264184858 +0000 -@@ -2363,6 +2363,8 @@ sub _DB__handle_run_command_in_pager_com +--- ./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"); } @@ -489,7 +470,7 @@ next CMD; } ## end unless ($piped = open(OUT,... -@@ -2467,6 +2469,9 @@ sub _DB__at_end_of_every_command { +@@ -2470,6 +2472,9 @@ sub _DB__at_end_of_every_command { $obj->selected(""); } @@ -499,9 +480,9 @@ # No pipes now. $obj->piped(""); } ## end if ($piped) ---- ./utils/perlbug.PL.orig 2017-04-19 13:37:06.000000000 +0000 -+++ ./utils/perlbug.PL 2017-08-30 12:05:40.265184858 +0000 -@@ -1042,6 +1042,7 @@ sub _message_headers { +--- ./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 { $headers{'Cc'} = $cc if ($cc); $headers{'Message-Id'} = $messageid if ($messageid); $headers{'Reply-To'} = $from if ($from); diff --git a/perl-5.28.1.tar.xz b/perl-5.28.1.tar.xz new file mode 100644 index 0000000..10e8b6c --- /dev/null +++ b/perl-5.28.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fea7162d4cca940a387f0587b93f6737d884bf74d8a9d7cfd978bc12cd0b202d +size 12372080 diff --git a/perl-gdbm-test-no-mmap.diff b/perl-gdbm-test-no-mmap.diff new file mode 100644 index 0000000..f05a9ac --- /dev/null +++ b/perl-gdbm-test-no-mmap.diff @@ -0,0 +1,10 @@ +--- ./ext/GDBM_File/t/fatal.t.orig 2018-09-28 14:01:52.697941391 +0000 ++++ ./ext/GDBM_File/t/fatal.t 2018-09-28 14:02:35.601833563 +0000 +@@ -29,6 +29,7 @@ is((open $fh, "<&=$fileno"), undef, + umask(0); + my %h; + isa_ok(tie(%h, 'GDBM_File', 'Op_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("\$! = $!"); diff --git a/perl-incfix.diff b/perl-incfix.diff index 307a74d..96bb403 100644 --- a/perl-incfix.diff +++ b/perl-incfix.diff @@ -1,25 +1,22 @@ -Index: perl.c -=================================================================== ---- perl.c.orig -+++ perl.c -@@ -4579,11 +4579,13 @@ S_init_perllib(pTHX) - # endif +--- ./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 +@@ -83,10 +83,12 @@ + # define INCPUSH_PRIVLIB_EXP S_incpush_use_sep(aTHX_ STR_WITH_LEN(PRIVLIB_EXP), INCPUSH_CAN_RELOCATE); #endif +#if 0 #ifdef PERL_OTHERLIBDIRS - S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), - INCPUSH_ADD_VERSIONED_SUB_DIRS|INCPUSH_NOT_BASEDIR - |INCPUSH_CAN_RELOCATE); + # 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); #endif +#endif - if (!TAINTING_get) { - #ifndef VMS -@@ -4625,20 +4627,19 @@ S_init_perllib(pTHX) + + /* submacros for INCPUSH_PERL5LIB */ +@@ -133,19 +135,19 @@ #if defined(SITELIB_STEM) && defined(PERL_INC_VERSION_LIST) /* Search for version-specific dirs below here */ - S_incpush_use_sep(aTHX_ STR_WITH_LEN(SITELIB_STEM), + # 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); #endif @@ -27,16 +24,15 @@ Index: perl.c #if defined(PERL_VENDORLIB_STEM) && defined(PERL_INC_VERSION_LIST) /* Search for version-specific dirs below here */ - S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_VENDORLIB_STEM), + # 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); #endif #ifdef PERL_OTHERLIBDIRS - S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), -- INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS -- |INCPUSH_CAN_RELOCATE); + # 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); #endif - #endif /* !PERL_IS_MINIPERL */ + diff --git a/perl-revert-caretx.diff b/perl-revert-caretx.diff new file mode 100644 index 0000000..1a3fdf1 --- /dev/null +++ b/perl-revert-caretx.diff @@ -0,0 +1,48 @@ +--- ./caretx.c.orig 2018-05-21 12:29:23.000000000 +0000 ++++ ./caretx.c 2018-09-28 14:05:46.785353073 +0000 +@@ -56,7 +56,8 @@ Perl_set_caret_X(pTHX) { + SV *const caret_x = GvSV(tmpgv); + #if defined(OS2) + sv_setpv(caret_x, os2_execname(aTHX)); +-#elif defined(USE_KERN_PROC_PATHNAME) ++#else ++# ifdef USE_KERN_PROC_PATHNAME + size_t size = 0; + int mib[4]; + mib[0] = CTL_KERN; +@@ -76,7 +77,7 @@ Perl_set_caret_X(pTHX) { + return; + } + } +-#elif defined(USE_NSGETEXECUTABLEPATH) ++# elif defined(USE_NSGETEXECUTABLEPATH) + char buf[1]; + uint32_t size = sizeof(buf); + +@@ -95,7 +96,7 @@ Perl_set_caret_X(pTHX) { + return; + } + } +-#elif defined(HAS_PROCSELFEXE) ++# elif defined(HAS_PROCSELFEXE) + char buf[MAXPATHLEN]; + SSize_t len = readlink(PROCSELFEXE_PATH, buf, sizeof(buf) - 1); + /* NOTE: if the length returned by readlink() is sizeof(buf) - 1, +@@ -125,7 +126,7 @@ Perl_set_caret_X(pTHX) { + sv_setpvn(caret_x, buf, len); + return; + } +-#elif defined(WIN32) ++# elif defined(WIN32) + char *ansi; + WCHAR widename[MAX_PATH]; + GetModuleFileNameW(NULL, widename, sizeof(widename)/sizeof(WCHAR)); +@@ -133,7 +134,7 @@ Perl_set_caret_X(pTHX) { + sv_setpv(caret_x, ansi); + win32_free(ansi); + return; +-#else ++# endif + /* Fallback to this: */ + sv_setpv(caret_x, PL_origargv[0]); + #endif diff --git a/perl.changes b/perl.changes index 6b89d15..cf42dec 100644 --- a/perl.changes +++ b/perl.changes @@ -1,3 +1,61 @@ +------------------------------------------------------------------- +Fri Nov 30 14:12:53 CET 2018 - mls@suse.de + +- update to perl-5.28.1 + * [CVE-2018-18311] Integer overflow leading to buffer overflow + * [CVE-2018-18312] Heap-buffer-overflow write in S_regatom + * updated Module::CoreList module + +------------------------------------------------------------------- +Tue Oct 2 13:03:27 CEST 2018 - mls@suse.de + +- simplify perl_gen_filelist macro + +------------------------------------------------------------------- +Fri Sep 28 16:06:46 CEST 2018 - mls@suse.de + +- fix testing fatal errors in gdbm + new patch: perl-gdbm-test-no-mmap.diff +- fix perl no longer setting $^X if /proc is not mounted + new patch: perl-revert-caretx.diff + +------------------------------------------------------------------- +Wed Sep 26 15:01:32 CEST 2018 - mls@suse.de + +- change the perl_gen_filelist macro so that the modules no + longer own the perl_vendorarch directory [bnc#1109754] + +------------------------------------------------------------------- +Sat Sep 22 19:22:29 UTC 2018 - Dirk Stoecker + +- update to perl-5.28.0 + * 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 + * Full list of changes: https://metacpan.org/pod/release/XSAWYERX/perl-5.28.0/pod/perldelta.pod +- update perl-5.26.0.dif to perl-5.28.0.dif +- drop patch perl-pp-crypt.patch (included upstream) + +------------------------------------------------------------------- +Tue Sep 18 14:14:34 UTC 2018 - schwab@suse.de + +- perl-pp-crypt.patch: fix incompatibility with libxcrypt (bsc#1107973) + ------------------------------------------------------------------- Wed May 23 14:12:11 CEST 2018 - mls@suse.de diff --git a/perl.spec b/perl.spec index 8914015..270f849 100644 --- a/perl.spec +++ b/perl.spec @@ -16,21 +16,21 @@ # -%define pversion 5.26.2 -%global versionlist 5.26.1 +%define pversion 5.28.1 +%global versionlist 5.28.0 Name: perl -Version: 5.26.2 +Version: 5.28.1 Release: 0 Summary: The Perl interpreter License: Artistic-1.0 OR GPL-2.0-or-later Group: Development/Languages/Perl -URL: http://www.perl.org/ -Source: http://www.cpan.org/src/5.0/perl-%{version}.tar.xz +Url: https://www.perl.org/ +Source: https://www.cpan.org/src/5.0/perl-%{version}.tar.xz Source1: %{name}-rpmlintrc Source2: macros.perl Source3: README.macros Source4: baselibs.conf -Patch0: perl-5.26.0.dif +Patch0: perl-5.28.0.dif Patch2: perl-regexp-refoverflow.diff Patch3: perl-nroff.diff Patch4: perl-netcmdutf8.diff @@ -45,6 +45,8 @@ Patch11: perl-5.18.2-overflow.diff Patch12: perl-reproducible.patch Patch13: perl_skip_flaky_tests_powerpc.patch Patch14: posix-sigaction.patch +Patch15: perl-gdbm-test-no-mmap.diff +Patch16: perl-revert-caretx.diff BuildRequires: db-devel BuildRequires: gdbm-devel BuildRequires: libbz2-devel @@ -54,26 +56,25 @@ BuildRequires: zlib-devel Requires: perl-base = %{version} Suggests: perl-doc = %{version} Provides: perl-500 -Provides: perl-Filter-Simple = 0.93 +Provides: perl-Filter-Simple = 0.95 Provides: perl(:MODULE_COMPAT_%{pversion}) -Provides: perl(:MODULE_COMPAT_5.26.1) -Obsoletes: perl-Filter-Simple <= 0.93 -Provides: perl-I18N-LangTags = 0.42 -Obsoletes: perl-I18N-LangTags <= 0.42 +Obsoletes: perl-Filter-Simple <= 0.95 +Provides: perl-I18N-LangTags = 0.43 +Obsoletes: perl-I18N-LangTags <= 0.43 Provides: perl-MIME-Base64 = 3.15 Obsoletes: perl-MIME-Base64 <= 3.15 -Provides: perl-Storable = 2.62 -Obsoletes: perl-Storable <= 2.62 -Provides: perl-Test-Simple = 1.302073 -Obsoletes: perl-Test-Simple <= 1.302073 +Provides: perl-Storable = 3.08 +Obsoletes: perl-Storable <= 3.08 +Provides: perl-Test-Simple = 1.302133 +Obsoletes: perl-Test-Simple <= 1.302133 Provides: perl-Text-Balanced = 2.03 Obsoletes: perl-Text-Balanced <= 2.03 -Provides: perl-Time-HiRes = 1.9741 -Obsoletes: perl-Time-HiRes <= 1.9741 -Provides: perl-libnet = 3.08 -Obsoletes: perl-libnet <= 3.08 -Provides: perl-Compress-Raw-Zlib = 2.074 -Obsoletes: perl-Compress-Raw-Zlib <= 2.074 +Provides: perl-Time-HiRes = 1.9759 +Obsoletes: perl-Time-HiRes <= 1.9759 +Provides: perl-libnet = 3.11 +Obsoletes: perl-libnet <= 3.11 +Provides: perl-Compress-Raw-Zlib = 2.076 +Obsoletes: perl-Compress-Raw-Zlib <= 2.076 Provides: perl-Compress-Zlib = 2.074 Obsoletes: perl-Compress-Zlib <= 2.074 Provides: perl-IO-Compress-Base = 2.074 @@ -82,34 +83,34 @@ Provides: perl-IO-Compress-Zlib = 2.074 Obsoletes: perl-IO-Compress-Zlib <= 2.074 Provides: perl-IO-Zlib = 1.10 Obsoletes: perl-IO-Zlib <= 1.10 -Provides: perl-Archive-Tar = 2.24 -Obsoletes: perl-Archive-Tar <= 2.24 +Provides: perl-Archive-Tar = 2.30 +Obsoletes: perl-Archive-Tar <= 2.30 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.35 Obsoletes: perl-Pod-Simple <= 3.35 -Provides: perl-ExtUtils-ParseXS = 3.34 -Obsoletes: perl-ExtUtils-ParseXS <= 3.34 +Provides: perl-ExtUtils-ParseXS = 3.39 +Obsoletes: perl-ExtUtils-ParseXS <= 3.39 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.280225 -Obsoletes: perl-ExtUtils-CBuilder <= 0.280225 -Provides: perl-IO-Socket-IP = 0.38 -Obsoletes: perl-IO-Socket-IP <= 0.38 +Provides: perl-ExtUtils-CBuilder = 0.280230 +Obsoletes: perl-ExtUtils-CBuilder <= 0.280230 +Provides: perl-IO-Socket-IP = 0.39 +Obsoletes: perl-IO-Socket-IP <= 0.39 Provides: perl-Parse-CPAN-Meta = 2.150010 Obsoletes: perl-Parse-CPAN-Meta <= 2.150010 Provides: perl-PathTools = 3.63 Obsoletes: perl-PathTools <= 3.63 Provides: perl-autodie = 2.29 Obsoletes: perl-autodie <= 2.29 -Provides: perl-Test-Harness = 3.38 -Obsoletes: perl-Test-Harness <= 3.38 -Provides: perl-version = 0.9917 -Obsoletes: perl-version <= 0.9917 +Provides: perl-Test-Harness = 3.42 +Obsoletes: perl-Test-Harness <= 3.42 +Provides: perl-version = 0.9923 +Obsoletes: perl-version <= 0.9923 %if "%{version}" != "%{pversion}" Provides: perl = %{pversion}-%{release} %endif @@ -130,7 +131,7 @@ series. Summary: The Perl interpreter Group: Development/Languages/Perl Provides: perl-Digest -Provides: perl-Digest-MD5 +Provides: perl-Digest-MD5 = 2.55 %if "%{version}" != "%{pversion}" Provides: perl-base = %{pversion}-%{release} %endif @@ -172,12 +173,14 @@ cp -p %{SOURCE3} . %patch7 %ifarch ppc ppc64 ppc64le %patch8 -p1 -%patch13 -p1 +%patch13 %endif %patch9 %patch11 %patch12 -p1 %patch14 -p1 +%patch15 +%patch16 %build cp -a lib savelib diff --git a/perl_skip_flaky_tests_powerpc.patch b/perl_skip_flaky_tests_powerpc.patch index 179f53c..4d7cc35 100644 --- a/perl_skip_flaky_tests_powerpc.patch +++ b/perl_skip_flaky_tests_powerpc.patch @@ -6,22 +6,9 @@ skip flaky tests powerpc as bypass https://bugzilla.suse.com/show_bug.cgi?id=1063176 Signed-off-by: Michel Normand ---- - cpan/Memoize/t/expmod_t.t | 1 + - dist/Time-HiRes/t/alarm.t | 2 +- - dist/Time-HiRes/t/clock.t | 2 +- - dist/Time-HiRes/t/nanosleep.t | 2 +- - dist/Time-HiRes/t/usleep.t | 2 +- - t/op/alarm.t | 1 + - t/op/sigsystem.t | 1 + - t/op/sselect.t | 2 ++ - t/op/stat.t | 1 + - 9 files changed, 10 insertions(+), 4 deletions(-) -Index: perl-5.26.1/cpan/Memoize/t/expmod_t.t -=================================================================== ---- perl-5.26.1.orig/cpan/Memoize/t/expmod_t.t -+++ perl-5.26.1/cpan/Memoize/t/expmod_t.t +--- ./cpan/Memoize/t/expmod_t.t.orig 2018-03-20 20:06:35.000000000 +0000 ++++ ./cpan/Memoize/t/expmod_t.t 2018-09-26 11:05:08.908018123 +0000 @@ -1,5 +1,6 @@ #!/usr/bin/perl @@ -29,10 +16,8 @@ Index: perl-5.26.1/cpan/Memoize/t/expmod_t.t use lib '..'; use Memoize; BEGIN { -Index: perl-5.26.1/dist/Time-HiRes/t/alarm.t -=================================================================== ---- perl-5.26.1.orig/dist/Time-HiRes/t/alarm.t -+++ perl-5.26.1/dist/Time-HiRes/t/alarm.t +--- ./dist/Time-HiRes/t/alarm.t.orig 2018-09-26 11:04:59.936040917 +0000 ++++ ./dist/Time-HiRes/t/alarm.t 2018-09-26 11:05:08.908018123 +0000 @@ -1,6 +1,6 @@ use strict; @@ -41,23 +26,29 @@ Index: perl-5.26.1/dist/Time-HiRes/t/alarm.t BEGIN { push @INC, '.' } use t::Watchdog; -Index: perl-5.26.1/dist/Time-HiRes/t/nanosleep.t -=================================================================== ---- perl-5.26.1.orig/dist/Time-HiRes/t/nanosleep.t -+++ perl-5.26.1/dist/Time-HiRes/t/nanosleep.t -@@ -8,7 +8,7 @@ BEGIN { - } - } +--- ./dist/Time-HiRes/t/clock.t.orig 2018-09-26 11:04:59.936040917 +0000 ++++ ./dist/Time-HiRes/t/clock.t 2018-09-26 11:05:08.908018123 +0000 +@@ -1,6 +1,6 @@ + use strict; --use Test::More tests => 3; +-use Test::More tests => 5; +use Test::More skip_all => "ppc workers are too busy"; BEGIN { push @INC, '.' } use t::Watchdog; -Index: perl-5.26.1/dist/Time-HiRes/t/usleep.t -=================================================================== ---- perl-5.26.1.orig/dist/Time-HiRes/t/usleep.t -+++ perl-5.26.1/dist/Time-HiRes/t/usleep.t +--- ./dist/Time-HiRes/t/nanosleep.t.orig 2018-09-26 11:05:08.908018123 +0000 ++++ ./dist/Time-HiRes/t/nanosleep.t 2018-09-26 11:06:17.203844610 +0000 +@@ -8,7 +8,7 @@ BEGIN { + } + } + +-use Test::More tests => 4; ++use Test::More skip_all => "ppc workers are too busy"; + BEGIN { push @INC, '.' } + use t::Watchdog; + +--- ./dist/Time-HiRes/t/usleep.t.orig 2018-09-26 11:04:59.936040917 +0000 ++++ ./dist/Time-HiRes/t/usleep.t 2018-09-26 11:05:08.908018123 +0000 @@ -8,7 +8,7 @@ BEGIN { } } @@ -67,10 +58,8 @@ Index: perl-5.26.1/dist/Time-HiRes/t/usleep.t BEGIN { push @INC, '.' } use t::Watchdog; -Index: perl-5.26.1/t/op/alarm.t -=================================================================== ---- perl-5.26.1.orig/t/op/alarm.t -+++ perl-5.26.1/t/op/alarm.t +--- ./t/op/alarm.t.orig 2018-05-21 10:44:04.000000000 +0000 ++++ ./t/op/alarm.t 2018-09-26 11:05:08.908018123 +0000 @@ -11,6 +11,7 @@ use Config; if ( !$Config{d_alarm} ) { skip_all("alarm() not implemented on this platform"); @@ -79,10 +68,8 @@ Index: perl-5.26.1/t/op/alarm.t plan tests => 5; my $Perl = which_perl(); -Index: perl-5.26.1/t/op/sigsystem.t -=================================================================== ---- perl-5.26.1.orig/t/op/sigsystem.t -+++ perl-5.26.1/t/op/sigsystem.t +--- ./t/op/sigsystem.t.orig 2018-03-20 20:06:37.000000000 +0000 ++++ ./t/op/sigsystem.t 2018-09-26 11:05:08.908018123 +0000 @@ -11,6 +11,7 @@ use strict; use constant TRUE => ($^X, '-e', 'exit 0'); use Data::Dumper; @@ -91,23 +78,9 @@ Index: perl-5.26.1/t/op/sigsystem.t plan tests => 4; SKIP: { -Index: perl-5.26.1/t/op/stat.t -=================================================================== ---- perl-5.26.1.orig/t/op/stat.t -+++ perl-5.26.1/t/op/stat.t -@@ -7,6 +7,7 @@ BEGIN { - } - - use Config; -+skip_all("ppc workers are too busy"); - - my ($Null, $Curdir); - if(eval {require File::Spec; 1}) { -Index: perl-5.26.1/t/op/sselect.t -=================================================================== ---- perl-5.26.1.orig/t/op/sselect.t -+++ perl-5.26.1/t/op/sselect.t -@@ -11,6 +11,8 @@ BEGIN { +--- ./t/op/sselect.t.orig 2018-05-21 12:29:23.000000000 +0000 ++++ ./t/op/sselect.t 2018-09-26 11:05:08.908018123 +0000 +@@ -13,6 +13,8 @@ BEGIN { skip_all("Win32 miniperl has no socket select") if $^O eq "MSWin32" && is_miniperl(); @@ -116,15 +89,13 @@ Index: perl-5.26.1/t/op/sselect.t plan (16); my $blank = ""; -Index: perl-5.26.1/dist/Time-HiRes/t/clock.t -=================================================================== ---- perl-5.26.1.orig/dist/Time-HiRes/t/clock.t -+++ perl-5.26.1/dist/Time-HiRes/t/clock.t -@@ -1,6 +1,6 @@ +--- ./t/op/stat.t.orig 2018-05-21 12:29:23.000000000 +0000 ++++ ./t/op/stat.t 2018-09-26 11:05:08.908018123 +0000 +@@ -9,6 +9,7 @@ BEGIN { use strict; + use warnings; + use Config; ++skip_all("ppc workers are too busy"); --use Test::More tests => 5; -+use Test::More skip_all => "ppc workers are too busy"; - BEGIN { push @INC, '.' } - use t::Watchdog; - + my ($Null, $Curdir); + if(eval {require File::Spec; 1}) {