summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2016-11-29 15:51:18 +0100
committerNikos Mavrogiannopoulos <nmav@redhat.com>2016-11-29 16:25:14 +0100
commit7e208c8d03d60c61d3814a0e07ef43733d773de6 (patch)
treefb3e39f5a7e030419ea93fd01e804c0777541ef3
parentbb84b1d130c18b39fa43ca7cca4308533b4ea29a (diff)
downloadgnutls-7e208c8d03d60c61d3814a0e07ef43733d773de6.tar.gz
tools: use stamp files to allow parallel build of autogen files
Autogen seems to output on the creates files gradually, something that makes 'make' believe that the command is complete prior to the output file being fully populated. The current approach uses stamp files to ensure that no incomplete files are used for compilation.
-rw-r--r--.gitignore1
-rw-r--r--src/Makefile.am75
2 files changed, 54 insertions, 22 deletions
diff --git a/.gitignore b/.gitignore
index ee1a33bf9d..857238a532 100644
--- a/.gitignore
+++ b/.gitignore
@@ -948,3 +948,4 @@ tests/pkcs11-privkey-export
tests/dtls1-2-mtu-check
doc/gendocs_template_min
build/
+src/*.stamp
diff --git a/src/Makefile.am b/src/Makefile.am
index f669f9e139..d7a1404c1d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -223,37 +223,68 @@ libcmd_systemkey_la_SOURCES = systemkey-args.def systemkey-args.c systemkey-args
libcmd_systemkey_la_LIBADD = ../lib/libgnutls.la gl/libgnu_gpl.la ../gl/libgnu.la
libcmd_systemkey_la_LIBADD += $(LTLIBREADLINE) $(INET_PTON_LIB) $(LIB_CLOCK_GETTIME)
-danetool-args.h: danetool-args.c
-danetool-args.c: $(srcdir)/danetool-args.def $(srcdir)/args-std.def
+danetool-args.h: danetool-args.stamp
+danetool-args.c: danetool-args.stamp
+danetool-args.stamp: $(srcdir)/danetool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-ocsptool-args.h: ocsptool-args.c
-ocsptool-args.c: $(srcdir)/ocsptool-args.def $(srcdir)/args-std.def
+ touch $@
+
+ocsptool-args.h: ocsptool-args.stamp
+ocsptool-args.c: ocsptool-args.stamp
+ocsptool-args.stamp: $(srcdir)/ocsptool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-tpmtool-args.h: tpmtool-args.c
-tpmtool-args.c: $(srcdir)/tpmtool-args.def $(srcdir)/args-std.def
+ touch $@
+
+tpmtool-args.h: tpmtool-args.stamp
+tpmtool-args.c: tpmtool-args.stamp
+tpmtool-args.stamp: $(srcdir)/tpmtool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-p11tool-args.h: p11tool-args.c
-p11tool-args.c: $(srcdir)/p11tool-args.def $(srcdir)/args-std.def
+ touch $@
+
+p11tool-args.h: p11tool-args.stamp
+p11tool-args.c: p11tool-args.stamp
+p11tool-args.stamp: $(srcdir)/p11tool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-psktool-args.h: psktool-args.c
-psktool-args.c: $(srcdir)/psktool-args.def $(srcdir)/args-std.def
+ touch $@
+
+psktool-args.h: psktool-args.stamp
+psktool-args.c: psktool-args.stamp
+psktool-args.stamp: $(srcdir)/psktool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-cli-debug-args.h: cli-debug-args.c
-cli-debug-args.c: $(srcdir)/cli-debug-args.def $(srcdir)/args-std.def
+ touch $@
+
+cli-debug-args.h: cli-debug-args.stamp
+cli-debug-args.c: cli-debug-args.stamp
+cli-debug-args.stamp: $(srcdir)/cli-debug-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-cli-args.h: cli-args.c
-cli-args.c cli-args.h: $(srcdir)/cli-args.def $(srcdir)/args-std.def
+ touch $@
+
+cli-args.h: cli-args.stamp
+cli-args.c: cli-args.stamp
+cli-args.stamp cli-args.h: $(srcdir)/cli-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-serv-args.h: serv-args.c
-serv-args.c: $(srcdir)/serv-args.def $(srcdir)/args-std.def
+ touch $@
+
+serv-args.h: serv-args.stamp
+serv-args.c: serv-args.stamp
+serv-args.stamp: $(srcdir)/serv-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-srptool-args.h: srptool-args.c
-srptool-args.c: $(srcdir)/srptool-args.def $(srcdir)/args-std.def
+ touch $@
+
+srptool-args.h: srptool-args.stamp
+srptool-args.c: srptool-args.stamp
+srptool-args.stamp: $(srcdir)/srptool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
-certtool-args.h: certtool-args.c
-certtool-args.c: $(srcdir)/certtool-args.def $(srcdir)/args-std.def
+ touch $@
+
+certtool-args.h: certtool-args.stamp
+certtool-args.c: certtool-args.stamp
+certtool-args.stamp: $(srcdir)/certtool-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
+ touch $@
-systemkey-args.h: systemkey-args.c
-systemkey-args.c: $(srcdir)/systemkey-args.def $(srcdir)/args-std.def
+systemkey-args.h: systemkey-args.stamp
+systemkey-args.c: systemkey-args.stamp
+systemkey-args.stamp: $(srcdir)/systemkey-args.def $(srcdir)/args-std.def
-$(AUTOGEN) $<
+ touch $@