[petsc-dev] Remove legacy tests?

Satish Balay balay at mcs.anl.gov
Sat Jul 7 19:46:21 CDT 2018


Sorry - I don't quiet understand what you are suggesting here. 

On Thu, 5 Jul 2018, Jed Brown wrote:

> "Smith, Barry F." <bsmith at mcs.anl.gov> writes:
> 
> >> On Jul 5, 2018, at 5:36 PM, Jed Brown <jed at 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
>         + at 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:
>         + at MAKEFLAGS="-j$(MAKE_TEST_NP) -l$(MAKE_LOAD) $(MAKEFLAGS)" ${OMAKE} -f gmakefile.test test V=0
> 
> allgtest:
>         + at 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


More information about the petsc-dev mailing list