Some of the material collected could go into another file that is stored in the same location available to users but not included by PETSc source.
Other material like PETSC_HAVE_LIBPNETCDF doesn't seem to be worthing putting in include files. We already have the macros PETSC_HAVE_PNETCDF for example, that are useful in the source so I don't think knowing about the specific libraries in the source is needed. Barry > On Jun 28, 2019, at 4:13 PM, Matthew Knepley <knep...@gmail.com> wrote: > > On Fri, Jun 28, 2019 at 2:04 PM Smith, Barry F. via petsc-dev > <petsc-dev@mcs.anl.gov> wrote: > > You are right, these do not belong in petscconf.h > > The problematic thing here is hiding information from users of PETSc. If you > are a user that > counts on PETSc configure to check something, but then we hide it because we > do not use it, > I would not be happy. > > Matt > > Barry > > > > On Jun 28, 2019, at 12:37 PM, Jed Brown via petsc-dev > > <petsc-dev@mcs.anl.gov> wrote: > > > > We have a lot of lines like this > > > > $ grep -c HAVE_LIB $PETSC_ARCH/include/petscconf.h > > 96 > > > > but only four of these are ever checked in src/. Delete them? > > > > IMO, unused stuff should not go into petscconf.h. We have to scroll up > > past these lines every time configure crashes. These are apparently all > > unused: > > > > $ for name in $(grep '#define \w\+ ' $PETSC_ARCH/include/petscconf.h | cut > > -f 2 -d\ ); do rg -q -c $name include/ src/ || echo $name; done > > STDC_HEADERS > > HAVE_MATH_INFINITY > > ANSI_DECLARATORS > > PETSC_PATH_SEPARATOR > > PETSC_HAVE_BLASLAPACK > > PETSC_HAVE_PTHREAD > > PETSC_HAVE_NETCDF > > PETSC_HAVE_PNETCDF > > PETSC_HAVE_METIS > > PETSC_HAVE_MATHLIB > > PETSC_HAVE_ZLIB > > PETSC_TIME_WITH_SYS_TIME > > PETSC_HAVE_MATH_H > > PETSC_HAVE_ENDIAN_H > > PETSC_HAVE_LIMITS_H > > PETSC_HAVE_SEARCH_H > > PETSC_HAVE_SCHED_H > > PETSC_HAVE_PTHREAD_H > > PETSC_HAVE_CXX_NAMESPACE > > PETSC_HAVE_FORTRAN_TYPE_INITIALIZE > > PETSC_HAVE_LIBDL > > PETSC_HAVE_LIBQUADMATH > > PETSC_HAVE_LIBX11 > > PETSC_HAVE_LIBZ > > PETSC_HAVE_LIBTRIANGLE > > PETSC_HAVE_LIBMETIS > > PETSC_HAVE_LIBPARMETIS > > PETSC_HAVE_LIBHDF5HL_FORTRAN > > PETSC_HAVE_LIBHDF5_FORTRAN > > PETSC_HAVE_LIBHDF5_HL > > PETSC_HAVE_LIBHDF5 > > PETSC_HAVE_LIBPNETCDF > > PETSC_HAVE_LIBNETCDF > > PETSC_HAVE_LIBEXODUS > > PETSC_HAVE_LIBBLAS > > PETSC_HAVE_LIBLAPACK > > PETSC_HAVE_LIBSTDC__ > > PETSC_HAVE_LIBMPI_USEMPIF08 > > PETSC_HAVE_LIBMPI_USEMPI_IGNORE_TKR > > PETSC_HAVE_LIBMPI_MPIFH > > PETSC_HAVE_LIBMPI > > PETSC_HAVE_LIBGFORTRAN > > PETSC_HAVE_LIBGCC_S > > PETSC_HAVE_LIBPTHREAD > > PETSC_HAVE_LIBSUNDIALS_CVODE > > PETSC_HAVE_LIBSUNDIALS_NVECSERIAL > > PETSC_HAVE_LIBSUNDIALS_NVECPARALLEL > > PETSC_HAVE_LIBML > > PETSC_HAVE_LIBSUPERLU_DIST > > PETSC_HAVE_LIBSUPERLU > > PETSC_HAVE_LIBUMFPACK > > PETSC_HAVE_LIBKLU > > PETSC_HAVE_LIBCHOLMOD > > PETSC_HAVE_LIBBTF > > PETSC_HAVE_LIBCCOLAMD > > PETSC_HAVE_LIBCOLAMD > > PETSC_HAVE_LIBCAMD > > PETSC_HAVE_LIBAMD > > PETSC_HAVE_LIBSUITESPARSECONFIG > > PETSC_HAVE_LIBSCALAPACK > > PETSC_HAVE_LIBCMUMPS > > PETSC_HAVE_LIBDMUMPS > > PETSC_HAVE_LIBSMUMPS > > PETSC_HAVE_LIBZMUMPS > > PETSC_HAVE_LIBMUMPS_COMMON > > PETSC_HAVE_LIBPORD > > PETSC_HAVE_LIBHYPRE > > PETSC_USE_SCALAR_REAL > > PETSC_HAVE_REAL___FLOAT128 > > PETSC_RETSIGTYPE > > PETSC_SIZEOF_SHORT > > PETSC_SIZEOF_MPI_COMM > > PETSC_SIZEOF_MPI_FINT > > PETSC_HAVE_VPRINTF > > PETSC_HAVE_VFPRINTF > > PETSC_HAVE_MKSTEMP > > PETSC_HAVE_GETHOSTBYNAME > > PETSC_HAVE_SOCKET > > PETSC_HAVE_TIMES > > PETSC_HAVE_SIGSET > > PETSC_HAVE_GETTIMEOFDAY > > PETSC_HAVE_SIGNAL > > PETSC_HAVE_GET_NPROCS > > PETSC_HAVE_SIGACTION > > PETSC_HAVE__GFORTRAN_IARGC > > PETSC_HAVE_SHARED_LIBRARIES > > PETSC_USE_GDB_DEBUGGER > > PETSC_VERSION_BRANCH_GIT > > PETSC_HAVE_MPI_COMM_F2C > > PETSC_HAVE_MPI_COMM_C2F > > PETSC_HAVE_MPI_FINT > > PETSC_HAVE_MPI_REPLACE > > PETSC_HAVE_MPI_WIN_ALLOCATE_SHARED > > PETSC_HAVE_MPI_WIN_SHARED_QUERY > > PETSC_HAVE_MPI_ALLTOALLW > > PETSC_HAVE_MPI_COMM_SPAWN > > PETSC_HAVE_MPI_TYPE_GET_EXTENT > > PETSC_HAVE_PTHREAD_BARRIER_T > > PETSC_HAVE_SCHED_CPU_SET_T > > PETSC_HAVE_SYS_SYSCTL_H > > PETSC_LEVEL1_DCACHE_SIZE > > PETSC_LEVEL1_DCACHE_ASSOC > > > > -- > What most experimenters take for granted before they begin their experiments > is infinitely more interesting than any results to which their experiments > lead. > -- Norbert Wiener > > https://www.cse.buffalo.edu/~knepley/