[petsc-dev] Remove legacy tests?

Satish Balay balay at mcs.anl.gov
Sun Jul 8 11:43:58 CDT 2018


Or is the issue with the name "lib/petsc/conf/test"?

I guess it could be renamed lib/petsc/conf/rules_examples [or something else]

Satish


On Sat, 7 Jul 2018, Satish Balay wrote:

> 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