From cc7d00776568949e72c8ce5fd894a8bc05998fcb Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Thu, 14 Nov 2019 01:17:01 +0000 Subject: [PATCH] build system: convert stest and mtest to Subdir.mk Signed-off-by: Ian Jackson --- Subdir.sd.mk | 13 ++---------- configure | 19 +++++++++-------- configure.ac | 6 +++--- mtest/Makefile.in | 14 ------------- mtest/Subdir.sd.mk | 8 ++++++++ stest/{Makefile.in => Subdir.sd.mk} | 28 ++++++++++++------------- test-common.make.in | 32 ----------------------------- test-common.sd.mk | 29 ++++++++++++++++++++++++++ 8 files changed, 65 insertions(+), 84 deletions(-) delete mode 100644 mtest/Makefile.in create mode 100644 mtest/Subdir.sd.mk rename stest/{Makefile.in => Subdir.sd.mk} (63%) delete mode 100644 test-common.make.in create mode 100644 test-common.sd.mk diff --git a/Subdir.sd.mk b/Subdir.sd.mk index dfa03b6..f9245c2 100644 --- a/Subdir.sd.mk +++ b/Subdir.sd.mk @@ -123,7 +123,7 @@ TESTDIRS=stest mtest FAST_CHECKS= eax-aes-test.confirm eax-serpent-test.confirm \ eax-serpentbe-test.confirm check-ipaddrset \ - $(addprefix check-,$(TESTDIRS)) + $(addsuffix /check,$(TESTDIRS)) CHECKS += $(FAST_CHECKS) CHECKS += msgcode-test.confirm @@ -164,12 +164,6 @@ check-ipaddrset: ipaddrset-test.py ipaddrset.py ipaddrset-test.expected $(srcdir)/ipaddrset-test.py >ipaddrset-test.new diff -u $(srcdir)/ipaddrset-test.expected ipaddrset-test.new -check-stest: secnet test-example/sites.conf - $(MAKE) -C stest check - -check-mtest: make-secnet-sites $(PYMODULES) - $(MAKE) -C mtest check - .PRECIOUS: eax-%-test installdirs: @@ -199,15 +193,12 @@ install-force: rm -f $(STALE_PYTHON_FILES) $(MAKE) install -clean:: $(addprefix clean-,$(TESTDIRS)) +clean:: $(RM) -f *.o *.yy.[ch] *.tab.[ch] $(TARGETS) core version.c $(RM) -f *.d *.pyc *~ eax-*-test.confirm eax-*-test $(RM) -rf __pycache__ $(RM) -f msgcode-test.confirm msgcode-test -$(addprefix clean-,$(TESTDIRS)): clean-%: - $(MAKE) -C $* clean - realclean:: clean $(RM) -f *~ Makefile config.h *.d \ config.log config.status config.cache \ diff --git a/configure b/configure index 328236d..51252f1 100755 --- a/configure +++ b/configure @@ -2363,6 +2363,14 @@ ac_config_headers="$ac_config_headers config.h" ac_config_files="$ac_config_files test-example/Subdir.mk:test-example/Subdir.mk.tmp" + subdirmk_subdirs="$subdirmk_subdirs 'mtest/'" + ac_config_files="$ac_config_files mtest/Subdir.mk:mtest/Subdir.mk.tmp" + + + subdirmk_subdirs="$subdirmk_subdirs 'stest/'" + ac_config_files="$ac_config_files stest/Subdir.mk:stest/Subdir.mk.tmp" + + @@ -4722,12 +4730,6 @@ fi ac_config_files="$ac_config_files common.make:common.make.in" - _SUBDIRMK_MAKEFILES="$_SUBDIRMK_MAKEFILES test-common.make" - ac_config_files="$ac_config_files test-common.make:test-common.make.in" - - - -ac_config_files="$ac_config_files stest/Makefile mtest/Makefile" ac_config_commands="$ac_config_commands default" @@ -5439,10 +5441,9 @@ do "subdirmk/regen.mk") CONFIG_FILES="$CONFIG_FILES subdirmk/regen.mk:subdirmk/regen.mk.in" ;; "subdirmk/usual.mk") CONFIG_FILES="$CONFIG_FILES subdirmk/usual.mk:subdirmk/usual.mk.in" ;; "test-example/Subdir.mk") CONFIG_FILES="$CONFIG_FILES test-example/Subdir.mk:test-example/Subdir.mk.tmp" ;; + "mtest/Subdir.mk") CONFIG_FILES="$CONFIG_FILES mtest/Subdir.mk:mtest/Subdir.mk.tmp" ;; + "stest/Subdir.mk") CONFIG_FILES="$CONFIG_FILES stest/Subdir.mk:stest/Subdir.mk.tmp" ;; "common.make") CONFIG_FILES="$CONFIG_FILES common.make:common.make.in" ;; - "test-common.make") CONFIG_FILES="$CONFIG_FILES test-common.make:test-common.make.in" ;; - "stest/Makefile") CONFIG_FILES="$CONFIG_FILES stest/Makefile" ;; - "mtest/Makefile") CONFIG_FILES="$CONFIG_FILES mtest/Makefile" ;; "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; diff --git a/configure.ac b/configure.ac index 0cdf9cf..8f8fab3 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ AC_INIT(secnet,0.1.18+,secnet@chiark.greenend.org.uk) AC_CONFIG_SRCDIR(secnet.c) AC_CONFIG_HEADER(config.h) -SUBDIRMK_SUBDIRS([test-example]) +SUBDIRMK_SUBDIRS([test-example mtest stest]) AC_PREREQ(2.50) AC_REVISION($Id: configure.in,v 1.4 2002/09/09 22:05:02 steve Exp $) @@ -99,9 +99,9 @@ else AC_MSG_WARN([Disabling IPv6 support]) fi -SUBDIRMK_MAKEFILES(common.make test-common.make) +SUBDIRMK_MAKEFILES(common.make) -AC_OUTPUT(stest/Makefile mtest/Makefile, +AC_OUTPUT(, echo timestamp >config.stamp) AH_TOP([ diff --git a/mtest/Makefile.in b/mtest/Makefile.in deleted file mode 100644 index 922e99b..0000000 --- a/mtest/Makefile.in +++ /dev/null @@ -1,14 +0,0 @@ - -VPATH:=@srcdir@ -srcdir:=@srcdir@ -topdir:=@top_srcdir@ - -DEPS += $(topdir)/make-secnet-sites -DEPS += $(topdir)/ipaddrset.py -DEPS += $(srcdir)/common.tcl - -TESTDIR=mtest - -include ../test-common.make - -check: check-real diff --git a/mtest/Subdir.sd.mk b/mtest/Subdir.sd.mk new file mode 100644 index 0000000..c69bb2f --- /dev/null +++ b/mtest/Subdir.sd.mk @@ -0,0 +1,8 @@ + +&DEPS += $(src)/make-secnet-sites +&DEPS += $(src)/ipaddrset.py +&DEPS += &^/common.tcl + +&:include test-common.sd.mk + +&check: &check-real diff --git a/stest/Makefile.in b/stest/Subdir.sd.mk similarity index 63% rename from stest/Makefile.in rename to stest/Subdir.sd.mk index b16755b..0b46ef7 100644 --- a/stest/Makefile.in +++ b/stest/Subdir.sd.mk @@ -1,22 +1,20 @@ -VPATH:=@srcdir@ -srcdir:=@srcdir@ -topdir:=@top_srcdir@ +&TARGETS += & udp-preload.so -TARGETS += udp-preload.so +&DEPS += & udp-preload.so +&DEPS += &^/common.tcl +&DEPS += secnet +&DEPS += test-example/sites.conf +&DEPS += test-example/inside.key +&DEPS += test-example/outside.key -DEPS += udp-preload.so -DEPS += $(srcdir)/common.tcl -DEPS += ../secnet -DEPS += ../test-example/sites.conf +&:include test-common.sd.mk -TESTDIR=stest +&OBJECTS += & udp-preload.o -include ../test-common.make +$(&OBJECTS) : ALL_CFLAGS += -D_REENTRANT -fPIC -CFLAGS += -D_REENTRANT -fPIC - -udp-preload.so: udp-preload.o +&udp-preload.so: $(&OBJECTS) $(CC) -shared -Wl,-soname,$@.1 $^ -o $@ -ldl # These test scripts use little cpu but contain sleeps etc. So when @@ -33,6 +31,6 @@ udp-preload.so: udp-preload.o MAKE_NOTSPECIAL:=$(MAKE) -check: +&check: $(&DEPS) env -u MAKEFLAGS -u MFLAGS \ - $(MAKE_NOTSPECIAL) -j$(shell nproc || 1)0 check-real + $(MAKE_NOTSPECIAL) -j$(shell nproc || 1)0 &check-real diff --git a/test-common.make.in b/test-common.make.in deleted file mode 100644 index d862480..0000000 --- a/test-common.make.in +++ /dev/null @@ -1,32 +0,0 @@ - -include ../common.make - -TESTSCRIPTS ?= $(shell echo $(srcdir)/t-*[0-9a-z]) -TESTNAMES := $(patsubst t-%,%,$(notdir $(TESTSCRIPTS))) - -DEPS += $(topdir)/test-common.tcl -DEPS += $(topdir)/common.make -DEPS += $(topdir)/test-common.make -DEPS += Makefile - -TARGETS += check - -export PYTHONBYTECODEBASE=/dev/null - -all: $(TARGETS) - -check-real: $(foreach t,$(TESTNAMES),d-$t/ok) - -d-%/ok: $(srcdir)/t-% $(DEPS) - @rm -rf d-$*; mkdir d-$* - @export SECNET_TEST_BUILDDIR=$(topbuilddir); \ - cd $(topdir) && \ - $(TESTDIR)/t-$* >$(topbuilddir)/$(TESTDIR)/d-$*/log 2>&1 \ - || { cat $(topbuilddir)/$(TESTDIR)/d-$*/log >&2; false; } - @printf "$(TESTDIR)/$* " - @touch $@ - -clean: - $(RM) -f *.o *.so - $(RM) -rf tmp - $(RM) -rf d-* diff --git a/test-common.sd.mk b/test-common.sd.mk new file mode 100644 index 0000000..e8bfcd3 --- /dev/null +++ b/test-common.sd.mk @@ -0,0 +1,29 @@ + +include common.make + +&TESTSCRIPTS ?= $(shell echo &^/t-*[0-9a-z]) +&TESTNAMES := $(patsubst t-%,%,$(notdir $(&TESTSCRIPTS))) + +&DEPS += $(src)/test-common.tcl +&DEPS += $(src)/common.make +&DEPS += $(src)/test-common.sd.mk +&DEPS += &/Subdir.mk + +&TARGETS += &check + +&check-real: $(foreach t,$(&TESTNAMES),&d-$t/ok) + +&d-%/ok: &^/t-% $(&DEPS) + @rm -rf &d-$*; mkdir &d-$* + @export SECNET_TEST_BUILDDIR=$(topbuilddir); \ + export PYTHONBYTECODEBASE=/dev/null; \ + cd $(src) && \ + &^/t-$* >&d-$*/log 2>\&1 \ + || { cat &d-$*/log >\&2; false; } + @printf "&/$* " + @touch $@ + +&clean:: + $(RM) -f & *.o *.so + $(RM) -rf & tmp + $(RM) -rf & d-* -- 2.30.2