]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
Rework make targets related to test-rules.
authorNiels Möller <nisse@lysator.liu.se>
Wed, 7 Jun 2017 18:31:59 +0000 (20:31 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Wed, 7 Jun 2017 18:31:59 +0000 (20:31 +0200)
ChangeLog
testsuite/Makefile.in
testsuite/test-rules.stamp [new file with mode: 0644]

index 8269e6bd699029a063a6d584df2f3d700b28867d..e73011009952084833752baf189da854c108fcd8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2017-05-23  Niels Möller  <nisse@lysator.liu.se>
+
+       Rework the previous change, which had the unintended effect of
+       always regenerating .test-rules.make after ./configure is run.
+       * testsuite/Makefile.in (test-rules.stamp): New stamp file target,
+       depend on Makefile.in, and run $(MAKE) test-rules.
+       (.test-rules.make): Add a level of indirection, by depending on
+       test-rules.stamp.
+
 2017-05-20  Niels Möller  <nisse@lysator.liu.se>
 
        * testsuite/Makefile.in (test-rules): Use $(srddir)/-prefix for
index cc8dea3a8021dae496c2ef23df729b11799ce43c..c1ac7d241f7fa92c75f28776b5b1dedbcff8da5b 100644 (file)
@@ -67,6 +67,7 @@ EXTRA_TARGETS = $(EXTRA_SOURCES:.c=$(EXEEXT))
 SOURCES = $(TS_SOURCES) $(EXTRA_SOURCES) testutils.c dlopen-test.c
 
 DISTFILES = $(SOURCES) $(CXX_SOURCES) Makefile.in .test-rules.make \
+           test-rules.stamp \
            $(TS_SH) setup-env teardown-env \
            gold-bug.txt testutils.h sha3.awk
 
@@ -96,9 +97,7 @@ dlopen-test$(EXEEXT): dlopen-test.$(OBJEXT) testutils.$(OBJEXT)
        $(LINK) dlopen-test.$(OBJEXT) -ldl -o dlopen-test$(EXEEXT)
 
 .PHONY: test-rules
-test-rules: $(srcdir)/.test-rules.make
-
-$(srcdir)/.test-rules.make: Makefile
+test-rules:
        (for f in $(TS_NETTLE) $(TS_HOGWEED) $(EXTRA_TARGETS) ; do \
          echo $$f'$$(EXEEXT): '$$f'.$$(OBJEXT)' ; \
          echo '        $$(LINK) '$$f'.$$(OBJEXT) $$(TEST_OBJS) -o '$$f'$$(EXEEXT)' ; \
@@ -109,10 +108,14 @@ $(srcdir)/.test-rules.make: Makefile
          echo '        $$(LINK_CXX) '$$f'.$$(OBJEXT) $$(TEST_OBJS) -o '$$f'$$(EXEEXT)' ; \
          echo ; \
        done) > $(srcdir)/.test-rules.make
-       @echo "******************************************************************"
-       @echo "testsuite Makefile rules have been regenerated; please re-run make"
-       @echo "******************************************************************"
-       false
+
+$(srcdir)/.test-rules.make: $(srcdir)/test-rules.stamp
+
+# Updates the stamp file *first*, so that this rule isn't triggered
+# again and again by the recursive $(MAKE).
+$(srcdir)/test-rules.stamp: Makefile.in
+       echo stamp > $(srcdir)/test-rules.stamp
+       $(MAKE) test-rules
 
 include $(srcdir)/.test-rules.make
 
diff --git a/testsuite/test-rules.stamp b/testsuite/test-rules.stamp
new file mode 100644 (file)
index 0000000..859afb1
--- /dev/null
@@ -0,0 +1 @@
+stamp