diff --git a/add-Perl_my_strlcpy-and-Perl_my_strlcat.patch b/add-Perl_my_strlcpy-and-Perl_my_strlcat.patch deleted file mode 100644 index 0f1e0883bba9cf208d9c28f1741703bed95d7d90..0000000000000000000000000000000000000000 --- a/add-Perl_my_strlcpy-and-Perl_my_strlcat.patch +++ /dev/null @@ -1,48 +0,0 @@ -From b6d41cba9e1a9150710f729b6108bf1adafdc4fb Mon Sep 17 00:00:00 2001 -From: root -Date: Thu, 27 Jul 2023 15:58:52 +0800 -Subject: [PATCH] add Perl_my_strlcpy and Perl_my_strlcat - ---- - util.c | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/util.c b/util.c -index 8103260..a193d63 100644 ---- a/util.c -+++ b/util.c -@@ -5745,7 +5745,6 @@ C. If C is smaller than the return, the excess was not appended. - - Description stolen from http://man.openbsd.org/strlcat.3 - */ --#ifndef HAS_STRLCAT - Size_t - Perl_my_strlcat(char *dst, const char *src, Size_t size) - { -@@ -5760,7 +5759,6 @@ Perl_my_strlcat(char *dst, const char *src, Size_t size) - } - return used + length; - } --#endif - - - /* -@@ -5779,7 +5777,6 @@ succeeded. If it is larger than C, the excess was not copied. - - Description stolen from http://man.openbsd.org/strlcpy.3 - */ --#ifndef HAS_STRLCPY - Size_t - Perl_my_strlcpy(char *dst, const char *src, Size_t size) - { -@@ -5793,7 +5790,6 @@ Perl_my_strlcpy(char *dst, const char *src, Size_t size) - } - return length; - } --#endif - - #if defined(_MSC_VER) && (_MSC_VER >= 1300) && (_MSC_VER < 1400) && (WINVER < 0x0500) - /* VC7 or 7.1, building with pre-VC7 runtime libraries. */ --- -2.33.0 - diff --git a/backport-CVE-2021-36770.patch b/backport-CVE-2021-36770.patch deleted file mode 100644 index 016a9b51e452d754d604e471273e2eb9b67a7a51..0000000000000000000000000000000000000000 --- a/backport-CVE-2021-36770.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 527e482dc70b035d0df4f8c77a00d81f8d775c74 Mon Sep 17 00:00:00 2001 -From: Dan Kogai -Date: Mon, 9 Aug 2021 23:19:25 +0900 -Subject: [PATCH] version 3.12 to address CVE-2021-36770 - ---- - cpan/Encode/Encode.pm | 8 ++++---- - cpan/Encode/Unicode/Unicode.xs | 2 +- - cpan/Encode/t/Unicode.t | 2 +- - 3 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/cpan/Encode/Encode.pm b/cpan/Encode/Encode.pm -index d3eb3c1..769439c 100644 ---- a/cpan/Encode/Encode.pm -+++ b/cpan/Encode/Encode.pm -@@ -1,5 +1,5 @@ - # --# $Id: Encode.pm,v 3.08 2020/12/02 01:27:44 dankogai Exp $ -+# $Id: Encode.pm,v 3.12 2021/08/09 14:17:04 dankogai Exp dankogai $ - # - package Encode; - use strict; -@@ -7,7 +7,7 @@ use warnings; - use constant DEBUG => !!$ENV{PERL_ENCODE_DEBUG}; - our $VERSION; - BEGIN { -- $VERSION = sprintf "%d.%02d", q$Revision: 3.08 $ =~ /(\d+)/g; -+ $VERSION = sprintf "%d.%02d", q$Revision: 3.12 $ =~ /(\d+)/g; - require XSLoader; - XSLoader::load( __PACKAGE__, $VERSION ); - } -@@ -65,8 +65,8 @@ require Encode::Config; - eval { - local $SIG{__DIE__}; - local $SIG{__WARN__}; -- local @INC = @INC || (); -- pop @INC if $INC[-1] eq '.'; -+ local @INC = @INC; -+ pop @INC if @INC && $INC[-1] eq '.'; - require Encode::ConfigLocal; - }; - -diff --git a/cpan/Encode/Unicode/Unicode.xs b/cpan/Encode/Unicode/Unicode.xs -index 4e111e2..18c783f 100644 ---- a/cpan/Encode/Unicode/Unicode.xs -+++ b/cpan/Encode/Unicode/Unicode.xs -@@ -1,5 +1,5 @@ - /* -- $Id: Unicode.xs,v 2.19 2019/01/21 03:09:59 dankogai Exp $ -+ $Id: Unicode.xs,v 2.20 2021/07/23 02:26:54 dankogai Exp $ - */ - - #define IN_UNICODE_XS -diff --git a/cpan/Encode/t/Unicode.t b/cpan/Encode/t/Unicode.t -index 2cc5d54..9e2bcbe 100644 ---- a/cpan/Encode/t/Unicode.t -+++ b/cpan/Encode/t/Unicode.t -@@ -1,5 +1,5 @@ - # --# $Id: Unicode.t,v 2.3 2012/08/05 23:08:49 dankogai Exp $ -+# $Id: Unicode.t,v 2.4 2021/07/23 02:26:54 dankogai Exp $ - # - # This script is written entirely in ASCII, even though quoted literals - # do include non-BMP unicode characters -- Are you happy, jhi? --- -2.27.0 - diff --git a/backport-fix-zlib-test-failed.patch b/backport-fix-zlib-test-failed.patch deleted file mode 100644 index ab2810c5ccd00e751c43fd10973ab499db5e535c..0000000000000000000000000000000000000000 --- a/backport-fix-zlib-test-failed.patch +++ /dev/null @@ -1,95 +0,0 @@ -From e03bbd44e45aa58a8979703000b99228d45717d5 Mon Sep 17 00:00:00 2001 -From: Zach van Rijn -Date: Tue, 19 Apr 2022 12:35:20 -0500 -Subject: [PATCH] system/perl: bump { 5.34.0 --> 5.34.1 }. patch zlib -tests. - -Reference:https://git.adelielinux.org/adelie/packages/-/blob/ea11274c74787796bb0cdb0a7a97a9e07e2a7c05/system/perl/zlib-test.patch ---- - cpan/Compress-Raw-Zlib/t/02zlib.t | 24 ++++++++++++++++++++++-- - cpan/IO-Compress/t/cz-03zlib-v1.t | 13 ++++++++++++- - 2 files changed, 34 insertions(+), 3 deletions(-) - -diff --git a/cpan/Compress-Raw-Zlib/t/02zlib.t b/cpan/Compress-Raw-Zlib/t/02zlib.t -index 64c8944..9b2e9cb 100644 ---- a/cpan/Compress-Raw-Zlib/t/02zlib.t -+++ b/cpan/Compress-Raw-Zlib/t/02zlib.t -@@ -13,6 +13,7 @@ use bytes; - use Test::More ; - use CompTestUtils; - -+use constant ZLIB_1_2_12_0 => 0x12C0; - - BEGIN - { -@@ -490,7 +491,16 @@ SKIP: - last if $status == Z_STREAM_END or $status != Z_OK ; - } - -- cmp_ok $status, '==', Z_DATA_ERROR ; -+ # Z_STREAM_END returned by 1.12.2, Z_DATA_ERROR for older zlib -+ if (ZLIB_VERNUM >= ZLIB_1_2_12_0) -+ { -+ cmp_ok $status, '==', Z_STREAM_END ; -+ } -+ else -+ { -+ cmp_ok $status, '==', Z_DATA_ERROR ; -+ } -+ - is $GOT, $goodbye ; - - -@@ -514,7 +524,17 @@ SKIP: - is length($rest), $len2, "expected compressed output"; - - $GOT = ''; -- cmp_ok $k->inflate($rest, $GOT), '==', Z_DATA_ERROR, "inflate returns Z_DATA_ERROR"; -+ $status = $k->inflate($rest, $GOT); -+ # Z_STREAM_END returned by 1.12.2, Z_DATA_ERROR for older zlib -+ if (ZLIB_VERNUM >= ZLIB_1_2_12_0) -+ { -+ cmp_ok $status, '==', Z_STREAM_END ; -+ } -+ else -+ { -+ cmp_ok $status, '==', Z_DATA_ERROR ; -+ } -+ - is $GOT, $goodbye ; - } - -diff --git a/cpan/IO-Compress/t/cz-03zlib-v1.t b/cpan/IO-Compress/t/cz-03zlib-v1.t -index 9b75f9b..41734d0 100644 ---- a/cpan/IO-Compress/t/cz-03zlib-v1.t -+++ b/cpan/IO-Compress/t/cz-03zlib-v1.t -@@ -14,6 +14,8 @@ use Test::More ; - use CompTestUtils; - use Symbol; - -+use constant ZLIB_1_2_12_0 => 0x12C0; -+ - BEGIN - { - # use Test::NoWarnings, if available -@@ -700,7 +702,16 @@ EOM - - ($GOT, $status) = $k->inflate($rest) ; - -- ok $status == Z_DATA_ERROR ; -+ # Z_STREAM_END returned by 1.12.2, Z_DATA_ERROR for older zlib -+ if (ZLIB_VERNUM >= ZLIB_1_2_12_0) -+ { -+ cmp_ok $status, '==', Z_STREAM_END ; -+ } -+ else -+ { -+ cmp_ok $status, '==', Z_DATA_ERROR ; -+ } -+ - ok $Z . $GOT eq $goodbye ; - } - --- -2.33.0 - diff --git a/perl-5.16.3-create_libperl_soname.patch b/perl-5.16.3-create_libperl_soname.patch index 0cfd59dd2724dfbcd62d31d95efe8b5bbea20e99..b6e271b1176033b3ac0ababcca6a2a831c04b131 100644 --- a/perl-5.16.3-create_libperl_soname.patch +++ b/perl-5.16.3-create_libperl_soname.patch @@ -14,7 +14,7 @@ diff --git a/Makefile.SH b/Makefile.SH index d1da0a0..7733a32 100755 --- a/Makefile.SH +++ b/Makefile.SH -@@ -70,11 +70,11 @@ true) +@@ -64,11 +64,11 @@ true) ${revision}.${patchlevel}.${subversion}" case "$osvers" in 1[5-9]*|[2-9]*) @@ -28,7 +28,7 @@ index d1da0a0..7733a32 100755 ;; esac ;; -@@ -76,13 +76,15 @@ true) +@@ -78,13 +78,15 @@ true) ;; sunos*) linklibperl="-lperl" @@ -45,12 +45,12 @@ index d1da0a0..7733a32 100755 ;; aix*) case "$cc" in -@@ -120,6 +122,9 @@ true) - linklibperl='libperl.x' - DPERL_EXTERNAL_GLOB='' - ;; +@@ -127,6 +129,9 @@ true) + ;; + esac + ;; + linux*) -+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}" ++ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}" + ;; esac case "$ldlibpthname" in diff --git a/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch b/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch index c80f2a43b12dc4578f542006fd398ec23a40f332..0bc383f5b630aadb0385da2af0580273c4d61d0e 100644 --- a/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch +++ b/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch @@ -23,14 +23,14 @@ diff --git a/MANIFEST b/MANIFEST index 6af238c..d4f0c56 100644 --- a/MANIFEST +++ b/MANIFEST -@@ -784,6 +784,7 @@ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS390.pm - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS390.pm - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm MakeMaker methods for QNX - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm MakeMaker methods for Unix -+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm Independed MM methods - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm MakeMaker methods for U/WIN - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm MakeMaker methods for VMS - cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm MakeMaker methods for VOS +@@ -1037,6 +1037,7 @@ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS390.pm + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS390.pm MakeMaker methods for OS 390 + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm MakeMaker methods for QNX + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm MakeMaker methods for Unix ++cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm Independed MM methods + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm MakeMaker methods for U/WIN + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm MakeMaker methods for VMS + cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm MakeMaker methods for VOS diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm new file mode 100644 index 0000000..6bbc0d8 diff --git a/perl-5.34.0-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch b/perl-5.34.0-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch index c059b5a14bc9d64281c4e50ab63af14f2527a5f7..c98a94c34ea040b442080c46d3e6b1ddde824f8b 100644 --- a/perl-5.34.0-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch +++ b/perl-5.34.0-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch @@ -46,7 +46,7 @@ index cd0bb6f..0c395ac 100644 } else { RETVAL = NULL; @@ -289,15 +291,17 @@ gdbm_DESTROY(db) - PREINIT: + PREINIT: int i = store_value; CODE: - if (gdbm_file_close(db)) { diff --git a/perl-5.35.1-Fix-GDBM_File-to-compile-with-version-1.20-and-earli.patch b/perl-5.35.1-Fix-GDBM_File-to-compile-with-version-1.20-and-earli.patch deleted file mode 100644 index 6157add2595a5088ccadd38bbc2fcd86f55439f5..0000000000000000000000000000000000000000 --- a/perl-5.35.1-Fix-GDBM_File-to-compile-with-version-1.20-and-earli.patch +++ /dev/null @@ -1,40 +0,0 @@ -From aacd2398e766500cb5d83c4d76b642fcf31d997a Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Wed, 23 Jun 2021 10:26:50 +0300 -Subject: [PATCH 1/3] 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 cd0bb6f26f..494c2889ca 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) { \ --- -2.31.1 - diff --git a/perl-5.35.1-Raise-version-number-in-ext-GDBM_File-GDBM_File.pm.patch b/perl-5.35.1-Raise-version-number-in-ext-GDBM_File-GDBM_File.pm.patch deleted file mode 100644 index 4013a1410e369385fd6303d25ec9c961850d2b2e..0000000000000000000000000000000000000000 --- a/perl-5.35.1-Raise-version-number-in-ext-GDBM_File-GDBM_File.pm.patch +++ /dev/null @@ -1,25 +0,0 @@ -From ea57297a58b8f10ab885c19eec48ea076116cc1f Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Wed, 23 Jun 2021 14:24:47 +0300 -Subject: [PATCH 2/3] Raise version number in ext/GDBM_File/GDBM_File.pm - ---- - ext/GDBM_File/GDBM_File.pm | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ext/GDBM_File/GDBM_File.pm b/ext/GDBM_File/GDBM_File.pm -index d837536f80..cb08d091b8 100644 ---- a/ext/GDBM_File/GDBM_File.pm -+++ b/ext/GDBM_File/GDBM_File.pm -@@ -363,7 +363,7 @@ require XSLoader; - ); - - # This module isn't dual life, so no need for dev version numbers. --$VERSION = '1.19'; -+$VERSION = '1.20'; - - XSLoader::load(); - --- -2.31.1 - diff --git a/perl-5.34.0.tar.xz b/perl-5.38.0.tar.xz similarity index 59% rename from perl-5.34.0.tar.xz rename to perl-5.38.0.tar.xz index 075f3678176987b0397a41cd909338e130872ee9..428f0d45992cf4a2d8c3b598ecdcc75abd6663c2 100644 Binary files a/perl-5.34.0.tar.xz and b/perl-5.38.0.tar.xz differ diff --git a/perl.spec b/perl.spec index e9a1e3f12be4c0a021136bdc4eadfca91b218902..c7d63b5b326f31c2fcae5a80e33e3214fe8d8d01 100644 --- a/perl.spec +++ b/perl.spec @@ -14,9 +14,9 @@ #provides module without verion, no need to provide %global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\((charnames|DynaLoader|DB)\\)$ -%global perl_version 5.34.0 +%global perl_version 5.38.0 -%global perl_compat perl(:MODULE_COMPAT_5.34.0) +%global perl_compat perl(:MODULE_COMPAT_5.38.0) %bcond_without systemtap @@ -24,7 +24,7 @@ Name: perl License: (GPL+ or Artistic) and (GPLv2+ or Artistic) and MIT and UCD and Public Domain and BSD Epoch: 4 Version: %{perl_version} -Release: 7 +Release: 1 Summary: A highly capable, feature-rich programming language Url: https://www.perl.org/ Source0: https://www.cpan.org/src/5.0/%{name}-%{version}.tar.xz @@ -33,16 +33,8 @@ Patch1: perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch Patch2: perl-5.16.3-create_libperl_soname.patch Patch3: perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.patch Patch4: perl-5.34.0-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch -Patch5: perl-5.35.1-Fix-GDBM_File-to-compile-with-version-1.20-and-earli.patch -Patch6: perl-5.35.1-Raise-version-number-in-ext-GDBM_File-GDBM_File.pm.patch -Patch7: change-lib-to-lib64.patch -Patch8: disable-rpath-by-default.patch -Patch9: backport-fix-zlib-test-failed.patch -Patch10: add-Perl_my_strlcpy-and-Perl_my_strlcat.patch - -Patch6000: backport-CVE-2021-36770.patch -Patch6001: backport-CVE-2023-31484.patch -Patch6002: backport-CVE-2023-31486.patch +Patch5: change-lib-to-lib64.patch +Patch6: disable-rpath-by-default.patch BuildRequires: gcc bash findutils coreutils make tar procps bzip2-devel gdbm-devel perl-File-Compare perl-File-Find BuildRequires: zlib-devel perl-interpreter perl-generators @@ -88,9 +80,9 @@ prototyping and large scale development projects. %package libs Summary: The libraries for the perl License: (GPL+ or Artistic) and HSRL and MIT and UCD -Provides: perl(:MODULE_COMPAT_5.32.0) perl(:VERSION) = 5.32.0 +Provides: perl(:MODULE_COMPAT_5.34.0) perl(:VERSION) = 5.34.0 Provides: %perl_compat -Provides: perl(:VERSION) = %{perl_version} libperl.so.5.32()(64bit) +Provides: perl(:VERSION) = %{perl_version} libperl.so.5.34()(64bit) Provides: perl(:WITH_64BIT) perl(:WITH_ITHREADS) perl(:WITH_THREADS) Provides: perl(:WITH_LARGEFILES) perl(:WITH_PERLIO) perl(unicore::Name) Provides: perl(utf8_heavy.pl) @@ -505,6 +497,9 @@ make test_harness %{_mandir}/man3/* %changelog +* Mon Jul 31 2023 yangmingtai - 4:5.38.0-1 +- update version to 5.38.0 + * Thu Jul 27 2023 yangmingtai - 4:5.34.0-7 - add Perl_my_strlcpy-and-Perl_my_strlcat to fix build failed