SHA256
1
0
forked from pool/perl

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

I already submitted changes for the few packages which still depend on the manual provides, so we can get rid of this manual legacy stuff.

- update to 5.40.0
  * New __CLASS__ Keyword
  * :reader attribute for field variables
  * Permit a space in -M command-line option
  * Restrictions to use VERSION declarations
  * New builtin::inf and builtin::nan functions (experimental)
  * New ^^ logical xor operator
  * try/catch feature is no longer experimental
  * for iterating over multiple values at a time is no longer experimental
  * builtin module is no longer experimental
  * The :5.40 feature bundle adds try
  * use v5.40; imports builtin functions
  * CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
  * CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
  * reset EXPR now calls set-magic on scalars
  * Calling the import method of an unknown package produces a warning
  * return no longer allows an indirect object
  * Class barewords no longer resolved as file handles in method calls
    under no feature "bareword_filehandles"
  * Using goto to jump from an outer scope into an inner scope is
    deprecated and will be removed completely in Perl 5.42. [GH #21601]
  * The negation OPs have been modified to support the generic TARGMY
    optimization. [GH #21442]
- Refresh perl-5.38.0.diff
- Drop perl-5.18.2-overflow.diff (no longer applicable)
- Drop perl-locale-backport.diff (proper fix in new version)
- Drop old manual package name based perl provides

OBS-URL: https://build.opensuse.org/request/show/1180130
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl?expand=0&rev=247
This commit is contained in:
Michael Schröder 2024-06-17 10:28:14 +00:00 committed by Git OBS Bridge
parent b1d1e51775
commit a3a6567c4e
7 changed files with 58 additions and 112 deletions

View File

@ -1,11 +0,0 @@
--- ./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 */

View File

@ -1,6 +1,6 @@
--- Configure.orig 2023-06-02 01:12:22.000000000 +0000
+++ Configure 2023-07-19 12:31:54.415128119 +0000
@@ -114,7 +114,7 @@ paths="$paths /usr/5bin /etc /usr/gnu/bi
@@ -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 +9,7 @@
paths="$paths /sbin /usr/sbin /usr/libexec"
paths="$paths /system/gnu_library/bin"
@@ -1476,7 +1476,7 @@ loclibpth="/usr/local/lib /opt/local/lib
@@ -1480,7 +1480,7 @@
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"
@@ -2581,7 +2581,7 @@ uname
@@ -2585,7 +2585,7 @@
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
@ -27,7 +27,7 @@
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
@@ -20673,14 +20673,20 @@ int main(int argc, char *argv[])
@@ -20913,14 +20913,20 @@
}
EOCP
set try
@ -48,7 +48,7 @@
i_db=$undef
case " $libs " in
*"-ldb "*)
@@ -20718,7 +20724,7 @@ int main()
@@ -20958,7 +20964,7 @@
}
#endif
EOCP
@ -57,7 +57,7 @@
if $compiler_warning try.out >>/dev/null 2>&1 ; then
db_hashtype='int'
else
@@ -20758,7 +20764,7 @@ int main()
@@ -20998,7 +21004,7 @@
}
#endif
EOCP
@ -66,15 +66,15 @@
if $compiler_warning try.out >>/dev/null 2>&1 ; then
db_prefixtype='int'
else
@@ -25564,7 +25570,7 @@ passcat='$passcat'
@@ -25806,7 +25812,7 @@
patchlevel='$patchlevel'
path_sep='$path_sep'
perl5='$perl5'
-perl='$perl'
+perl='perl'
perl_lc_all_category_positions_init='$perl_lc_all_category_positions_init'
perl_lc_all_separator='$perl_lc_all_separator'
perl_patchlevel='$perl_patchlevel'
perl_static_inline='$perl_static_inline'
perl_thread_local='$perl_thread_local'
--- SuSE/SuSEconfig.perl.orig 2023-07-19 12:31:54.415128119 +0000
+++ SuSE/SuSEconfig.perl 2023-07-19 12:31:54.415128119 +0000
@@ -0,0 +1,76 @@
@ -253,16 +253,16 @@
+CREATE_PERLLOCAL_POD="yes"
--- cpan/Compress-Raw-Zlib/config.in.orig 2023-05-26 01:05:34.000000000 +0000
+++ cpan/Compress-Raw-Zlib/config.in 2023-07-19 12:31:54.415128119 +0000
@@ -16,9 +16,9 @@
@@ -11,9 +11,9 @@
# Setting the Gzip OS Code
#
-BUILD_ZLIB = True
-INCLUDE = ./zlib-src
-LIB = ./zlib-src
-ZLIB_INCLUDE = ./zlib-src
-ZLIB_LIB = ./zlib-src
+BUILD_ZLIB = False
+INCLUDE = /usr/include
+LIB = /usr/lib
+ZLIB_INCLUDE = /usr/include
+ZLIB_LIB = /usr/lib
OLD_ZLIB = False
GZIP_OS_CODE = AUTO_DETECT
USE_ZLIB_NG = False
@ -357,7 +357,7 @@
# so linking may fail
--- hints/linux.sh.orig 2023-05-26 01:05:34.000000000 +0000
+++ hints/linux.sh 2023-07-19 12:31:54.419128114 +0000
@@ -53,7 +53,7 @@ ignore_versioned_solibs='y'
@@ -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
@ -366,7 +366,7 @@
shift
libswanted="$*"
@@ -64,6 +64,20 @@ if echo " $libswanted " | grep -q ' gdbm
@@ -64,6 +64,20 @@
libswanted="$libswanted gdbm_compat"
fi
@ -387,7 +387,7 @@
# 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
@@ -173,6 +187,7 @@
esac
;;
esac
@ -395,7 +395,7 @@
;;
esac
@@ -234,6 +249,33 @@ case "$libc" in
@@ -260,6 +275,33 @@
;;
esac
@ -429,7 +429,7 @@
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'
@@ -281,6 +323,9 @@ else
@@ -307,6 +349,9 @@
echo "Couldn't find tcsh. Csh-based globbing might be broken."
fi
fi
@ -439,7 +439,7 @@
# Shimpei Yamashita <shimpei@socrates.patnet.caltech.edu>
# Message-Id: <33EF1634.B36B6500@pobox.com>
@@ -391,6 +436,8 @@ $define|true|[yY]*)
@@ -417,6 +462,8 @@
d_localtime_r_proto="$define"
d_random_r_proto="$define"

