From 92a89700c65e52fac8c2cace51a7112d60b3f42f Mon Sep 17 00:00:00 2001 From: Nick Bowler Date: Sun, 6 Jan 2019 11:56:28 -0500 Subject: [PATCH] Fix depfiles compatibility with modern Automake. Automake 1.16 changes how depfiles are created. It is now necessary to define a rule which creates the stub and additionally we must clean them explicitly. This is a bit annoying to do but that's the price of relying on undocumented internal behaviour, I guess. The extra rule should be harmless when using Automake 1.15. --- snippet/autotest.mk | 11 ++++++++++- snippet/glconfig.mk | 12 +++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/snippet/autotest.mk b/snippet/autotest.mk index 738e321..0a10c9f 100644 --- a/snippet/autotest.mk +++ b/snippet/autotest.mk @@ -1,4 +1,4 @@ -# Copyright © 2015 Nick Bowler +# Copyright © 2015,2019 Nick Bowler # # Automake fragment to hook up a basic Autotest test suite into the build. # It is expected that a testsuite.at file exists in $(srcdir). The @@ -89,3 +89,12 @@ EXTRA_DIST += testsuite testsuite.at testsuite.deps package.m4 DISTCLEANFILES += atconfig $(DEPDIR)/testsuite.P @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/testsuite.P@am__quote@ + +# Automake 1.16 and newer use make rules to generate the dependency stubs. +# we must hook those which is kind of annoying to do. This should be harmless +# on previous versions which generate the stubs directly in config.status. +_dx_autotest_depfiles = am--depfiles +$(_dx_autotest_depfiles): $(DEPDIR)/testsuite.P +$(DEPDIR)/testsuite.P: + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && mv -f $@-t $@ diff --git a/snippet/glconfig.mk b/snippet/glconfig.mk index 4bf112e..b18d50b 100644 --- a/snippet/glconfig.mk +++ b/snippet/glconfig.mk @@ -1,4 +1,4 @@ -# Copyright © 2011 Nick Bowler +# Copyright © 2011-2013,2019 Nick Bowler # # Automake fragment to generate a Gnulib config header to rewrite exported # symbols. This fragment relies on the Gnulib makefile postprocessing done by @@ -79,3 +79,13 @@ glconfig-gen: $(gnulib_symfiles) .PHONY: glconfig-gen @AMDEP_TRUE@@am__include@ @am__quote@@GLSRC@/$(DEPDIR)/glconfig.Ph@am__quote@ + +# Automake 1.16 and newer use make rules to generate the dependency stubs. +# we must hook those which is kind of annoying to do. This should be harmless +# on previous versions which generate the stubs directly in config.status. +_dx_glconfig_depfiles = am--depfiles +$(_dx_glconfig_depfiles): @GLSRC@/$(DEPDIR)/glconfig.Ph +@GLSRC@/$(DEPDIR)/glconfig.Ph: + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && mv -f $@-t $@ +DISTCLEANFILES += @GLSRC@/$(DEPDIR)/glconfig.Ph -- 2.43.0