diff --git a/configure/RULES_BUILD b/configure/RULES_BUILD index fd34fc76b..cbc3aa1b3 100644 --- a/configure/RULES_BUILD +++ b/configure/RULES_BUILD @@ -88,6 +88,13 @@ include $(CONFIG)/RULES_TARGET # PRODTARGETS += $(PRODNAME) $(MUNCHNAME) $(CTDT_SRCS) $(CTDT_OBJS) $(NMS) +#--------------------------------------------------------------- +# Generate a test specification if any tests are defined. +# +ifneq (,$(strip $(TESTS))) +TARGETS += testspec +endif + #--------------------------------------------------------------- # Libraries # @@ -315,6 +322,13 @@ $(OBJLIB_MUNCHNAME):%.munch : %_ctdt$(OBJ) %$(OBJ) runtests: $(TESTSCRIPTS_$(BUILD_CLASS)) -$(PERL) -MTest::Harness -e 'runtests @ARGV if @ARGV;' $^ +testspec: $(TESTSCRIPTS_$(BUILD_CLASS)) + @$(RM) $@ + @echo OS-class: $(OS_CLASS) > $@ + @echo Target-arch: $(T_A) >> $@ + $(if $^, @echo Tests: $^ >> $@) + $(if $(TESTSPEC_$(OS_CLASS)), @echo "Harness: $(TESTSPEC_$(OS_CLASS))" >> $@) + # If there's a perl test script (.plt) available, use it %.t: ../%.plt @$(RM) $@ diff --git a/src/db/test/Makefile b/src/db/test/Makefile index da7bcfc4a..ac87e37f0 100644 --- a/src/db/test/Makefile +++ b/src/db/test/Makefile @@ -17,6 +17,8 @@ callbackTest_SRCS += callbackTest.c OBJS_IOC_vxWorks += callbackTest TESTS += callbackTest +# When we add more test programs here, this must become a vxTestHarness +TESTSPEC_vxWorks = callbackTest.o; callbackTest TESTSCRIPTS_HOST += $(TESTS:%=%.t) diff --git a/src/libCom/test/Makefile b/src/libCom/test/Makefile index edf4ab369..bbc888590 100644 --- a/src/libCom/test/Makefile +++ b/src/libCom/test/Makefile @@ -142,11 +142,12 @@ testHarness_SRCS += epicsRunLibComTests.c PROD_vxWorks = vxTestHarness vxTestHarness_SRCS += $(testHarness_SRCS) vxTestHarness_OBJS += $(INSTALL_BIN)/vxComLibrary +TESTSPEC_vxWorks = vxTestHarness.munch; epicsRunLibComTests PROD_RTEMS += rtemsTestHarness rtemsTestHarness_SRCS += rtemsTestHarness.c rtemsTestHarness_SRCS += $(testHarness_SRCS) - +TESTSPEC_RTEMS = rtemsTestHarness.boot; epicsRunLibComTests TESTSCRIPTS_HOST += $(TESTS:%=%.t)