chiark / gitweb /
Syntax: Expand &$( and &$NN to use ${ } rather than $( )
[subdirmk.git] / generate
index 510612993f34fe82f8c6f60689d73552d5d7eeb6..f91cba8145134987c1191cea6660956ad67912b1 100755 (executable)
--- a/generate
+++ b/generate
@@ -234,8 +234,8 @@ sub process_input_mk ($$$$) {
     local $err_file=$f;
 
     my %srcdirmap = (
-                 '^' => "\$(top_srcdir)${dir_suffix}",
-                 '~' => "\$(top_srcdir)",
+                 '^' => "\${top_srcdir}${dir_suffix}",
+                 '~' => "\${top_srcdir}",
                    );
     my %pfxmap = (
                  ''  => $dir_prefix,
@@ -350,7 +350,7 @@ sub process_input_mk ($$$$) {
            elsif (m{^(?=$caps_re)}) { od $var_prefix }
            elsif (s{^\$([A-Za-z]\w+)}{}) {
                $note_varref->($1,1);
-               od "\$(${var_prefix}$1)";
+               od "\${${var_prefix}$1}";
            }
            elsif (s{^([~^]?)(?=$lc_re)}{}) { od $pfxmap{$1} }
            elsif (s{^_}{}) { od $var_prefix }
@@ -361,10 +361,10 @@ sub process_input_mk ($$$$) {
            elsif (s{^\$\-}{}) { $ddbl=undef; }
            elsif (s{^\$\+}{}) { $ddbl=1; }
            elsif (s{^\$\(}{}) {
-               ddbl_only($&); oud "\$(";
+               ddbl_only($&); oud "\${";
                $note_varref->($2,!!$1) if m{^($esc)?([^()\$]+\))};
            }
-           elsif (s{^\$(\d+)}{}) { ddbl_only($&); oud "\$($1)"; }
+           elsif (s{^\$(\d+)}{}) { ddbl_only($&); oud "\${$1}"; }
            elsif (s{^\$\{}{}) {
                err 'macro invocation cannot be re-$-doubled' if $ddbl;
                od '${eval ${call ';