BIN
perl-5.38.2.tar.xz (Stored with Git LFS)

Binary file not shown.

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

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

View File

@ -1,14 +0,0 @@
--- locale.c.orig 2023-11-28 11:57:28.000000000 +0000
+++ locale.c 2024-04-12 11:06:26.236116452 +0000
@@ -5280,11 +5280,6 @@ Perl_init_i18nl10n(pTHX_ int printwarn)
DEBUG_Lv(PerlIO_printf(Perl_debug_log, "created C object %p\n",
PL_C_locale_obj));
- /* Switch to using the POSIX 2008 interface now. This would happen below
- * anyway, but deferring it can lead to leaks of memory that would also get
- * malloc'd in the interim */
- uselocale(PL_C_locale_obj);
-
# ifdef USE_LOCALE_NUMERIC
PL_underlying_numeric_obj = duplocale(PL_C_locale_obj);

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Tue Jun 11 16:05:14 UTC 2024 - Dirk Stoecker <opensuse@dstoecker.de>
- update to 5.40.0
* New __CLASS__ Keyword
* :reader attribute for field variables
* Permit a space in -M command-line option
* Restrictions to use VERSION declarations
* New builtin::inf and builtin::nan functions (experimental)
* New ^^ logical xor operator
* try/catch feature is no longer experimental
* for iterating over multiple values at a time is no longer experimental
* builtin module is no longer experimental
* The :5.40 feature bundle adds try
* use v5.40; imports builtin functions
* CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
* CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
* reset EXPR now calls set-magic on scalars
* Calling the import method of an unknown package produces a warning
* return no longer allows an indirect object
* Class barewords no longer resolved as file handles in method calls
under no feature "bareword_filehandles"
* Using goto to jump from an outer scope into an inner scope is
deprecated and will be removed completely in Perl 5.42. [GH #21601]
* The negation OPs have been modified to support the generic TARGMY
optimization. [GH #21442]
- Refresh perl-5.38.0.diff
- Drop perl-5.18.2-overflow.diff (no longer applicable)
- Drop perl-locale-backport.diff (proper fix in new version)
- Drop old manual package name based perl provides
-------------------------------------------------------------------
Fri Apr 12 13:06:56 CEST 2024 - mls@suse.de

View File

@ -1,5 +1,5 @@
#
# spec file
# spec file for package perl
#
# Copyright (c) 2024 SUSE LLC
#
@ -23,11 +23,11 @@
%define name_suffix %{nil}
%endif
%define pversion 5.38.2
%define pversion 5.40.0
# set to nil when equal to pversion
%global versionlist 5.38.0
%global versionlist %{nil}
Name: perl%{?name_suffix}
Version: 5.38.2
Version: 5.40.0
Release: 0
Summary: The Perl interpreter
License: Artistic-1.0 OR GPL-1.0-or-later
@ -47,14 +47,12 @@ Patch6: perl-saverecontext.diff
Patch7: perl-5.22.0_wrong_rpm_provides.diff
Patch8: skip_time_hires.patch
Patch9: perl-incfix.diff
Patch11: perl-5.18.2-overflow.diff
# PATCH-FIX-OPENSUSE prevent changing package when rebuilding
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
# PATCH-FIX-UPSTREAM unmerged https://www.nntp.perl.org/group/perl.perl5.porters/2018/12/msg253240.html
Patch18: perl-reproducible2.patch
Patch19: perl-locale-backport.diff
BuildRequires: db-devel
BuildRequires: gdbm-devel
BuildRequires: libbz2-devel
@ -65,65 +63,10 @@ BuildRequires: xz
BuildRequires: zlib-devel
Requires: perl-base = %{version}
Suggests: perl-doc = %{version}
Provides: perl-500
Provides: perl-Archive-Tar = 2.40
Provides: perl(:MODULE_COMPAT_%{pversion})
%if "%{versionlist}" != ""
Provides: perl(:MODULE_COMPAT_%{versionlist})
%endif
Obsoletes: perl-Archive-Tar <= 2.40
Provides: perl-autodie = 2.36
Obsoletes: perl-autodie <= 2.36
Provides: perl-Compress-Raw-Zlib = 2.204
Obsoletes: perl-Compress-Raw-Zlib <= 2.204
Provides: perl-Compress-Zlib = 2.204
Obsoletes: perl-Compress-Zlib <= 2.204
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.280238
Obsoletes: perl-ExtUtils-CBuilder <= 0.280238
Provides: perl-ExtUtils-ParseXS = 3.51
Obsoletes: perl-ExtUtils-ParseXS <= 3.51
Provides: perl-Filter-Simple = 0.96
Obsoletes: perl-Filter-Simple <= 0.96
Provides: perl-I18N-LangTags = 0.45
Obsoletes: perl-I18N-LangTags <= 0.45
Provides: perl-IO-Compress-Base = 2.204
Obsoletes: perl-IO-Compress-Base <= 2.204
Provides: perl-IO-Compress-Zlib = 2.204
Obsoletes: perl-IO-Compress-Zlib <= 2.204
Provides: perl-IO-Socket-IP = 0.41
Obsoletes: perl-IO-Socket-IP <= 0.41
Provides: perl-IO-Zlib = 1.14
Obsoletes: perl-IO-Zlib <= 1.14
Provides: perl-libnet = 3.15
Obsoletes: perl-libnet <= 3.15
Provides: perl-Locale-Maketext-Simple = 0.21
Obsoletes: perl-Locale-Maketext-Simple <= 0.21
Provides: perl-MIME-Base64 = 3.16
Obsoletes: perl-MIME-Base64 <= 3.16
Provides: perl-Parse-CPAN-Meta = 2.150010
Obsoletes: perl-Parse-CPAN-Meta <= 2.150010
Provides: perl-PathTools = 3.88
Obsoletes: perl-PathTools <= 3.88
Provides: perl-Pod-Escapes = 1.07
Obsoletes: perl-Pod-Escapes <= 1.07
Provides: perl-Pod-Simple = 3.43
Obsoletes: perl-Pod-Simple <= 3.43
Provides: perl-Storable = 3.32
Obsoletes: perl-Storable <= 3.32
Provides: perl-Test-Harness = 3.44
Obsoletes: perl-Test-Harness <= 3.44
Provides: perl-Test-Simple = 1.302194
Obsoletes: perl-Test-Simple <= 1.302194
Provides: perl-Text-Balanced = 2.06
Obsoletes: perl-Text-Balanced <= 2.06
Provides: perl-Time-HiRes = 1.9775
Obsoletes: perl-Time-HiRes <= 1.9775
Provides: perl-version = 0.9929
Obsoletes: perl-version <= 0.9929
%if "%{version}" != "%{pversion}"
Provides: perl = %{pversion}-%{release}
%endif
@ -188,10 +131,8 @@ cp -p %{SOURCE3} .
%patch -P 13
%endif
%patch -P 9 -p1
%patch -P 11
%patch -P 12 -p1
%patch -P 18
%patch -P 19
%build
%define _lto_cflags %{nil}
@ -298,7 +239,6 @@ cat << EOF > perl-base-filelist
/usr/lib/perl5/%{pversion}/base.pm
/usr/lib/perl5/%{pversion}/builtin.pm
/usr/lib/perl5/%{pversion}/bytes.pm
/usr/lib/perl5/%{pversion}/bytes_heavy.pl
/usr/lib/perl5/%{pversion}/constant.pm
/usr/lib/perl5/%{pversion}/fields.pm
/usr/lib/perl5/%{pversion}/feature.pm