guix_mirror_bot pushed a commit to branch core-packages-team in repository guix.
commit 4e1576cebeaa417fa915a2564e13096a06501b7a Author: Yelninei <[email protected]> AuthorDate: Fri Nov 7 13:15:48 2025 +0000 gnu: perl: Update to 5.42.0 * gnu/packages/perl.scm (perl): Update to 5.42.0. * gnu/packages/patches/perl-no-sys-dirs.patch: Adjust patch for new version. Change-Id: I6995213564bee1056665016d7ac66882f41a7696 --- gnu/packages/patches/perl-no-sys-dirs.patch | 93 +++++++++++------------------ gnu/packages/perl.scm | 4 +- 2 files changed, 36 insertions(+), 61 deletions(-) diff --git a/gnu/packages/patches/perl-no-sys-dirs.patch b/gnu/packages/patches/perl-no-sys-dirs.patch index 14d634cac99..c6d99b4f08d 100644 --- a/gnu/packages/patches/perl-no-sys-dirs.patch +++ b/gnu/packages/patches/perl-no-sys-dirs.patch @@ -3,10 +3,11 @@ Don't look for headers and libraries in "traditional" locations. Patch adapted from Nixpkgs, originally by Eelco Dolstra <[email protected]>. -diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure ---- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200 -+++ perl-5.20.0/Configure 2014-06-25 10:43:35.368285986 +0200 -@@ -108,15 +108,7 @@ +diff --git a/Configure b/Configure +index 4da7088bff..1a86e0a77d 100755 +--- a/Configure ++++ b/Configure +@@ -108,15 +108,7 @@ if test -d c:/. || ( uname -a | grep -i 'os\(/\|\)2' 2>&1 ) 2>&1 >/dev/null ; th fi : Proper PATH setting @@ -23,7 +24,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure for p in $paths do -@@ -1435,8 +1427,7 @@ +@@ -1459,8 +1451,7 @@ groupstype='' i_whoami='' : Possible local include directories to search. : Set locincpth to "" in a hint file to defeat local include searches. @@ -33,7 +34,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure : : no include file wanted by default inclwanted='' -@@ -1450,17 +1441,12 @@ +@@ -1474,19 +1465,12 @@ DEBUGGING='' archobjs='' libnames='' : change the next line if compiling for Xenix/286 on Xenix/386 @@ -50,11 +51,13 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure -test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" -test -f /shlib/libc.so && glibpth="/shlib $glibpth" -test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64" +- +-: Private path used by Configure to find libraries. Its value +glibpth="" - - : Private path used by Configure to find libraries. Its value : is prepended to libpth. This variable takes care of special -@@ -1495,8 +1481,6 @@ + : machines, like the mips. Usually, it should be empty. + plibpth='' +@@ -1519,8 +1503,6 @@ libswanted="cl pthread socket bind inet ndbm gdbm dbm db malloc dl ld" libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD" : We probably want to search /usr/shlib before most other libraries. : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. @@ -63,7 +66,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure : Do not use vfork unless overridden by a hint file. usevfork=false -@@ -2553,7 +2537,6 @@ +@@ -2585,7 +2567,6 @@ uname zip " pth=`echo $PATH | sed -e "s/$p_/ /g"` @@ -71,7 +74,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure for file in $loclist; do eval xxx=\$$file case "$xxx" in -@@ -5049,7 +5033,7 @@ +@@ -5032,7 +5013,7 @@ esac : Set private lib path case "$plibpth" in '') if ./mips; then @@ -80,7 +83,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure fi;; esac case "$libpth" in -@@ -8877,13 +8861,8 @@ +@@ -8869,13 +8850,8 @@ esac echo " " case "$sysman" in '') @@ -96,7 +99,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure ;; esac if $test -d "$sysman"; then -@@ -21027,9 +21006,10 @@ +@@ -21740,9 +21716,10 @@ $rm_try tryp case "$full_ar" in '') full_ar=$ar ;; esac @@ -108,37 +111,11 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure : see what type gids are declared as in the kernel echo " " -Only in perl-5.20.0/: Configure.orig -diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL ---- perl-5.20.0-orig/ext/Errno/Errno_pm.PL 2014-05-26 15:34:20.000000000 +0200 -+++ perl-5.20.0/ext/Errno/Errno_pm.PL 2014-06-25 10:31:24.317970047 +0200 -@@ -114,7 +114,7 @@ sub get_files { - # When cross-compiling we may store a path for gcc's "sysroot" option: - my $sysroot = $Config{sysroot} || ''; - my $linux_errno_h; -- if ($^O eq 'linux') { -+ if (0) { - # Some Linuxes have weird errno.hs which generate - # no #file or #line directives - ($linux_errno_h) = grep { -e $_ } map { "$_/errno.h" } -@@ -134,13 +134,6 @@ sub get_files { - if ($dep =~ /(\S+errno\.h)/) { - $file{$1} = 1; - } -- } elsif ($^O eq 'linux' && -- $Config{gccversion} ne '' && -- $Config{gccversion} !~ /intel/i && -- # might be using, say, Intel's icc -- $linux_errno_h -- ) { -- $file{$linux_errno_h} = 1; - } elsif ($^O eq 'haiku') { - # hidden in a special place - $file{'/boot/develop/headers/posix/errno.h'} = 1; -diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh ---- perl-5.20.0-orig/hints/freebsd.sh 2014-01-31 22:55:51.000000000 +0100 -+++ perl-5.20.0/hints/freebsd.sh 2014-06-25 10:25:53.263964680 +0200 -@@ -119,21 +119,21 @@ +diff --git a/hints/freebsd.sh b/hints/freebsd.sh +index 70bb90ee95..6580219c17 100644 +--- a/hints/freebsd.sh ++++ b/hints/freebsd.sh +@@ -127,21 +127,21 @@ case "$osvers" in objformat=`/usr/bin/objformat` if [ x$objformat = xaout ]; then if [ -e /usr/lib/aout ]; then @@ -166,10 +143,11 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/ ldflags="-Wl,-E " lddlflags="-shared " cccdlflags='-DPIC -fPIC' -diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh ---- perl-5.20.0-orig/hints/linux.sh 2014-05-26 15:34:20.000000000 +0200 -+++ perl-5.20.0/hints/linux.sh 2014-06-25 10:33:47.354883843 +0200 -@@ -150,28 +150,6 @@ +diff --git a/hints/linux.sh b/hints/linux.sh +index 83ba0c5c97..d7b6ce04fe 100644 +--- a/hints/linux.sh ++++ b/hints/linux.sh +@@ -176,27 +176,6 @@ case "$optimize" in ;; esac @@ -177,7 +155,7 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li -# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us -# where to look. We don't want gcc's own libraries, however, so we -# filter those out. --# This could be conditional on Unbuntu, but other distributions may +-# This could be conditional on Ubuntu, but other distributions may -# follow suit, and this scheme seems to work even on rather old gcc's. -# This unconditionally uses gcc because even if the user is using another -# compiler, we still need to find the math library and friends, and I don't @@ -189,16 +167,15 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li -if [ -x /usr/bin/gcc ] ; then - gcc=/usr/bin/gcc -# clang also provides -print-search-dirs --elif ${cc:-cc} --version 2>/dev/null | grep -q '^clang ' ; then +-elif ${cc:-cc} --version 2>/dev/null | grep -q -e '^clang version' -e ' clang version'; then - gcc=${cc:-cc} -else - gcc=gcc -fi -- + case "$plibpth" in '') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries | - cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'` -@@ -208,32 +186,6 @@ +@@ -234,31 +213,6 @@ case "$usequadmath" in ;; esac @@ -227,11 +204,10 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li - done - ;; -esac -- + if ${sh:-/bin/sh} -c exit; then echo '' - echo 'You appear to have a working bash. Good.' -@@ -311,33 +263,6 @@ +@@ -337,32 +291,6 @@ sparc*) ;; esac @@ -261,7 +237,6 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li - fi - ;; -esac -- + # Linux on Synology. - if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then - # Tested on Synology DS213 and DS413 + if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then \ No newline at end of file diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index db3d9397850..8e4a9e48a26 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -118,14 +118,14 @@ ;; Yeah, Perl... It is required early in the bootstrap process by Linux. (package (name "perl") - (version "5.36.0") + (version "5.42.0") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/src/5.0/perl-" version ".tar.gz")) (sha256 (base32 - "02p0ljvxgay5g8s8j1kghdylkj581qx3qlwavlmgd5n3iapqaq72")) + "1p4n61k2jcym7q62p15qvavas42mynb54ip2jybip6kz9lcfz4z0")) (patches (search-patches "perl-no-sys-dirs.patch" "perl-autosplit-default-time.patch"
