@@ -103,6 +103,18 @@ all-fanout-cleanup: all-recursive
103103 @rm -f include/.all.nut_version-generated.timestamp \
104104 clients/.all.libupsclient_version-generated.timestamp
105105
106+ touch-include-all-nut_version-generated.timestamp :
107+ @[ -s include/nut_version.h ]
108+ @touch -r include/nut_version.h -d ' -10 seconds' include/.all.nut_version-generated.timestamp && exit ; \
109+ touch -d ' 1970-01-01' include/.all.nut_version-generated.timestamp && exit ; \
110+ touch include/.all.nut_version-generated.timestamp
111+
112+ touch-clients-all-libupsclient_version-generated.timestamp :
113+ @[ -s clients/libupsclient-version.h ]
114+ @touch -r clients/libupsclient-version.h -d ' -10 seconds' clients/.all.libupsclient_version-generated.timestamp && exit ; \
115+ touch -d ' 1970-01-01' clients/.all.libupsclient_version-generated.timestamp && exit ; \
116+ touch clients/.all.libupsclient_version-generated.timestamp
117+
106118# Verbosity for fanout rule tracing; 0/1 (or "default" that may auto-set
107119# to 0 or 1 in some rules below)
108120SUBDIR_MAKE_VERBOSE = default
@@ -117,6 +129,10 @@ all-fanout-maybe: @dotMAKE@
117129 if [ x" $( SUBDIR_MAKE_VERBOSE) " != x0 ] ; then \
118130 echo " SUBDIR-MAKE $@ : skip optimization for parallel make - NUT_MAKE_SKIP_FANOUT is set" ; \
119131 fi ; \
132+ $(MAKE ) $(AM_MAKEFLAGS ) NUT_VERSION_H_GENERATED=false nut_version.h || exit ; \
133+ $(MAKE ) $(AM_MAKEFLAGS ) touch-include-all-nut_version-generated.timestamp || exit ; \
134+ $(MAKE ) $(AM_MAKEFLAGS ) libupsclient-version.h || exit ; \
135+ $(MAKE ) $(AM_MAKEFLAGS ) touch-clients-all-libupsclient_version-generated.timestamp || exit ; \
120136 exit 0 ; \
121137 fi ; \
122138 case " -$( MAKEFLAGS) $( AM_MAKEFLAGS) " in \
@@ -131,7 +147,12 @@ all-fanout-maybe: @dotMAKE@
131147 * ) \
132148 if [ x" $( SUBDIR_MAKE_VERBOSE) " != x0 ] ; then \
133149 echo " SUBDIR-MAKE $@ : skip optimization for parallel make - we seem to run sequentially now, seen MAKEFLAGS='$( MAKEFLAGS) ' AM_MAKEFLAGS='$( AM_MAKEFLAGS) '" ; \
134- fi ;; \
150+ fi ; \
151+ $(MAKE ) $(AM_MAKEFLAGS ) NUT_VERSION_H_GENERATED=false nut_version.h || exit ; \
152+ $(MAKE ) $(AM_MAKEFLAGS ) touch-include-all-nut_version-generated.timestamp || exit ; \
153+ $(MAKE ) $(AM_MAKEFLAGS ) libupsclient-version.h || exit ; \
154+ $(MAKE ) $(AM_MAKEFLAGS ) touch-clients-all-libupsclient_version-generated.timestamp || exit \
155+ ;; \
135156 esac
136157
137158# We start with a pass to `make all` in `common` dir because our wild recipes
@@ -231,10 +252,7 @@ SUBDIR_TGT_RULE = ( \
231252all-libs-local/include : @dotMAKE@
232253 +@NUT_VERSION_H_GENERATED=false; export NUT_VERSION_H_GENERATED; \
233254 $(SUBDIR_TGT_RULE )
234- @[ -s include/nut_version.h ]
235- @touch -r include/nut_version.h -d ' -10 seconds' include/.all.nut_version-generated.timestamp && exit ; \
236- touch -d ' 1970-01-01' include/.all.nut_version-generated.timestamp && exit ; \
237- touch include/.all.nut_version-generated.timestamp
255+ +@$(MAKE ) $(AM_MAKEFLAGS ) touch-include-all-nut_version-generated.timestamp
238256
239257# ## Delivers: libcommon.la libcommonclient.la libcommonstr.la libcommonstrjson.la
240258# ## (consume only one of these at a time!)
@@ -258,10 +276,7 @@ all-libs-local/common: all-libs-local/include @dotMAKE@
258276all-libs-local/clients : all-libs-local/common @dotMAKE@
259277 +@NUT_VERSION_H_GENERATED=true; export NUT_VERSION_H_GENERATED; \
260278 $(SUBDIR_TGT_RULE )
261- @[ -s clients/libupsclient-version.h ]
262- @touch -r clients/libupsclient-version.h -d ' -10 seconds' clients/.all.libupsclient_version-generated.timestamp && exit ; \
263- touch -d ' 1970-01-01' clients/.all.libupsclient_version-generated.timestamp && exit ; \
264- touch clients/.all.libupsclient_version-generated.timestamp
279+ +@$(MAKE ) $(AM_MAKEFLAGS ) touch-clients-all-libupsclient_version-generated.timestamp
265280
266281# ## Delivers: libdummy_main.la libdummy_serial.la libdummy_upsdrvquery.la
267282# ## Delivers: libdummy_mockdrv.la libserial-nutscan.la
@@ -1078,7 +1093,7 @@ nut_version.h include/nut_version.h: @dotMAKE@
10781093# May involve (re-)build of libupsclient.la
10791094libupsclient-version.h clients/libupsclient-version.h : include/nut_version.h @dotMAKE@
10801095 @rm -f clients/.all.libupsclient_version-generated.timestamp
1081- +cd $(abs_top_builddir ) /include && $(MAKE ) $(AM_MAKEFLAGS ) libupsclient-version.h
1096+ +cd $(abs_top_builddir ) /clients && $(MAKE ) $(AM_MAKEFLAGS ) libupsclient-version.h
10821097
10831098tools/gitlog2changelog.py : tools/gitlog2changelog.py.in @dotMAKE@
10841099 +cd $(@D ) && $(MAKE ) $(AM_MAKEFLAGS ) -s $(@F )
0 commit comments