valac will generate additional files when using, for example, -H in VALAFLAGS. We need to recognize these options and add appropriate rebuild rules to fix parallel build.
Signed-off-by: Jürg Billeter <j...@bitron.ch> --- automake.in | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/automake.in b/automake.in index be52505..08a0ed1 100755 --- a/automake.in +++ b/automake.in @@ -5951,6 +5951,32 @@ sub lang_vala_finish_target ($$) } } + # Add rebuild rules for generated header and vapi files + my $flags = var ($derived . '_VALAFLAGS'); + if ($flags) + { + my $lastflag = ''; + foreach my $flag ($flags->value_as_list_recursive) + { + if (grep (/$lastflag/, ('-H', '-h', '--header', '--internal-header', + '--vapi'))) + { + my $headerfile = $flag; + $output_rules .= "$headerfile: ${derived}_vala.stamp\n". + "\...@if test -f \$@; then :; else \\\n". + "\t rm -f ${derived}_vala.stamp; \\\n". + "\t \$(MAKE) \$(AM_MAKEFLAGS) ${derived}_vala.stamp; \\\n". + "\tfi\n"; + + # valac is not used when building from dist tarballs + # distribute the generated files + push_dist_common ($headerfile); + $clean_files{$headerfile} = MAINTAINER_CLEAN; + } + $lastflag = $flag; + } + } + my $compile = $self->compile; # Rewrite each occurrence of `AM_VALAFLAGS' in the compile -- 1.6.3