commit:     471c86c1a081f51a214e040f1a83f7f73374526d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 10 02:20:21 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 10 02:27:01 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=471c86c1

dev-tex/biber: fix runtime w/ Perl 5.36

Closes: https://bugs.gentoo.org/850733
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-tex/biber/biber-2.16-r1.ebuild                 | 81 ++++++++++++++++++++++
 .../files/biber-2.16-perl-5.36-semicolon.patch     | 38 ++++++++++
 2 files changed, 119 insertions(+)

diff --git a/dev-tex/biber/biber-2.16-r1.ebuild 
b/dev-tex/biber/biber-2.16-r1.ebuild
new file mode 100644
index 000000000000..ab03abdc1d51
--- /dev/null
+++ b/dev-tex/biber/biber-2.16-r1.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit perl-module
+
+DESCRIPTION="A BibTeX replacement for users of biblatex"
+HOMEPAGE="http://biblatex-biber.sourceforge.net/ https://github.com/plk/biber/";
+SRC_URI="https://github.com/plk/biber/archive/v${PV}.tar.gz  -> ${P}.tar.gz"
+
+LICENSE="Artistic-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-lang/perl-5.30
+       dev-perl/autovivification
+       dev-perl/Business-ISBN
+       dev-perl/Business-ISMN
+       dev-perl/Business-ISSN
+       dev-perl/Class-Accessor
+       dev-perl/Data-Compare
+       dev-perl/Data-Dump
+       dev-perl/Data-Uniqid
+       dev-perl/DateTime-Calendar-Julian
+       dev-perl/DateTime-Format-Builder
+       dev-perl/Encode-EUCJPASCII
+       dev-perl/Encode-HanExtra
+       dev-perl/Encode-JIS2K
+       dev-perl/File-Slurper
+       dev-perl/IO-String
+       dev-perl/IPC-Run3
+       dev-perl/libwww-perl[ssl]
+       >=dev-perl/Lingua-Translit-0.280
+       dev-perl/List-AllUtils
+       dev-perl/List-MoreUtils
+       dev-perl/List-MoreUtils-XS
+       dev-perl/Log-Log4perl
+       dev-perl/LWP-Protocol-https
+       dev-perl/Mozilla-CA
+       dev-perl/Parse-RecDescent
+       dev-perl/PerlIO-utf8_strict
+       dev-perl/Regexp-Common
+       dev-perl/Sort-Key
+       >=dev-perl/Text-BibTeX-0.880.0
+       dev-perl/Text-CSV
+       dev-perl/Text-CSV_XS
+       dev-perl/Text-Roman
+       dev-perl/URI
+       >=dev-perl/Unicode-LineBreak-2019.1.0
+       >=virtual/perl-Unicode-Normalize-1.260.0
+       >=dev-perl/XML-LibXML-1.70
+       dev-perl/XML-LibXML-Simple
+       dev-perl/XML-LibXSLT
+       dev-perl/XML-Writer
+       ~dev-tex/biblatex-3.16
+       virtual/perl-IPC-Cmd
+       >=virtual/perl-Unicode-Collate-1.290.0"
+DEPEND="${RDEPEND}
+       dev-perl/Config-AutoConf
+       dev-perl/Module-Build
+       dev-perl/ExtUtils-LibBuilder
+       test? ( dev-perl/File-Which
+                       dev-perl/Parse-RecDescent
+                       dev-perl/Test-Differences )"
+BDEPEND="dev-perl/Module-Build"
+
+mydoc="doc/biber.tex"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-perl-5.36-semicolon.patch
+)
+
+src_prepare() {
+       # Disable 64-bit only Tests on non 64-bit archs
+       use amd64 || use arm64 || eapply 
"${FILESDIR}/${P}-disable-64bit-only-tests.patch"
+
+       default
+}

diff --git a/dev-tex/biber/files/biber-2.16-perl-5.36-semicolon.patch 
b/dev-tex/biber/files/biber-2.16-perl-5.36-semicolon.patch
new file mode 100644
index 000000000000..655a4e8f73e9
--- /dev/null
+++ b/dev-tex/biber/files/biber-2.16-perl-5.36-semicolon.patch
@@ -0,0 +1,38 @@
+https://bugs.gentoo.org/850733
+https://github.com/plk/biber/commit/d9e961710074d266ad6bdf395c98868d91952088
+
+From d9e961710074d266ad6bdf395c98868d91952088 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <[email protected]>
+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.
+--- 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;
+ }
+

Reply via email to