Hello!
Here is a small fix to automake so that it works in recent versions of perl.

Currently, with perl 5.26 I get this error while trying to build automake from source: Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at automake-1.15/bin/automake line 3936.

this patch fixes that by escaping the braces.
From 19984fffbcc0989eedea70c6639b8e41d1b2718f Mon Sep 17 00:00:00 2001
From: Raymond Nicholson <ra...@airmail.cc>
Date: Tue, 14 Nov 2017 21:17:57 +0000
Subject: [PATCH] minor bug fix to bin/automake.in. update regex syntax in
 substitute_ac_subst_variables escape { and } so that it works in perl 5.26
 and newer

---
 bin/automake.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/automake.in b/bin/automake.in
index 5e36c0ff6..83842fe31 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -4026,7 +4026,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;
 }
 
-- 
2.15.0

Reply via email to