Skip to content

Commit 5df8358

Browse files
authored
Merge 7d34c7a into e3079c6
2 parents e3079c6 + 7d34c7a commit 5df8358

File tree

2 files changed

+29
-11
lines changed

2 files changed

+29
-11
lines changed

Makefile.am

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -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)
108120
SUBDIR_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 = ( \
231252
all-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@
258276
all-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
10791094
libupsclient-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

10831098
tools/gitlog2changelog.py: tools/gitlog2changelog.py.in @dotMAKE@
10841099
+cd $(@D) && $(MAKE) $(AM_MAKEFLAGS) -s $(@F)

include/Makefile.am

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,10 @@ nut_version.h: @FORCE_NUT_VERSION@
5252
fi ; \
5353
exit 0 ; \
5454
fi ; \
55-
if test -n "`find '$@' -newer '.all.nut_version-generated.timestamp' 2>/dev/null`" ; then \
55+
if test -n "`find '$@' -newer '.all.nut_version-generated.timestamp' 2>/dev/null`" \
56+
&& [ x"$(NUT_VERSION_H_GENERATED)" != xfalse ] \
57+
&& [ x"$${NUT_VERSION_H_GENERATED}" != xfalse ] \
58+
; then \
5659
if [ x"$(MAINTAINER_GENERATE_HEADER_DEBUG)" = xyes ] ; then \
5760
echo "=== SKIP (include) $@ (.all.nut_version-generated.timestamp was made in this larger run and is older than the generated file)" >&2; \
5861
fi ; \

0 commit comments

Comments
 (0)