gnu: texinfo: Fix FTBFS with Perl 5.28.
* gnu/packages/patches/texinfo-perl-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/texinfo.scm (texinfo)[source](patches): New field.
This commit is contained in:
parent
463ad503b1
commit
78a9a2501d
|
@ -1137,6 +1137,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
|
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
|
||||||
%D%/packages/patches/teensy-loader-cli-help.patch \
|
%D%/packages/patches/teensy-loader-cli-help.patch \
|
||||||
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
|
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
|
||||||
|
%D%/packages/patches/texinfo-perl-compat.patch \
|
||||||
%D%/packages/patches/texi2html-document-encoding.patch \
|
%D%/packages/patches/texi2html-document-encoding.patch \
|
||||||
%D%/packages/patches/texi2html-i18n.patch \
|
%D%/packages/patches/texi2html-i18n.patch \
|
||||||
%D%/packages/patches/thefuck-test-environ.patch \
|
%D%/packages/patches/thefuck-test-environ.patch \
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
Fix compatibility with newer Perls.
|
||||||
|
|
||||||
|
The first patch is taken from upstream:
|
||||||
|
https://svn.savannah.gnu.org/viewvc/texinfo?view=revision&revision=8008
|
||||||
|
|
||||||
|
The second gets rid of a deprecation warning that breaks some tests.
|
||||||
|
Taken from Fedora: <https://bugzilla.redhat.com/show_bug.cgi?id=1590308>.
|
||||||
|
|
||||||
|
--- trunk/tp/Texinfo/Convert/XSParagraph/xspara.c 2017/04/30 14:57:26 7765
|
||||||
|
+++ trunk/tp/Texinfo/Convert/XSParagraph/xspara.c 2018/07/13 15:39:29 8008
|
||||||
|
@@ -248,6 +248,11 @@
|
||||||
|
|
||||||
|
dTHX;
|
||||||
|
|
||||||
|
+#if PERL_VERSION > 27 || (PERL_VERSION == 27 && PERL_SUBVERSION > 8)
|
||||||
|
+ /* needed due to thread-safe locale handling in newer perls */
|
||||||
|
+ switch_to_global_locale();
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
if (setlocale (LC_CTYPE, "en_US.UTF-8")
|
||||||
|
|| setlocale (LC_CTYPE, "en_US.utf8"))
|
||||||
|
goto success;
|
||||||
|
@@ -320,6 +325,10 @@
|
||||||
|
{
|
||||||
|
success: ;
|
||||||
|
free (utf8_locale);
|
||||||
|
+#if PERL_VERSION > 27 || (PERL_VERSION == 27 && PERL_SUBVERSION > 8)
|
||||||
|
+ /* needed due to thread-safe locale handling in newer perls */
|
||||||
|
+ sync_locale();
|
||||||
|
+#endif
|
||||||
|
/*
|
||||||
|
fprintf (stderr, "tried to set LC_CTYPE to UTF-8.\n");
|
||||||
|
fprintf (stderr, "character encoding is: %s\n",
|
||||||
|
|
||||||
|
diff -up texinfo-6.5/tp/Texinfo/Parser.pm.orig texinfo-6.5/tp/Texinfo/Parser.pm
|
||||||
|
--- texinfo-6.5/tp/Texinfo/Parser.pm.orig 2018-06-12 13:40:29.356030136 +0200
|
||||||
|
+++ texinfo-6.5/tp/Texinfo/Parser.pm 2018-06-12 13:41:28.357725639 +0200
|
||||||
|
@@ -5478,11 +5478,11 @@ sub _parse_special_misc_command($$$$)
|
||||||
|
}
|
||||||
|
} elsif ($command eq 'clickstyle') {
|
||||||
|
# REMACRO
|
||||||
|
- if ($line =~ /^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*/) {
|
||||||
|
+ if ($line =~ /^\s+@([[:alnum:]][[:alnum:]\-]*)(\{})?\s*/) {
|
||||||
|
$args = ['@'.$1];
|
||||||
|
$self->{'clickstyle'} = $1;
|
||||||
|
$remaining = $line;
|
||||||
|
- $remaining =~ s/^\s+@([[:alnum:]][[:alnum:]\-]*)({})?\s*(\@(c|comment)((\@|\s+).*)?)?//;
|
||||||
|
+ $remaining =~ s/^\s+@([[:alnum:]][[:alnum:]\-]*)(\{})?\s*(\@(c|comment)((\@|\s+).*)?)?//;
|
||||||
|
$has_comment = 1 if (defined($4));
|
||||||
|
} else {
|
||||||
|
$self->line_error (sprintf($self->__(
|
|
@ -37,6 +37,7 @@
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/texinfo/texinfo-"
|
(uri (string-append "mirror://gnu/texinfo/texinfo-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
|
(patches (search-patches "texinfo-perl-compat.patch"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0qjzvbvnv9003xdrcpi3jp7y68j4hq2ciw9frh2hghh698zlnxvp"))))
|
"0qjzvbvnv9003xdrcpi3jp7y68j4hq2ciw9frh2hghh698zlnxvp"))))
|
||||||
|
|
Loading…
Reference in New Issue