#
IF( (NOT DEAL_II_ALLOW_AUTODETECTION) AND
(NOT DEFINED DEAL_II_WITH_${_feature}) )
+ PURGE_FEATURE(${_feature})
SET_CACHED_OPTION(${_feature} OFF)
ENDIF()
# DEAL_II_WITH_${_feature} is defined and set to OFF, promote it to
# cache nevertheless:
#
+ MESSAGE(STATUS "DEAL_II_WITH_${_feature} is set to off.")
PURGE_FEATURE(${_feature})
SET_CACHED_OPTION(${_feature} OFF)
ENDIF()
--- /dev/null
+## ---------------------------------------------------------------------
+## $Id$
+##
+## Copyright (C) 2014 by the deal.II authors
+##
+## This file is part of the deal.II library.
+##
+## The deal.II library is free software; you can use it, redistribute
+## it, and/or modify it under the terms of the GNU Lesser General
+## Public License as published by the Free Software Foundation; either
+## version 2.1 of the License, or (at your option) any later version.
+## The full text of the license can be found in the file LICENSE at
+## the top level of the deal.II distribution.
+##
+## ---------------------------------------------------------------------
+
+#
+# A small wrapper around FIND_FILE to be a bit more verbose
+#
+
+MACRO(DEAL_II_FIND_FILE _file_name)
+ FIND_FILE(${_file_name} ${ARGN})
+
+ IF(${_file_name} MATCHES "-NOTFOUND")
+ MESSAGE(STATUS "${_file_name} NOTFOUND! Call:")
+ TO_STRING(_str ${ARGN})
+ MESSAGE(STATUS " FIND_FILE(${_file_name} ${_str})")
+ ELSE()
+ MESSAGE(STATUS "Found ${_file_name}")
+ ENDIF()
+ENDMACRO()
--- /dev/null
+## ---------------------------------------------------------------------
+## $Id$
+##
+## Copyright (C) 2014 by the deal.II authors
+##
+## This file is part of the deal.II library.
+##
+## The deal.II library is free software; you can use it, redistribute
+## it, and/or modify it under the terms of the GNU Lesser General
+## Public License as published by the Free Software Foundation; either
+## version 2.1 of the License, or (at your option) any later version.
+## The full text of the license can be found in the file LICENSE at
+## the top level of the deal.II distribution.
+##
+## ---------------------------------------------------------------------
+
+#
+# A small wrapper around FIND_LIBRARY to be a bit more verbose
+#
+
+MACRO(DEAL_II_FIND_LIBRARY _library_name)
+ FIND_LIBRARY(${_library_name} ${ARGN})
+
+ IF(${_library_name} MATCHES "-NOTFOUND")
+ MESSAGE(STATUS "${_library_name} NOTFOUND! Call:")
+ TO_STRING(_str ${ARGN})
+ MESSAGE(STATUS " FIND_LIBRARY(${_library_name} ${_str})")
+ ELSE()
+ MESSAGE(STATUS "Found ${_library_name}")
+ ENDIF()
+ENDMACRO()
--- /dev/null
+## ---------------------------------------------------------------------
+## $Id$
+##
+## Copyright (C) 2014 by the deal.II authors
+##
+## This file is part of the deal.II library.
+##
+## The deal.II library is free software; you can use it, redistribute
+## it, and/or modify it under the terms of the GNU Lesser General
+## Public License as published by the Free Software Foundation; either
+## version 2.1 of the License, or (at your option) any later version.
+## The full text of the license can be found in the file LICENSE at
+## the top level of the deal.II distribution.
+##
+## ---------------------------------------------------------------------
+
+#
+# A small wrapper around FIND_FILE to be a bit more verbose
+#
+
+MACRO(DEAL_II_FIND_PATH _path_name)
+ FIND_PATH(${_path_name} ${ARGN})
+
+ IF(${_path_name} MATCHES "-NOTFOUND")
+ MESSAGE(STATUS "${_path_name} NOTFOUND! Call:")
+ TO_STRING(_str ${ARGN})
+ MESSAGE(STATUS " FIND_PATH(${_path_name} ${_str})")
+ ELSE()
+ MESSAGE(STATUS "Found ${_path_name}")
+ ENDIF()
+ENDMACRO()
SET(ARPACK_DIR "" CACHE PATH "An optional hint to an ARPACK installation")
SET_IF_EMPTY(ARPACK_DIR "$ENV{ARPACK_DIR}")
-FIND_LIBRARY(ARPACK_LIBRARY
+DEAL_II_FIND_LIBRARY(ARPACK_LIBRARY
NAMES arpack
HINTS ${ARPACK_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
SET(HDF5_DIR "" CACHE PATH "An optional hint to an hdf5 directory")
SET_IF_EMPTY(HDF5_DIR "$ENV{HDF5_DIR}")
-FIND_PATH(HDF5_INCLUDE_DIR hdf5.h
+DEAL_II_FIND_PATH(HDF5_INCLUDE_DIR hdf5.h
HINTS ${HDF5_DIR}
PATH_SUFFIXES hdf5 hdf5/include include/hdf5 include
)
-FIND_LIBRARY(HDF5_LIBRARY NAMES hdf5
+DEAL_II_FIND_LIBRARY(HDF5_LIBRARY NAMES hdf5
HINTS ${HDF5_DIR}
PATH_SUFFIXES hdf5/lib lib${LIB_SUFFIX} lib64 lib
)
-FIND_LIBRARY(HDF5_HL_LIBRARY NAMES hdf5_hl
+DEAL_II_FIND_LIBRARY(HDF5_HL_LIBRARY NAMES hdf5_hl
HINTS ${HDF5_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
-FIND_FILE(HDF5_PUBCONF NAMES H5pubconf.h H5pubconf-64.h
+DEAL_II_FIND_FILE(HDF5_PUBCONF NAMES H5pubconf.h H5pubconf-64.h
HINTS ${HDF5_INCLUDE_DIR} ${HDF5_DIR}
PATH_SUFFIXES hdf5 hdf5/include include/hdf5 include
)
# Link in MPI unconditionally (if found).
#
-FIND_LIBRARY(METIS_LIBRARY
+DEAL_II_FIND_LIBRARY(METIS_LIBRARY
NAMES metis
HINTS ${METIS_DIR}
PATH_SUFFIXES
# the metis library...
#
GET_FILENAME_COMPONENT(_path "${METIS_LIBRARY}" PATH)
-FIND_LIBRARY(PARMETIS_LIBRARY
+DEAL_II_FIND_LIBRARY(PARMETIS_LIBRARY
NAMES parmetis
HINTS ${_path}
NO_DEFAULT_PATH
NO_CMAKE_FIND_ROOT_PATH
)
-FIND_PATH(METIS_INCLUDE_DIR metis.h
+DEAL_II_FIND_PATH(METIS_INCLUDE_DIR metis.h
HINTS ${METIS_DIR}
PATH_SUFFIXES metis include/metis include
)
# Search for scalapack:
#
-FIND_LIBRARY(SCALAPACK_LIBRARY NAMES scalapack
+DEAL_II_FIND_LIBRARY(SCALAPACK_LIBRARY NAMES scalapack
HINTS ${SCALAPACK_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
#
FOREACH(_lib blacs blacsCinit blacsF77init)
STRING(TOUPPER "${_lib}" _lib_upper)
- FIND_LIBRARY(${_lib_upper}_LIBRARY
+ DEAL_II_FIND_LIBRARY(${_lib_upper}_LIBRARY
NAMES ${_lib} ${_lib}_MPI-LINUX-0 ${_lib}_MPI-DARWIN-0
HINTS ${BLACS_DIR} ${SCALAPACK_DIR} ${SCALAPACK_DIR}/../blacs/
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib LIB
# Search for mumps:
#
-FIND_PATH(MUMPS_INCLUDE_DIR dmumps_c.h
+DEAL_II_FIND_PATH(MUMPS_INCLUDE_DIR dmumps_c.h
HINTS ${MUMPS_DIR}
PATH_SUFFIXES mumps include/mumps include
)
-FIND_LIBRARY(DMUMPS_LIBRARY
+DEAL_II_FIND_LIBRARY(DMUMPS_LIBRARY
NAMES dmumps
HINTS ${MUMPS_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
-FIND_LIBRARY(MUMPS_COMMON_LIBRARY
+DEAL_II_FIND_LIBRARY(MUMPS_COMMON_LIBRARY
NAMES mumps_common
HINTS ${MUMPS_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
#
# If we can find libport.so (or similiar), link it in as well:
#
-FIND_LIBRARY(PORD_LIBRARY
+DEAL_II_FIND_LIBRARY(PORD_LIBRARY
NAMES pord
HINTS ${MUMPS_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
SET(MUPARSER_DIR "" CACHE PATH "An optional hint to a MUPARSER installation")
SET_IF_EMPTY(MUPARSER_DIR "$ENV{MUPARSER_DIR}")
-FIND_LIBRARY(MUPARSER_LIBRARY
+DEAL_II_FIND_LIBRARY(MUPARSER_LIBRARY
NAMES muparser muparserd
HINTS ${MUPARSER_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
-FIND_PATH(MUPARSER_INCLUDE_DIR muParserDef.h
+DEAL_II_FIND_PATH(MUPARSER_INCLUDE_DIR muParserDef.h
HINTS ${MUPARSER_DIR}
PATH_SUFFIXES include
)
SET(NETCDF_DIR "" CACHE PATH "An optional hint to a NETCDF installation")
SET_IF_EMPTY(NETCDF_DIR "$ENV{NETCDF_DIR}")
-FIND_PATH(NETCDF_INCLUDE_DIR netcdfcpp.h
+DEAL_II_FIND_PATH(NETCDF_INCLUDE_DIR netcdfcpp.h
HINTS ${NETCDF_DIR}
PATH_SUFFIXES netcdf include
)
# - separate C++ and C library search
#
-FIND_LIBRARY(NETCDF_CPLUSPLUS_LIBRARY NAMES netcdf_c++ netcdf_cpp
+DEAL_II_FIND_LIBRARY(NETCDF_CPLUSPLUS_LIBRARY NAMES netcdf_c++ netcdf_cpp
HINTS ${NETCDF_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
-FIND_LIBRARY(NETCDF_C_LIBRARY NAMES netcdf
+DEAL_II_FIND_LIBRARY(NETCDF_C_LIBRARY NAMES netcdf
HINTS ${NETCDF_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
# given, take what we chose for p4est.
#
-FIND_PATH(SC_INCLUDE_DIR sc.h
+DEAL_II_FIND_PATH(SC_INCLUDE_DIR sc.h
HINTS
${SC_DIR}/FAST
${SC_DIR}/DEBUG
sc include/p4est include src sc/src
)
-FIND_LIBRARY(P4EST_LIBRARY_OPTIMIZED
+DEAL_II_FIND_LIBRARY(P4EST_LIBRARY_OPTIMIZED
NAMES p4est
HINTS ${P4EST_DIR}/FAST ${P4EST_DIR}/DEBUG ${P4EST_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib src
)
-FIND_LIBRARY(SC_LIBRARY_OPTIMIZED
+DEAL_II_FIND_LIBRARY(SC_LIBRARY_OPTIMIZED
NAMES sc
HINTS
${SC_DIR}/FAST
# Support debug variants as well:
#
-FIND_LIBRARY(P4EST_LIBRARY_DEBUG
+DEAL_II_FIND_LIBRARY(P4EST_LIBRARY_DEBUG
NAMES p4est
HINTS ${P4EST_DIR}/DEBUG
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib src
)
-FIND_LIBRARY(SC_LIBRARY_DEBUG
+DEAL_II_FIND_LIBRARY(SC_LIBRARY_DEBUG
NAMES sc
HINTS ${SC_DIR}/DEBUG ${P4EST_DIR}/DEBUG
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib src sc/src
ENDIF()
-FIND_PATH(P4EST_INCLUDE_DIR p4est_config.h
+DEAL_II_FIND_PATH(P4EST_INCLUDE_DIR p4est_config.h
HINTS ${P4EST_DIR}/FAST ${P4EST_DIR}/DEBUG ${P4EST_DIR}
PATH_SUFFIXES p4est include/p4est include src
)
SET_IF_EMPTY(PETSC_DIR "$ENV{PETSC_DIR}")
SET_IF_EMPTY(PETSC_ARCH "$ENV{PETSC_ARCH}")
-FIND_LIBRARY(PETSC_LIBRARY
- NAMES petsc
+DEAL_II_FIND_LIBRARY(PETSC_LIBRARY
+ NAMES petscbob
HINTS ${PETSC_DIR} ${PETSC_DIR}/${PETSC_ARCH}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
# Search for the first part of the includes:
#
-FIND_PATH(PETSC_INCLUDE_DIR_ARCH petscconf.h
+DEAL_II_FIND_PATH(PETSC_INCLUDE_DIR_ARCH petscconf.h
HINTS ${PETSC_DIR} ${PETSC_DIR}/${PETSC_ARCH} ${PETSC_INCLUDE_DIRS}
PATH_SUFFIXES petsc include include/petsc
)
# Either way, we must be able to find petscversion.h:
#
-FIND_PATH(PETSC_INCLUDE_DIR_COMMON petscversion.h
+DEAL_II_FIND_PATH(PETSC_INCLUDE_DIR_COMMON petscversion.h
HINTS ${PETSC_DIR} ${PETSC_DIR}/${PETSC_ARCH} ${PETSC_INCLUDE_DIRS}
PATH_SUFFIXES petsc include include/petsc
)
# that file:
#
-FIND_FILE(PETSC_PETSCVARIABLES
+DEAL_II_FIND_FILE(PETSC_PETSCVARIABLES
NAMES petscvariables
HINTS ${PETSC_DIR}/${PETSC_ARCH} ${PETSC_DIR}
PATH_SUFFIXES conf
LIST(APPEND _petsc_libraries ${PETSC_LIBRARY_${_token}})
ENDIF()
ELSEIF(NOT _token MATCHES "(petsc|stdc\\+\\+|gcc_s)")
- FIND_LIBRARY(PETSC_LIBRARY_${_token}
+ DEAL_II_FIND_LIBRARY(PETSC_LIBRARY_${_token}
NAMES ${_token}
HINTS ${_hints}
)
# mechanism.
#
-FIND_LIBRARY(SLEPC_LIBRARY
+DEAL_II_FIND_LIBRARY(SLEPC_LIBRARY
NAMES slepc
HINTS ${SLEPC_DIR} ${SLEPC_DIR}/${PETSC_ARCH} ${PETSC_DIR}
PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
)
-FIND_PATH(SLEPC_INCLUDE_DIR_ARCH slepcconf.h
+DEAL_II_FIND_PATH(SLEPC_INCLUDE_DIR_ARCH slepcconf.h
HINTS
${SLEPC_DIR}
${SLEPC_DIR}/${PETSC_ARCH}
PATH_SUFFIXES slepc include include/slepc
)
-FIND_PATH(SLEPC_INCLUDE_DIR_COMMON slepcversion.h
+DEAL_II_FIND_PATH(SLEPC_INCLUDE_DIR_COMMON slepcversion.h
HINTS
${SLEPC_DIR}
${SLEPC_DIR}/${PETSC_ARCH}
SET_IF_EMPTY(TBB_DIR "$ENV{TBB_DIR}")
FILE(GLOB _path ${TBB_DIR}/build/*_release)
-FIND_LIBRARY(TBB_LIBRARY
+DEAL_II_FIND_LIBRARY(TBB_LIBRARY
NAMES tbb
HINTS
${_path}
# Also search for the debug library:
#
FILE(GLOB _path ${TBB_DIR}/build/*_debug)
-FIND_LIBRARY(TBB_DEBUG_LIBRARY
+DEAL_II_FIND_LIBRARY(TBB_DEBUG_LIBRARY
NAMES tbb_debug
HINTS
${_path}
SET(_libraries TBB_LIBRARY)
ENDIF()
-FIND_PATH(TBB_INCLUDE_DIR tbb/tbb_stddef.h
+DEAL_II_FIND_PATH(TBB_INCLUDE_DIR tbb/tbb_stddef.h
HINTS
${TBB_DIR}
PATH_SUFFIXES include include/tbb tbb
#
# Look for the one include file that we'll query for further information:
#
-FIND_FILE(EPETRA_CONFIG_H Epetra_config.h
+DEAL_II_FIND_FILE(EPETRA_CONFIG_H Epetra_config.h
HINTS ${Trilinos_INCLUDE_DIRS}
NO_DEFAULT_PATH NO_CMAKE_ENVIRONMENT_PATH NO_CMAKE_PATH
NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH NO_CMAKE_FIND_ROOT_PATH
# Test whether that is indeed the case:
#
-FIND_FILE(SACADO_CMATH_HPP Sacado_cmath.hpp
+DEAL_II_FIND_FILE(SACADO_CMATH_HPP Sacado_cmath.hpp
HINTS ${Trilinos_INCLUDE_DIRS}
NO_DEFAULT_PATH NO_CMAKE_ENVIRONMENT_PATH NO_CMAKE_PATH
NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH NO_CMAKE_FIND_ROOT_PATH
SET(_libraries "")
FOREACH(_library ${Trilinos_LIBRARIES})
LIST(APPEND _libraries TRILINOS_LIBRARY_${_library})
- FIND_LIBRARY(TRILINOS_LIBRARY_${_library}
+ DEAL_II_FIND_LIBRARY(TRILINOS_LIBRARY_${_library}
NAMES ${_library}
HINTS ${Trilinos_LIBRARY_DIRS}
NO_DEFAULT_PATH
MACRO(FIND_UMFPACK_PATH _comp _file)
STRING(TOLOWER ${_comp} _comp_lowercase)
STRING(TOUPPER ${_comp} _comp_uppercase)
- FIND_PATH(${_comp}_INCLUDE_DIR ${_file}
+ DEAL_II_FIND_PATH(${_comp}_INCLUDE_DIR ${_file}
HINTS
${${_comp_uppercase}_DIR}
${SUITESPARSE_DIR}/${_comp}
MACRO(FIND_UMFPACK_LIBRARY _comp _name)
STRING(TOUPPER ${_comp} _comp_uppercase)
- FIND_LIBRARY(${_comp}_LIBRARY
+ DEAL_II_FIND_LIBRARY(${_comp}_LIBRARY
NAMES ${_name}
HINTS
${${_comp_uppercase}_DIR}