diff mbox series

[bug#63070] gnu: biber: Fix build with new Perl.

Message ID 7983a6e0e6aab37e0a449d061d8377b3d9fb9bbf.1682439510.git.dev@jpoiret.xyz
State New
Headers show
Series [bug#63070] gnu: biber: Fix build with new Perl. | expand

Commit Message

Josselin Poiret April 25, 2023, 4:18 p.m. UTC
* gnu/packages/patches/biber-adapt-perl-5.36.patch: Backport patch from
upstream's 760e6e4ec08a3097f7e6136331541a7b8c1c9df7.
* gnu/packages/tex.scm (biber): Use it.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                  |  1 +
 .../patches/biber-adapt-perl-5.36.patch       | 40 +++++++++++++++++++
 gnu/packages/tex.scm                          |  3 +-
 3 files changed, 43 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/biber-adapt-perl-5.36.patch


base-commit: 3a37e3ecd8ae0bcc0e5d00393fa9365d611bcb71

Comments

Andreas Enge April 25, 2023, 4:46 p.m. UTC | #1
Pushed, thanks!

Andreas
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 66dd240ba9..a714734bca 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -944,6 +944,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/bsd-games-stdio.h.patch			\
   %D%/packages/patches/beancount-disable-googleapis-fonts.patch	\
   %D%/packages/patches/beignet-correct-file-names.patch		\
+  %D%/packages/patches/biber-adapt-perl-5.36.patch		\
   %D%/packages/patches/bidiv-update-fribidi.patch		\
   %D%/packages/patches/binutils-boot-2.20.1a.patch		\
   %D%/packages/patches/binutils-loongson-workaround.patch	\
diff --git a/gnu/packages/patches/biber-adapt-perl-5.36.patch b/gnu/packages/patches/biber-adapt-perl-5.36.patch
new file mode 100644
index 0000000000..895813c1f2
--- /dev/null
+++ b/gnu/packages/patches/biber-adapt-perl-5.36.patch
@@ -0,0 +1,40 @@ 
+From d9e961710074d266ad6bdf395c98868d91952088 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Wed, 25 May 2022 12:41:59 +0200
+Subject: [PATCH] Adapt to Perl 5.36
+
+A developmental release of Perl 5.36.0 fails to run tests with:
+
+    $ perl -Ilib t/basic-misc.t
+    1..72
+    Can't modify undef operator in scalar assignment at lib/Biber/Section.pm line 433, near "undef;"
+    Compilation failed in require at lib/Biber.pm line 24.
+    BEGIN failed--compilation aborted at lib/Biber.pm line 24.
+    Compilation failed in require at t/basic-misc.t line 11.
+    BEGIN failed--compilation aborted at t/basic-misc.t line 11.
+    # Looks like your test exited with 255 before it could output anything.
+
+This is because of a missing semicolon between commands in
+del_everykeys(). The new perl is more strict and raises a compile-time
+error:
+
+    $ perl -e '$a = undef $b = undef;'
+    Can't modify undef operator in scalar assignment at -e line 1, near "undef;"
+    Execution of -e aborted due to compilation errors.
+---
+ lib/Biber/Section.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Biber/Section.pm b/lib/Biber/Section.pm
+index 03ed69a51..a78942f57 100644
+--- a/lib/Biber/Section.pm
++++ b/lib/Biber/Section.pm
+@@ -429,7 +429,7 @@ sub add_everykey {
+ 
+ sub del_everykeys {
+   my $self = shift;
+-  $self->{everykey} = undef
++  $self->{everykey} = undef;
+   $self->{everykey_lc} = undef;
+   return;
+ }
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 79c791c89d..a2f1de4e35 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -8832,7 +8832,8 @@  (define-public biber
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0586q8y1f2k23mvb02ccm3qsb35cwskafksixsjaih7a7xcf5gxx"))))
+                "0586q8y1f2k23mvb02ccm3qsb35cwskafksixsjaih7a7xcf5gxx"))
+              (patches (search-patches "biber-adapt-perl-5.36.patch"))))
     (build-system perl-build-system)
     (arguments
      `(#:phases