gnu: automake: Adjust to deal with Perl 5.22.

Fixes <http://bugs.gnu.org/22375>.

* gnu/packages/patches/automake-regexp-syntax.patch: New file.
* gnu/packages/autotools.scm (automake)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
This commit is contained in:
Ludovic Courtès 2016-01-15 13:07:37 +01:00
parent 76002e54f2
commit 89b48232f8
3 changed files with 39 additions and 2 deletions

View File

@ -412,6 +412,7 @@ dist_patch_DATA = \
gnu/packages/patches/ath9k-htc-firmware-objcopy.patch \ gnu/packages/patches/ath9k-htc-firmware-objcopy.patch \
gnu/packages/patches/audacity-fix-ffmpeg-binding.patch \ gnu/packages/patches/audacity-fix-ffmpeg-binding.patch \
gnu/packages/patches/automake-skip-amhello-tests.patch \ gnu/packages/patches/automake-skip-amhello-tests.patch \
gnu/packages/patches/automake-regexp-syntax.patch \
gnu/packages/patches/avahi-localstatedir.patch \ gnu/packages/patches/avahi-localstatedir.patch \
gnu/packages/patches/avidemux-install-to-lib.patch \ gnu/packages/patches/avidemux-install-to-lib.patch \
gnu/packages/patches/avrdude-fix-libusb.patch \ gnu/packages/patches/avrdude-fix-libusb.patch \

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org> ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
@ -195,7 +195,9 @@ output is indexed in many ways to simplify browsing.")
(base32 (base32
"0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r")) "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r"))
(patches (patches
(list (search-patch "automake-skip-amhello-tests.patch"))))) (map search-patch
'("automake-regexp-syntax.patch"
"automake-skip-amhello-tests.patch")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("autoconf" ,(autoconf-wrapper)) `(("autoconf" ,(autoconf-wrapper))

View File

@ -0,0 +1,34 @@
From <https://lists.gnu.org/archive/html/automake-patches/2015-07/msg00000.html>.
See also <http://bugs.gnu.org/22372>.
From 34163794a58b5bd91c5d6bd9adf5437571c7a479 Mon Sep 17 00:00:00 2001
From: Pavel Raiskup <praiskup@redhat.com>
Date: Tue, 7 Jul 2015 10:54:24 +0200
Subject: [PATCH] bin/automake: escape '{' in regexp pattern
Based on perlre(1) documentation:
.. in Perl v5.26, literal uses of a curly bracket will be required
to be escaped, say by preceding them with a backslash ("\{" ) or
enclosing them within square brackets ("[{]") ..
References:
https://bugzilla.redhat.com/1239379
* bin/automake.in (substitute_ac_subst_variables): Escape the
occurrence of '{' character.
---
bin/automake.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bin/automake.in b/bin/automake.in
index 0c29184..c294ced 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -3898,7 +3898,7 @@ sub substitute_ac_subst_variables_worker
sub substitute_ac_subst_variables
{
my ($text) = @_;
- $text =~ s/\${([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
+ $text =~ s/\$\{([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
return $text;
}