Sorry - I don't quiet understand what you are suggesting here. On Thu, 5 Jul 2018, Jed Brown wrote:
> "Smith, Barry F." <bsm...@mcs.anl.gov> writes: > > >> On Jul 5, 2018, at 5:36 PM, Jed Brown <j...@jedbrown.org> wrote: > >> > >> When can we delete the legacy test system? Are we currently using it > >> anywhere? > > > > Make test currently requires the test include file > > Surely this indirection and logging isn't needed in all the > */examples/tutorials/makefile. Are you suggesting the following change? diff --git a/lib/petsc/conf/test b/lib/petsc/conf/test index 3942d879ad..8cd6fcd238 100644 --- a/lib/petsc/conf/test +++ b/lib/petsc/conf/test @@ -11,7 +11,3 @@ ex%f: ex%f.o | chkopts -${FLINKER} -o $@ $^ ${PETSC_LIB} ex%: ex%.o | chkopts -${CLINKER} -o $@ $^ ${PETSC_LIB} - - -include ${PETSC_DIR}/lib/petsc/conf/test.common - > > TESTMODE = testexamples > ALLTESTS_CHECK_FAILURES = no > ALLTESTS_MAKEFILE = gmakefile.test > alltests: > -@${RM} -rf ${PETSC_ARCH}/lib/petsc/conf/alltests.log alltests.log > +@if [ -f ${PETSC_DIR}/share/petsc/examples/gmakefile.test ] ; then \ > > ALLTESTS_MAKEFILE=${PETSC_DIR}/share/petsc/examples/gmakefile.test ; \ > ALLTESTSLOG=alltests.log ;\ > else \ > ALLTESTS_MAKEFILE=gmakefile.test; \ > ALLTESTSLOG=${PETSC_ARCH}/lib/petsc/conf/alltests.log ;\ > ln -s $${ALLTESTSLOG} alltests.log ;\ > fi; \ > ${OMAKE} allgtest ALLTESTS_MAKEFILE=$${ALLTESTS_MAKEFILE} > PETSC_ARCH=${PETSC_ARCH} PETSC_DIR=${PETSC_DIR} MPIEXEC="${MPIEXEC}" > DATAFILESPATH=${DATAFILESPATH} 2>&1 | tee $${ALLTESTSLOG};\ > if [ x${ALLTESTS_CHECK_FAILURES} = xyes -a ${PETSC_PRECISION} != > single ]; then \ > cat $${ALLTESTSLOG} | egrep '(^not ok|not remade because of > errors|^# No tests run)' | wc -l | grep '^[ ]*0$$' > /dev/null; \ > fi; > > allgtest-tap: > +@MAKEFLAGS="-j$(MAKE_TEST_NP) -l$(MAKE_LOAD) $(MAKEFLAGS)" ${OMAKE} > -f gmakefile.test test V=0 > > allgtest: > +@MAKEFLAGS="-j$(MAKE_TEST_NP) -l$(MAKE_LOAD) $(MAKEFLAGS)" ${OMAKE} > -k -f ${ALLTESTS_MAKEFILE} test V=0 2>&1 | egrep -v '^(ok [^#]*(# SKIP|# > TODO|$$)|[A-Za-z][A-Za-z0-9_]*\.(c|F|cxx|F90).$$)' > > > > We could use static pattern rules of the form > > $(EXAMPLESC) : % : %.c Sorry - I don't understand this nottation. What does this do? And what is it a replacement for? > and add them to lib/petsc/conf/rules. It isn't really for testing at > this point, just for one-off building. We have some rules [for examples] in lib/petsc/conf/test. Are you objecting to having this separate file for this? [since you are recommending having them in lib/petsc/conf/rules] One of the reason I kept it separate is - it has gnumake syntax so didn't want it included from the toplevel makefile - [which is free of gnumake syntax] satish