Merge #46075: texinfoInteractive: fix for new perl
This commit is contained in:
commit
b5bd566172
|
@ -17,6 +17,9 @@ stdenv.mkDerivation rec {
|
||||||
inherit sha256;
|
inherit sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# TODO: fix on mass rebuild
|
||||||
|
${if interactive then "patches" else null} = optional (version == "6.5") ./perl.patch;
|
||||||
|
|
||||||
# We need a native compiler to build perl XS extensions
|
# We need a native compiler to build perl XS extensions
|
||||||
# when cross-compiling.
|
# when cross-compiling.
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc perl ];
|
depsBuildBuild = [ buildPackages.stdenv.cc perl ];
|
||||||
|
|
43
pkgs/development/tools/misc/texinfo/perl.patch
Normal file
43
pkgs/development/tools/misc/texinfo/perl.patch
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
Adapted from http://svn.savannah.gnu.org/viewvc/texinfo/
|
||||||
|
Author: gavin
|
||||||
|
--- trunk/tp/Texinfo/Parser.pm 2018-06-04 19:51:36 UTC (rev 8006)
|
||||||
|
+++ trunk/tp/Texinfo/Parser.pm 2018-07-13 15:31:28 UTC (rev 8007)
|
||||||
|
@@ -5531,11 +5531,11 @@
|
||||||
|
}
|
||||||
|
} 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->__(
|
||||||
|
--- trunk/tp/Texinfo/Convert/XSParagraph/xspara.c 2018-07-13 15:31:28 UTC (rev 8007)
|
||||||
|
+++ trunk/tp/Texinfo/Convert/XSParagraph/xspara.c 2018-07-13 15:39:29 UTC (rev 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",
|
|
@ -8743,13 +8743,9 @@ with pkgs;
|
||||||
texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { };
|
texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { };
|
||||||
texinfo6 = callPackage ../development/tools/misc/texinfo/6.5.nix { };
|
texinfo6 = callPackage ../development/tools/misc/texinfo/6.5.nix { };
|
||||||
texinfo = texinfo6;
|
texinfo = texinfo6;
|
||||||
texinfoInteractive = appendToName "interactive" (texinfo.override {
|
texinfoInteractive = appendToName "interactive" (
|
||||||
interactive = true;
|
texinfo.override { interactive = true; }
|
||||||
# doCheck = true -> some xlocale.h problem with perl 5.28.0
|
);
|
||||||
# (it's mistakenly trying to include the non-existent header)
|
|
||||||
perl = perl526;
|
|
||||||
buildPackages = buildPackages // { perl = buildPackages.perl526; };
|
|
||||||
});
|
|
||||||
|
|
||||||
texi2html = callPackage ../development/tools/misc/texi2html { };
|
texi2html = callPackage ../development/tools/misc/texi2html { };
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue