open STDIN, "<", $input or die "$input: $!\n" if (defined $input);
my $printed_header = 0;
+my $check_mkdir;
my @cleanfiles;
# Hashes to record make variables used in the automake source. The allvars
# ordinary variable so we can deal with them later.
s/BUILT_SOURCES/gnulib_core_headers/;
+ # Rules for "toplevel" header files do not include commands to create
+ # the target directory; let's add that.
+ if (defined $check_mkdir) {
+ if (/gl_V_at/ || /AM_V_GEN/ and not /MKDIR_P/) {
+ my $dir = "lib/$check_mkdir";
+ $dir =~ s|/[^/]*||;
+
+ print "\t\$(AM_V_GEN)\$(MKDIR_P) $dir\n";
+ s/AM_V_GEN|gl_V_at/AM_V_at/;
+ }
+ undef $check_mkdir
+ }
+
# Targets are similar to variables: the target and its dependencies
# need to be mangled.
- if (/^[^\t].*:/) {
+ if (/^([^\t:]*):/) {
+ $check_mkdir = $1;
$_ = mangle_target($_);
}