Subject: bug#23014: minor bug with unescaped brace in automake.in

From: George Demmy <[email-masked]>
Date: Mon, 14 Mar 2016 18:20:27 -0400

Hello!

I was running automake in the course of building a project and the error:

$ automake --version
Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at
/usr/bin/automake-1.14 line 3930.
automake (GNU automake) 1.14.1

Apparently, the Perl crew is going to get progressively tougher with
their enforcement of their regex syntax. I checked out the sources
from savannah's git and made a patch off of my local branch off
master, the content of which I'll just cut and paste rather than
attach. It's pretty simple...

HTH and regards,

George

>From 53bf25212749cc1264b930560a1963228240ee7a Mon Sep 17 00:00:00 2001
From: George Demmy <[email-masked]>
Date: Mon, 14 Mar 2016 18:04:25 -0400
Subject: [PATCH] Escaped brace per Perl's deprecation of old regex rules

---
 bin/automake.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/bin/automake.in b/bin/automake.in
index c1d1a8a..2f6bc9e 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -6,7 +6,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec
@PERL@ -S "$0" "$@";; esac'
     if 0;

 # automake - create Makefile.in from Makefile.am
-# Copyright (C) 1994-2015 Free Software Foundation, Inc.
+# Copyright (C) 1994-2016 Free Software Foundation, Inc.

 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -3741,7 +3741,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.7.0