X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ian/git?p=subdirmk.git;a=blobdiff_plain;f=generate;h=ba66f8677fba472bc90a7ddd44b42693ab1b632a;hp=ca54f944d13cf5011df25c77e4ca86f3c5af5821;hb=503a7e5169b4a18e2ad2569daeb9e13a99f21070;hpb=61f8c1504443809e6a86217bc8f35ba9c1b7ab5f diff --git a/generate b/generate index ca54f94..ba66f86 100755 --- a/generate +++ b/generate @@ -137,11 +137,14 @@ sub process_input_mk ($$$$$$$$$) { } $input_files{$f}++; + my %srcdirmap = ( + '^' => "\$(top_srcdir)${dir_suffix}", + '~' => "\$(top_srcdir)", + ); my %pfxmap = ( '' => $dir_prefix, - '^' => "\$(top_srcdir)${dir_suffix}/", - '~' => "\$(top_srcdir)/", ); + $pfxmap{$_} = $srcdirmap{$_}.'/' foreach keys %srcdirmap; while (<$input>) { if (s#^\s*$esc\:##) { @@ -161,9 +164,10 @@ sub process_input_mk ($$$$$$$$$) { elsif (m{^(?=$caps_re)}) { o $var_prefix } elsif (s{^([~^]?)(?=$lc_re)}{}) { o $pfxmap{$1} } elsif (s{^_}{}) { o $var_prefix } - elsif (s{^=_}{}) { o $var_prefix } + elsif (s{^=}{}) { o $var_prefix_name } elsif (s{^([~^]?)/}{}) { o $pfxmap{$1} } - elsif (s{^=/}{}) { o $dir_name } + elsif (s{^\.}{}) { o $dir_name } + elsif (s{^([~^])\.}{}) { o $srcdirmap{$1} } elsif (s{^([~^]?)(?=[ \t])}{}) { my $prefix = $pfxmap{$1} // die; my $after='';