1# -*- mode: makefile -*- 2# 3# testexamples_X - Runs various PETSc test suites 4 5# 6 - C examples that don't work with complex numbers, require PETSc matrices 6# 8 - Fortran .F examples that don't work with complex numbers 7# 13 - Examples that should only be compiled. 8# 17 - requires PYTHON or wget and Unix (uses urlget) and popen() 9 10testexamples_C: ${TESTEXAMPLES_C} 11testexamples_Cxx: ${TESTEXAMPLES_CXX} 12testexamples_C_X: ${TESTEXAMPLES_C_X} 13testexamples_Fortran: ${TESTEXAMPLES_FORTRAN} 14testexamples_C_X_MPIUni: ${TESTEXAMPLES_C_X_MPIUNI} 15testexamples_C_Complex: ${TESTEXAMPLES_C_COMPLEX} 16testexamples_C_NoComplex: ${TESTEXAMPLES_C_NOCOMPLEX} 17testexamples_DATAFILESPATH: ${TESTEXAMPLES_DATAFILESPATH} 18testexamples_Cxx_DATAFILESPATH: ${TESTEXAMPLES_CXX_DATAFILESPATH} 19testexamples_DOUBLEINT32: ${TESTEXAMPLES_DOUBLEINT32} 20 21testexamples_F90_DataTypes: ${TESTEXAMPLES_F90_DATATYPES} 22testexamples_Fortran_NoComplex: ${TESTEXAMPLES_FORTRAN_NOCOMPLEX} 23testexamples_Fortran_MPIUni: ${TESTEXAMPLES_FORTRAN_MPIUNI} 24testexamples_Fortran_Complex: ${TESTEXAMPLES_FORTRAN_COMPLEX} 25testexamples_C_Complex_MPIUni: ${TESTEXAMPLES_C_CCOMPLEX_MPIUNI} 26testexamples_F90: ${TESTEXAMPLES_F90} 27testexamples_F90_Complex: ${TESTEXAMPLES_F90_COMPLEX} 28testexamples_F90_NoComplex: ${TESTEXAMPLES_F90_NOCOMPLEX} 29testexamples_F2003: ${TESTEXAMPLES_F2003} 30testexamples_13: ${TESTEXAMPLES_13} 31testexamples_17: ${TESTEXAMPLES_17} 32testexamples_18: ${TESTEXAMPLES_18} 33testexamples_PARMETIS: ${TESTEXAMPLES_PARMETIS} 34testexamples_METIS: ${TESTEXAMPLES_METIS} 35testexamples_SPAI: ${TESTEXAMPLES_SPAI} 36testexamples_ADIFOR: ${TESTEXAMPLES_ADIFOR} 37testexamples_FFTW: ${TESTEXAMPLES_FFTW} 38testexamples_FFTW_COMPLEX: ${TESTEXAMPLES_FFTW_COMPLEX} 39testexamples_SAWS: ${TESTEXAMPLES_SAWS} 40testexamples_VALGRIND: ${TESTEXAMPLES_VALGRIND} 41testexamples_MATLAB: ${TESTEXAMPLES_MATLAB} 42testexamples_MATLAB_ENGINE: ${TESTEXAMPLES_MATLAB_ENGINE} 43testexamples_MUMPS: ${TESTEXAMPLES_MUMPS} 44testexamples_SUPERLU: ${TESTEXAMPLES_SUPERLU} 45testexamples_ELEMENTAL: ${TESTEXAMPLES_ELEMENTAL} 46testexamples_SUNDIALS: ${TESTEXAMPLES_SUNDIALS} 47testexamples_SUITESPARSE: ${TESTEXAMPLES_SUITESPARSE} 48testexamples_MKL_PARDISO: ${TESTEXAMPLES_MKL_PARDISO} 49testexamples_SUPERLU_DIST: ${TESTEXAMPLES_SUPERLU_DIST} 50testexamples_HYPRE: ${TESTEXAMPLES_HYPRE} 51testexamples_HDF5: ${TESTEXAMPLES_HDF5} 52testexamples_CHACO: ${TESTEXAMPLES_CHACO} 53testexamples_CHOMBO: ${TESTEXAMPLES_CHOMBO} 54testexamples_TRIANGLE: ${TESTEXAMPLES_TRIANGLE} 55testexamples_CTETGEN: ${TESTEXAMPLES_CTETGEN} 56testexamples_SSL: ${TESTEXAMPLES_SSL} 57testexamples_PARMS: ${TESTEXAMPLES_PARMS} 58testexamples_TCHEM: ${TESTEXAMPLES_TCHEM} 59 60testexamples_BOOST: ${TESTEXAMPLES_BOOST} 61testexamples_TETGEN: ${TESTEXAMPLES_TETGEN} 62testexamples_PTSCOTCH: ${TESTEXAMPLES_PTSCOTCH} 63testexamples_PASTIX: ${TESTEXAMPLES_PASTIX} 64testexamples_ML: ${TESTEXAMPLES_ML} 65testexamples_CUSP: ${TESTEXAMPLES_CUSP} 66testexamples_CUDA: ${TESTEXAMPLES_CUDA} 67testexamples_YAML: ${TESTEXAMPLES_YAML} 68testexamples_THREADCOMM: ${TESTEXAMPLES_THREADCOMM} 69testexamples_MOAB: ${TESTEXAMPLES_MOAB} 70testexamples_MOAB_HDF5: ${TESTEXAMPLES_MOAB_HDF5} 71testexamples_TRILINOS: ${TESTEXAMPLES_TRILINOS} 72testexamples_X: 73testexamples_OPENGL: 74testexamples_MPE: 75testexamples_ESSL: 76testexamples_MPI: 77testexamples_BLASLAPACK: 78testexamples_SOWING: 79testexamples_C2HTML: 80testexamples_BLACS: 81testexamples_SCALAPACK: 82testexamples_CMAKE: 83testexamples_AFTERIMAGE: 84testexamples_OPENMP: 85testexamples_NETCDF: 86testexamples_EXODUSII: 87 88buildexamples_C: 89 -@${OMAKE} testexamples_C TESTEXAMPLES_C=`echo ${TESTEXAMPLES_C} | sed s/runex[0-9]*[a-z0-9_]*//g` 90buildexamples_Cxx: 91 -@${OMAKE} testexamples_Cxx TESTEXAMPLES_CXX=`echo ${TESTEXAMPLES_CXX} | sed s/runex[0-9]*[a-z0-9_]*//g` 92buildexamples_C_X: 93 -@${OMAKE} testexamples_C_X TESTEXAMPLES_C_X=`echo ${TESTEXAMPLES_C_X} | sed s/runex[0-9]*[a-z0-9_]*//g` 94buildexamples_Fortran: 95 -@${OMAKE} testexamples_Fortran TESTEXAMPLES_FORTRAN=`echo ${TESTEXAMPLES_FORTRAN} | sed s/runex[0-9]*[a-z0-9_]*//g` 96buildexamples_C_X_MPIUni: 97 -@${OMAKE} testexamples_C_X_MPIUni TESTEXAMPLES_C_X_MPIUNI=`echo ${TESTEXAMPLES_C_X_MPIUNI} | sed s/runex[0-9]*[a-z0-9_]*//g` 98buildexamples_C_Complex: 99 -@${OMAKE} testexamples_C_Complex TESTEXAMPLES_C_COMPLEX=`echo ${TESTEXAMPLES_C_COMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 100buildexamples_C_NoComplex: 101 -@${OMAKE} testexamples_C_NoComplex TESTEXAMPLES_C_NOCOMPLEX=`echo ${TESTEXAMPLES_C_NOCOMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 102buildexamples_DATAFILESPATH: 103 -@${OMAKE} testexamples_DATAFILESPATH TESTEXAMPLES_DATAFILESPATH=`echo ${TESTEXAMPLES_DATAFILESPATH} | sed s/runex[0-9]*[a-z0-9_]*//g` 104buildexamples_Cxx_DATAFILESPATH: 105 -@${OMAKE} testexamples_Cxx_DATAFILESPATH TESTEXAMPLES_CXX_DATAFILESPATH=`echo ${TESTEXAMPLES_CXX_DATAFILESPATH} | sed s/runex[0-9]*[a-z0-9_]*//g` 106 107buildexamples_F90_DataTypes: 108 -@${OMAKE} testexamples_F90_DataTypes TESTEXAMPLES_F90_DATATYPES=`echo ${TESTEXAMPLES_F90_DATATYPES} | sed s/runex[0-9]*[a-z0-9_]*//g` 109buildexamples_Fortran_NoComplex: 110 -@${OMAKE} testexamples_Fortran_NoComplex TESTEXAMPLES_FORTRAN_NOCOMPLEX=`echo ${TESTEXAMPLES_FORTRAN_NOCOMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 111buildexamples_Fortran_MPIUni: 112 -@${OMAKE} testexamples_Fortran_MPIUni TESTEXAMPLES_FORTRAN_MPIUNI=`echo ${TESTEXAMPLES_FORTRAN_MPIUNI} | sed s/runex[0-9]*[a-z0-9_]*//g` 113buildexamples_Fortran_Complex: 114 -@${OMAKE} testexamples_Fortran_Complex TESTEXAMPLES_FORTRAN_COMPLEX=`echo ${TESTEXAMPLES_FORTRAN_COMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 115buildexamples_C_Complex_MPIUni: 116 -@${OMAKE} testexamples_C_Complex_MPIUni TESTEXAMPLES_C_COMPLEX_MPIUNI=`echo ${TESTEXAMPLES_C_COMPLEX_MPIUNI} | sed s/runex[0-9]*[a-z0-9_]*//g` 117buildexamples_F90: 118 -@${OMAKE} testexamples_F90 TESTEXAMPLES_F90=`echo ${TESTEXAMPLES_F90} | sed s/runex[0-9]*[a-z0-9_]*//g` 119buildexamples_F90_Complex: 120 -@${OMAKE} testexamples_F90_Complex TESTEXAMPLES_F90_COMPLEX=`echo ${TESTEXAMPLES_F90_COMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 121buildexamples_F90_NoComplex: 122 -@${OMAKE} testexamples_F90_NoComplex TESTEXAMPLES_F90_NOCOMPLEX=`echo ${TESTEXAMPLES_F90_NOCOMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 123buildexamples_F2003: 124 -@${OMAKE} testexamples_F2003 TESTEXAMPLES_2003=`echo ${TESTEXAMPLES_F2003} | sed s/runex[0-9]*[a-z0-9_]*//g` 125buildexamples_13: 126 -@${OMAKE} testexamples_13 TESTEXAMPLES_13=`echo ${TESTEXAMPLES_13} | sed s/runex[0-9]*[a-z0-9_]*//g` 127buildexamples_17: 128 -@${OMAKE} testexamples_17 TESTEXAMPLES_17=`echo ${TESTEXAMPLES_17} | sed s/runex[0-9]*[a-z0-9_]*//g` 129buildexamples_18: 130 -@${OMAKE} testexamples_18 TESTEXAMPLES_18=`echo ${TESTEXAMPLES_18} | sed s/runex[0-9]*[a-z0-9_]*//g` 131buildexamples_PARMETIS: 132 -@${OMAKE} testexamples_PARMETIS TESTEXAMPLES_PARMETIS=`echo ${TESTEXAMPLES_PARMETIS} | sed s/runex[0-9]*[a-z0-9_]*//g` 133buildexamples_METIS: 134 -@${OMAKE} testexamples_METIS TESTEXAMPLES_METIS=`echo ${TESTEXAMPLES_METIS} | sed s/runex[0-9]*[a-z0-9_]*//g` 135buildexamples_SPAI: 136 -@${OMAKE} testexamples_SPAI TESTEXAMPLES_SPAI=`echo ${TESTEXAMPLES_SPAI} | sed s/runex[0-9]*[a-z0-9_]*//g` 137buildexamples_ADIFOR: 138 -@${OMAKE} testexamples_ADIFOR TESTEXAMPLES_ADIFOR=`echo ${TESTEXAMPLES_ADIFOR} | sed s/runex[0-9]*[a-z0-9_]*//g` 139buildexamples_FFTW: 140 -@${OMAKE} testexamples_FFTW TESTEXAMPLES_FFTW=`echo ${TESTEXAMPLES_FFTW} | sed s/runex[0-9]*[a-z0-9_]*//g` 141buildexamples_FFTW_COMPLEX: 142 -@${OMAKE} testexamples_FFTW_COMPLEX TESTEXAMPLES_FFTW_COMPLEX=`echo ${TESTEXAMPLES_FFTW_COMPLEX} | sed s/runex[0-9]*[a-z0-9_]*//g` 143buildexamples_SAWS: 144 -@${OMAKE} testexamples_SAWS TESTEXAMPLES_SAWS=`echo ${TESTEXAMPLES_SAWS} | sed s/runex[0-9]*[a-z0-9_]*//g` 145buildexamples_VALGRIND: 146 -@${OMAKE} testexamples_VALGRIND TESTEXAMPLES_VALGRIND=`echo ${TESTEXAMPLES_VALGRIND} | sed s/runex[0-9]*[a-z0-9_]*//g` 147buildexamples_MATLAB: 148 -@${OMAKE} testexamples_MATLAB TESTEXAMPLES_MATLAB=`echo ${TESTEXAMPLES_MATLAB} | sed s/runex[0-9]*[a-z0-9_]*//g` 149buildexamples_MATLAB_ENGINE: 150 -@${OMAKE} testexamples_MATLAB_ENGINE TESTEXAMPLES_MATLAB_ENGINE=`echo ${TESTEXAMPLES_MATLAB_ENGINE} | sed s/runex[0-9]*[a-z0-9_]*//g` 151buildexamples_MUMPS: 152 -@${OMAKE} testexamples_MUMPS TESTEXAMPLES_MUMPS=`echo ${TESTEXAMPLES_MUMPS} | sed s/runex[0-9]*[a-z0-9_]*//g` 153buildexamples_SUPERLU: 154 -@${OMAKE} testexamples_SUPERLU TESTEXAMPLES_SUPERLU=`echo ${TESTEXAMPLES_SUPERLU} | sed s/runex[0-9]*[a-z0-9_]*//g` 155buildexamples_SUNDIALS: 156 -@${OMAKE} testexamples_SUNDIALS TESTEXAMPLES_SUNDIALS=`echo ${TESTEXAMPLES_SUNDIALS} | sed s/runex[0-9]*[a-z0-9_]*//g` 157buildexamples_SUITESPARSE: 158 -@${OMAKE} testexamples_SUITESPARSE TESTEXAMPLES_SUITESPARSE=`echo ${TESTEXAMPLES_SUITESPARSE} | sed s/runex[0-9]*[a-z0-9_]*//g` 159buildexamples_MKL_PARDISO: 160 -@${OMAKE} testexamples_MKL_PARDISO TESTEXAMPLES_MKL_PARDISO=`echo ${TESTEXAMPLES_MKL_PARDISO} | sed s/runex[0-9]*[a-z0-9_]*//g` 161buildexamples_SUPERLU_DIST: 162 -@${OMAKE} testexamples_SUPERLU_DIST TESTEXAMPLES_SUPERLU_DIST=`echo ${TESTEXAMPLES_SUPERLU_DIST} | sed s/runex[0-9]*[a-z0-9_]*//g` 163buildexamples_HYPRE: 164 -@${OMAKE} testexamples_HYPRE TESTEXAMPLES_HYPRE=`echo ${TESTEXAMPLES_HYPRE} | sed s/runex[0-9]*[a-z0-9_]*//g` 165buildexamples_HDF5: 166 -@${OMAKE} testexamples_HDF5 TESTEXAMPLES_HDF5=`echo ${TESTEXAMPLES_HDF5} | sed s/runex[0-9]*[a-z0-9_]*//g` 167buildexamples_CHACO: 168 -@${OMAKE} testexamples_CHACO TESTEXAMPLES_CHACO=`echo ${TESTEXAMPLES_CHACO} | sed s/runex[0-9]*[a-z0-9_]*//g` 169buildexamples_CHOMBO: 170 -@${OMAKE} testexamples_CHOMBO TESTEXAMPLES_CHOMBO=`echo ${TESTEXAMPLES_CHOMBO} | sed s/runex[0-9]*[a-z0-9_]*//g` 171buildexamples_TRIANGLE: 172 -@${OMAKE} testexamples_TRIANGLE TESTEXAMPLES_TRIANGLE=`echo ${TESTEXAMPLES_TRIANGLE} | sed s/runex[0-9]*[a-z0-9_]*//g` 173 174buildexamples_BOOST: 175 -@${OMAKE} testexamples_BOOST TESTEXAMPLES_BOOST=`echo ${TESTEXAMPLES_BOOST} | sed s/runex[0-9]*[a-z0-9_]*//g` 176buildexamples_TETGEN: 177 -@${OMAKE} testexamples_TETGEN TESTEXAMPLES_TETGEN=`echo ${TESTEXAMPLES_TETGEN} | sed s/runex[0-9]*[a-z0-9_]*//g` 178buildexamples_PTSCOTCH: 179 -@${OMAKE} testexamples_PTSCOTCH TESTEXAMPLES_PTSCOTCH=`echo ${TESTEXAMPLES_PTSCOTCH} | sed s/runex[0-9]*[a-z0-9_]*//g` 180buildexamples_PASTIX: 181 -@${OMAKE} testexamples_PASTIX TESTEXAMPLES_PASTIX=`echo ${TESTEXAMPLES_PASTIX} | sed s/runex[0-9]*[a-z0-9_]*//g` 182buildexamples_ML: 183 -@${OMAKE} testexamples_ML TESTEXAMPLES_ML=`echo ${TESTEXAMPLES_ML} | sed s/runex[0-9]*[a-z0-9_]*//g` 184buildexamples_CUSP: 185 -@${OMAKE} testexamples_CUSP TESTEXAMPLES_CUSP=`echo ${TESTEXAMPLES_CUSP} | sed s/runex[0-9]*[a-z0-9_]*//g` 186buildexamples_CUDA: 187 -@${OMAKE} testexamples_CUDA TESTEXAMPLES_CUDA=`echo ${TESTEXAMPLES_CUDA} | sed s/runex[0-9]*[a-z0-9_]*//g` 188buildexamples_YAML: 189 -@${OMAKE} testexamples_YAML TESTEXAMPLES_YAML=`echo ${TESTEXAMPLES_YAML} | sed s/runex[0-9]*[a-z0-9_]*//g` 190buildexamples_THREADCOMM: 191 -@${OMAKE} testexamples_THREADCOMM TESTEXAMPLES_THREADCOMM=`echo ${TESTEXAMPLES_THREADCOMM} | sed s/runex[0-9]*[a-z0-9_]*//g` 192buildexamples_MOAB: 193 -@${OMAKE} testexamples_MOAB TESTEXAMPLES_MOAB=`echo ${TESTEXAMPLES_MOAB} | sed s/runex[0-9]*[a-z0-9_]*//g` 194buildexamples_X: 195buildexamples_OPENGL: 196buildexamples_MPE: 197buildexamples_ESSL: 198buildexamples_MPI: 199buildexamples_BLASLAPACK: 200buildexamples_SOWING: 201buildexamples_C2HTML: 202buildexamples_BLACS: 203buildexamples_SCALAPACK: 204buildexamples_CMAKE: 205buildexamples_AFTERIMAGE: 206buildexamples_OPENMP: 207 208TESTMODE = testexamples 209 210alltests: 211 -@${RM} ${PETSC_ARCH}/lib/petsc/conf/alltests.log alltests.log 212 -@ln -s ${PETSC_ARCH}/lib/petsc/conf/alltests.log alltests.log 213 -@if [ "${PETSC_WITH_BATCH}" == "" ]; then make PETSC_ARCH=${PETSC_ARCH} PETSC_DIR=${PETSC_DIR} stream NPMAX=4 | tee ${PETSC_ARCH}/lib/petsc/conf/alltests.log ;fi 214 -@${OMAKE} alltest PETSC_ARCH=${PETSC_ARCH} PETSC_DIR=${PETSC_DIR} MPIEXEC="${MPIEXEC}" DATAFILESPATH=${DATAFILESPATH} 2>&1 | tee ${PETSC_ARCH}/lib/petsc/conf/alltests.log 215 216alltest: 217 -@for i in ${TEST_RUNS} ; do \ 218 echo "******* Testing: ${TESTMODE}_$$i *******"; \ 219 ${OMAKE} PETSC_ARCH=${PETSC_ARCH} PETSC_DIR=${PETSC_DIR} ACTION=${TESTMODE}_$$i MPIEXEC="${MPIEXEC}" NO_PRINT_DIR=yes tree ; \ 220 done 221 222tests_DATAFILESPATH: 223 make ACTION=testexamples_DATAFILESPATH tree DATAFILESPATH=${DATAFILESPATH} 224 225 226