diff --git a/common/shlibs b/common/shlibs index a6b26f6e9e9..37b5cc20add 100644 --- a/common/shlibs +++ b/common/shlibs @@ -65,7 +65,7 @@ liblto_plugin.so.0 gcc-4.7.3_1 libgcc_s.so.1 libgcc-4.4.0_1 libgo.so.22 libgo-13.2.0_1 libgccjit.so.0 libgccjit-10.2.1pre1_1 -libperl.so.5.38 perl-5.38.0_1 +libperl.so.5.40 perl-5.40.1_1 libgmp.so.10 gmp-5.0.1_1 libgmpxx.so.4 gmpxx-6.0.0_2 libmpfi.so.0 mpfi-1.5.3_1 diff --git a/srcpkgs/perl/files/musl-locale.patch b/srcpkgs/perl/files/musl-locale.patch new file mode 100644 index 00000000000..dff892a0175 --- /dev/null +++ b/srcpkgs/perl/files/musl-locale.patch @@ -0,0 +1,19 @@ +--- perl-5.40/cnf/configure_misc.sh ++++ perl-5.40/cnf/configure_misc.sh +@@ -240,11 +240,11 @@ + define stdio_stream_array + define d_lc_monetary_2008 'undef' + +-define d_perl_lc_all_uses_name_value_pairs 'define' +-define d_perl_lc_all_category_positions_init 'undef' +-define d_perl_lc_all_separator 'undef' +-define perl_lc_all_separator '' +-define perl_lc_all_category_positions_init '' ++define d_perl_lc_all_uses_name_value_pairs 'undef' ++define d_perl_lc_all_category_positions_init 'define' ++define d_perl_lc_all_separator 'define' ++define perl_lc_all_separator '";"' ++define perl_lc_all_category_positions_init '{0,1,2,3,4,5}' + + define sharpbang '#!' + define startperl "$sharpbang$perlpath" diff --git a/srcpkgs/perl/files/update-perl-provides.pl b/srcpkgs/perl/files/update-perl-provides.pl index cc3acb398da..12f07ea7537 100644 --- a/srcpkgs/perl/files/update-perl-provides.pl +++ b/srcpkgs/perl/files/update-perl-provides.pl @@ -98,7 +98,7 @@ sub scrape_verln my($srcpath) = @_; open my $fh, '<', $srcpath or die "open: $!"; while(my $ln = <$fh>){ - if($ln =~ s/^.*VERSION *=>? *//){ + if($ln =~ s/^.*VERSION *=>? *// or $ln =~ s/^package .*? \K[\d.]+//){ close $fh; return $ln; } diff --git a/srcpkgs/perl/template b/srcpkgs/perl/template index 010bda8cd3f..59aff74c512 100644 --- a/srcpkgs/perl/template +++ b/srcpkgs/perl/template @@ -1,8 +1,8 @@ # Template file for 'perl' pkgname=perl -version=5.38.2 -revision=3 -_perl_cross_version=1.5.2 +version=5.40.1 +revision=1 +_perl_cross_version=1.6.1 build_style=gnu-configure makedepends="zlib-devel bzip2-devel gdbm-devel db-devel" depends="less" @@ -13,8 +13,8 @@ license="Artistic-1.0-Perl, GPL-1.0-or-later" homepage="https://www.perl.org" distfiles="https://www.cpan.org/src/5.0/perl-${version}.tar.gz https://github.com/arsv/perl-cross/releases/download/${_perl_cross_version}/perl-cross-${_perl_cross_version}.tar.gz" -checksum="a0a31534451eb7b83c7d6594a497543a54d488bc90ca00f5e34762577f40655e - 584dc54c48dca25e032b676a15bef377c1fed9de318b4fc140292a5dbf326e90" +checksum="02f8c45bb379ed0c3de7514fad48c714fd46be8f0b536bfd5320050165a1ee26 + b5f4b4457bbd7be37adac8ee423beedbcdba8963a85f79770f5e701dabc5550f" skip_extraction=perl-cross-${_perl_cross_version}.tar.gz @@ -27,33 +27,33 @@ fi # ${FILESDIR}/update-perl-provides.pl ${wrksrc} perl/template # to find the list of built in packages. -provides="perl-Archive-Tar-2.40_1 +provides="perl-Archive-Tar-3.02.001_1 perl-Attribute-Handlers-1.03_1 perl-AutoLoader-5.74_1 perl-CPAN-2.36_1 perl-CPAN-Meta-2.150010_1 - perl-CPAN-Meta-Requirements-2.140_1 + perl-CPAN-Meta-Requirements-2.143_1 perl-CPAN-Meta-YAML-0.018_1 perl-Carp-1.54_1 - perl-Compress-Raw-Bzip2-2.204.001_1 - perl-Compress-Raw-Zlib-2.204.001_1 + perl-Compress-Raw-Bzip2-2.212_1 + perl-Compress-Raw-Zlib-2.212_1 perl-Config-Perl-V-0.36_1 - perl-DB_File-1.858_1 - perl-Data-Dumper-2.188_1 - perl-Devel-PPPort-3.71_1 + perl-DB_File-1.859_1 + perl-Data-Dumper-2.189_1 + perl-Devel-PPPort-3.72_1 perl-Devel-SelfStubber-1.06_1 perl-Digest-1.20_1 perl-Digest-MD5-2.58.01_1 perl-Digest-SHA-6.04_1 perl-Dumpvalue-1.21_1 - perl-Encode-3.19_1 + perl-Encode-3.21_1 perl-Env-1.06_1 - perl-Exporter-5.77_1 - perl-ExtUtils-CBuilder-0.280238_1 + perl-Exporter-5.78_1 + perl-ExtUtils-CBuilder-0.280240_1 perl-ExtUtils-Constant-0.25_1 perl-ExtUtils-Install-2.22_1 perl-ExtUtils-MakeMaker-7.70_1 - perl-ExtUtils-Manifest-1.73_1 + perl-ExtUtils-Manifest-1.75_1 perl-ExtUtils-PL2Bat-0.005_1 perl-ExtUtils-ParseXS-3.51_1 perl-File-Fetch-1.04_1 @@ -61,88 +61,89 @@ provides="perl-Archive-Tar-2.40_1 perl-File-Temp-0.2311_1 perl-Filter-Simple-0.96_1 perl-Filter-Util-Call-1.64_1 - perl-FindBin-1.53_1 - perl-Getopt-Long-2.54_1 - perl-HTTP-Tiny-0.086_1 + perl-FindBin-1.54_1 + perl-Getopt-Long-2.57_1 + perl-HTTP-Tiny-0.088_1 perl-I18N-Collate-1.02_1 perl-I18N-LangTags-0.45_1 - perl-IO-1.52_1 - perl-IO-Compress-2.204_1 - perl-IO-Socket-IP-0.41.01_1 - perl-IO-Zlib-1.14_1 + perl-IO-1.55_1 + perl-IO-Compress-2.212_1 + perl-IO-Socket-IP-0.42_1 + perl-IO-Zlib-1.15_1 perl-IPC-Cmd-1.04_1 perl-IPC-SysV-2.09_1 perl-JSON-PP-4.16_1 perl-Locale-Maketext-1.33_1 perl-Locale-Maketext-Simple-0.21.01_1 perl-MIME-Base64-3.16.01_1 - perl-Math-BigInt-1.999837_1 - perl-Math-BigInt-FastCalc-0.5013_1 - perl-Math-BigRat-0.2624_1 + perl-Math-BigInt-2.003002_1 + perl-Math-BigInt-FastCalc-0.5018_1 perl-Math-Complex-1.62_1 perl-Memoize-1.16_1 - perl-Module-CoreList-5.20231125_1 + perl-Module-CoreList-5.20250118.40_1 perl-Module-Load-0.36_1 perl-Module-Load-Conditional-0.74_1 perl-Module-Loaded-0.08_1 - perl-Module-Metadata-1.000037_1 + perl-Module-Metadata-1.000038_1 perl-NEXT-0.69_1 perl-Net-Ping-2.76_1 perl-Params-Check-0.38_1 - perl-PathTools-3.89_1 + perl-PathTools-3.91_1 perl-Perl-OSType-1.010_1 perl-PerlIO-via-QuotedPrint-0.10_1 - perl-Pod-Checker-1.75_1 + perl-Pod-Checker-1.77_1 perl-Pod-Escapes-1.07_1 perl-Pod-Perldoc-3.2801_1 - perl-Pod-Simple-3.43_1 + perl-Pod-Simple-3.45_1 perl-Pod-Usage-2.03_1 - perl-Safe-2.44_1 + perl-Safe-2.46_1 perl-Scalar-List-Utils-1.63_1 perl-Search-Dict-1.07_1 - perl-SelfLoader-1.26_1 - perl-Socket-2.036_1 + perl-SelfLoader-1.27_1 + perl-Socket-2.038_1 perl-Storable-3.32_1 perl-Sys-Syslog-0.36_1 perl-Term-ANSIColor-5.01_1 perl-Term-Cap-1.18_1 perl-Term-Complete-1.403_1 perl-Term-ReadLine-1.17_1 + perl-Term-Table-0.018_1 perl-Test-1.31_1 - perl-Test-Harness-3.44_1 - perl-Test-Simple-1.302194_1 + perl-Test-Harness-3.48_1 + perl-Test-Simple-1.302199_1 + perl-Test2-Suite-0.000162_1 perl-Text-Abbrev-1.02_1 perl-Text-Balanced-2.06_1 perl-Text-ParseWords-3.31_1 - perl-Text-Tabs-2021.0814_1 + perl-Text-Tabs-2024.001_1 perl-Thread-Queue-3.14_1 perl-Thread-Semaphore-2.13_1 - perl-Tie-File-1.07_1 + perl-Tie-File-1.09_1 perl-Tie-RefHash-1.40_1 - perl-Time-HiRes-1.9775_1 - perl-Time-Local-1.30_1 + perl-Time-HiRes-1.9777_1 + perl-Time-Local-1.35_1 perl-Time-Piece-1.3401.01_1 perl-Unicode-Collate-1.31_1 perl-Unicode-Normalize-1.32_1 perl-Win32-0.59_1 perl-Win32API-File-0.1203.01_1 perl-XSLoader-0.32_1 - perl-autodie-2.36_1 + perl-autodie-2.37_1 perl-autouse-1.11_1 perl-base-2.27_1 - perl-bignum-0.66_1 + perl-bignum-0.67_1 perl-constant-1.33_1 perl-encoding-warnings-0.14_1 - perl-experimental-0.031_1 + perl-experimental-0.032_1 perl-if-0.0610_1 perl-lib-0.65_1 perl-libnet-3.15_1 perl-parent-0.241_1 - perl-perlfaq-5.20210520_1 + perl-perlfaq-5.20240218_1 perl-podlators-5.010_1 - perl-threads-2.36_1 - perl-threads-shared-1.68_1 - perl-version-0.9929_1" + perl-threads-2.40_1 + perl-threads-shared-1.69_1 + perl-version-0.9930_1" for f in ${provides}; do replaces+=" $($XBPS_UHELPER_CMD getpkgname ${f})>=0" @@ -153,6 +154,10 @@ post_extract() { $TAR --strip-components=1 -xf \ ${XBPS_SRCDISTDIR}/${pkgname}-${version}/perl-cross-$_perl_cross_version.tar.gz + if [ "$XBPS_TARGET_LIBC" = "musl" ]; then + patch -p1 < ${FILESDIR}/musl-locale.patch + fi + [ -n "${SOURCE_DATE_EPOCH}" ] && touch -h -d @$SOURCE_DATE_EPOCH patchlevel.h } @@ -187,6 +192,7 @@ do_configure() { export LD="$CC" ./configure --prefix=/usr $_args \ + --host-use-threads \ -Dcccdlflags="-fPIC" \ -Doptimize=" -Wall ${CFLAGS} " -Dccflags=" ${CFLAGS} " \ -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" \