]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Merge from mainline.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 27 Sep 2012 20:58:59 +0000 (20:58 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 27 Sep 2012 20:58:59 +0000 (20:58 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_cmake@26805 0785d39b-7218-0410-832d-ea1e28bc413d

1  2 
deal.II/include/deal.II/base/config.h.in
deal.II/include/deal.II/grid/tria_iterator.h
deal.II/source/dofs/dof_tools.cc

index 4d4f4d0a21fcc7493ecbf59de2ab53b51b787eea,37e5c6c7c668a3c2df7648741d6e1d62dec1d956..41b9e6440ff6019c0a598416a4ab90380ec36e06
  #define DEAL_II_NAMESPACE_OPEN namespace dealii {
  #define DEAL_II_NAMESPACE_CLOSE }
  
 +/* Define to the full name of this package. */
 +#define DEAL_II_PACKAGE_NAME "@DEAL_II_PACKAGE_NAME@"
  
 +/* Define to the one symbol short name of this package. */
 +#define DEAL_II_PACKAGE_TARNAME "@DEAL_II_PACKAGE_TARNAME@"
  
 -/* Define if building universal (internal helper macro) */
 -#undef AC_APPLE_UNIVERSAL_BUILD
 -
 -/* Defined if the prototype of abort() has a no-throw exception specification.
 -   */
 -#undef DEAL_II_ABORT_NOTHROW_EXCEPTION
 -
 -/* Flag indicating whether there is a bug in the compiler that leads to bogus
 -   warnings for inline class members in anonymous namespaces */
 -#undef DEAL_II_ANON_NAMESPACE_BOGUS_WARNING
 -
 -/* Defined if the compiler needs to see the static keyword even for functions
 -   in anonymous namespaces, to avoid duplicate symbol errors when linking. For
 -   the details, look at aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_ANON_NAMESPACE_BUG
 -
 -/* Another test if the compiler needs to see the static keyword even for
 -   functions in anonymous namespaces, to avoid duplicate symbol errors when
 -   linking. For the details, look at aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_ANON_NAMESPACE_LINKAGE_BUG
 -
 -/* Defined if the compiler has a problem with using arrays as arguments in
 -   functions */
 -#undef DEAL_II_ARRAY_ARG_BUG
 -
 -/* Defined if the compiler has a problem with assigning arrays in conditionals
 -   */
 -#undef DEAL_II_ARRAY_CONDITIONAL_DECAY_BUG
 -
 -/* Defined if the compiler gets an internal error compiling some code that
 -   involves boost::bind */
 -#undef DEAL_II_BOOST_BIND_COMPILER_BUG
 -
 -/* Defined if the compiler gets an internal error compiling some code that
 -   involves boost::graph */
 -#undef DEAL_II_BOOST_GRAPH_COMPILER_BUG
 -
 -/* Define if the use of socket functionality leads to strange results with
 -   floating point computations on cygwin systems. */
 -#undef DEAL_II_BROKEN_SOCKETS
 -
 -/* Defined if the compiler we use supports the C++2011 standard well enough to
 -   allow using the standard library classes instead of the corresponding BOOST
 -   classes. */
 -#undef DEAL_II_CAN_USE_CXX1X
 -
 -/* Backward compatibility support for functions and classes that do not take
 -   an explicit mapping variable, but rather use a default Q1 mapping instead
 -   */
 -#undef DEAL_II_COMPAT_MAPPING
 -
 -/* Defined if the compiler supports including <mpi.h> */
 -#undef DEAL_II_COMPILER_SUPPORTS_MPI
 -
 -/* Defined if the compiler can use arithmetic operations on vectorized data
 -   types */
 -#undef DEAL_II_COMPILER_USE_VECTOR_ARITHMETICS
 -
 -/* Equal to 0 in the generic case, equal to 1 if CPU compiled for supports
 -   SSE2, equal to 2 if CPU compiled for supports AVX */
 -#undef DEAL_II_COMPILER_VECTORIZATION_LEVEL
 -
 -/* Defined if the compiler has a bug in deducing the type of pointers to const
 -   member functions. */
 -#undef DEAL_II_CONST_MEMBER_DEDUCTION_BUG
 -
 -/* If the compiler supports this, then this variable is defined to a string
 -   that when written after a function name makes the compiler emit a warning
 -   whenever this function is used somewhere that its use is deprecated. */
 -#undef DEAL_II_DEPRECATED
 -
 -/* disable the function parser in contrib */
 -#undef DEAL_II_DISABLE_PARSER
 -
 -/* Defined if the compiler does not honor the explicit keyword on template
 -   constructors. */
 -#undef DEAL_II_EXPLICIT_CONSTRUCTOR_BUG
 -
 -/* Define if we have to work around a bug where the compiler doesn't accept an
 -   explicit destructor call. See the aclocal.m4 file in the top-level
 -   directory for a description of this bug. */
 -#undef DEAL_II_EXPLICIT_DESTRUCTOR_BUG
 -
 -/* Defined if the compiler needs a workaround for certain problems with taking
 -   the address of template template functions. For the details, look at
 -   aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_FUNPTR_TEMPLATE_TEMPLATE_BUG
 -
 -/* Defined if the compiler has a bug with dynamic casting and dynamic
 -   libraries */
 -#undef DEAL_II_HAVE_DARWIN_DYNACAST_BUG
 -
 -/* Defined if you have HDF5 support */
 -#undef DEAL_II_HAVE_HDF5
 -
 -/* Defined if std::isfinite is available */
 -#undef DEAL_II_HAVE_ISFINITE
 +/* Define to the version of this package. */
 +#define DEAL_II_PACKAGE_VERSION "@DEAL_II_PACKAGE_VERSION@"
  
 -/* Flag indicating whether the library shall be compiled to use the Tecplot
 -   interface */
 -#undef DEAL_II_HAVE_TECPLOT
 +/* Define to the full name and version of this package. */
 +#define DEAL_II_PACKAGE_STRING "@DEAL_II_PACKAGE_STRING@"
  
 -/* Defined if the compiler refuses to compile the definition of a function
 -   that was previously declared abstract. */
 -#undef DEAL_II_IMPLEMENTED_PURE_FUNCTION_BUG
 +/* Define to the address where bug reports for this package should be sent. */
 +#define DEAL_II_PACKAGE_BUGREPORT "@DEAL_II_PACKAGE_BUGREPORT@"
  
 -/* Define if we have to work around a bug in Sun's Forte compiler. See the
 -   aclocal.m4 file in the top-level directory for a description of this bug.
 -   */
 -#undef DEAL_II_LOCAL_TYPEDEF_COMP_WORKAROUND
 +/* Define to the home page for this package. */
 +#define DEAL_II_PACKAGE_URL "@DEAL_II_PACKAGE_URL@"
  
 -/* Defined if the compiler gets an internal compiler upon some code involving
 -   long doubles, and with optimization. For the details, look at aclocal.m4 in
 -   the top-level directory. */
 -#undef DEAL_II_LONG_DOUBLE_LOOP_BUG
 +/* Path to the deal.II directory */
 +#define DEAL_II_PATH "@DEAL_II_PATH@"
  
  /* Major version number of deal.II */
 -#undef DEAL_II_MAJOR
 -
 -/* Defined if the compiler refuses to allow the explicit specialization of
 -   static member arrays. For the exact failure mode, look at aclocal.m4 in the
 -   top-level directory. */
 -#undef DEAL_II_MEMBER_ARRAY_SPECIALIZATION_BUG
 -
 -/* Define if we have to work around a bug in gcc with explicitly instantiating
 -   template member operators. See the aclocal.m4 file in the top-level
 -   directory for a description of this bug. */
 -#undef DEAL_II_MEMBER_OP_TEMPLATE_INST
 -
 -/* Defined if the compiler refuses to specialize an outer class template while
 -   keeping a member as a template. For the exact failure mode, look at
 -   aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_MEMBER_TEMPLATE_SPECIALIZATION_BUG
 -
 -/* Defined if the compiler refuses to allow the explicit specialization of
 -   static member variables. For the exact failure mode, look at aclocal.m4 in
 -   the top-level directory. */
 -#undef DEAL_II_MEMBER_VAR_SPECIALIZATION_BUG
 +#define DEAL_II_MAJOR "@DEAL_II_VERSION_MAJOR@" # legacy
 +#define DEAL_II_VERSION_MAJOR "@DEAL_II_VERSION_MAJOR@"
  
  /* Minor version number of deal.II */
 -#undef DEAL_II_MINOR
 +#define DEAL_II_MINOR "@DEAL_II_VERSION_MINOR@" # legacy
 +#define DEAL_II_VERSION_MINOR "@DEAL_II_VERSION_MINOR@"
  
 -/* Set to the minimal number of elements a std::vector<bool> can always hold,
 -   i.e. its minimal capacity. */
 -#undef DEAL_II_MIN_BOOL_VECTOR_CAPACITY
  
 -/* Set to the minimal number of elements a std::vector<T> can always hold,
 -   i.e. its minimal capacity. */
 -#undef DEAL_II_MIN_VECTOR_CAPACITY
 -
 -/* enable multigrid compatibility mode */
 -#undef DEAL_II_MULTIGRID_COMPATIBILITY
 -
 -/* Define if we have to work around a bug in gcc with marking all instances of
 -   a template class as friends to this class if the class is inside a
 -   namespace. See the aclocal.m4 file in the top-level directory for a
 -   description of this bug. */
 -#undef DEAL_II_NAMESP_TEMPL_FRIEND_BUG
 -
 -/* Define if we have to work around another bug in gcc with marking all
 -   instances of a template class as friends to this class if the class is
 -   inside a namespace. See the aclocal.m4 file in the top-level directory for
 -   a description of this bug. */
 -#undef DEAL_II_NAMESP_TEMPL_FRIEND_BUG2
  
 -/* Defined if the compiler does not properly implement the resolution of
 -   defect report #45 to the C++ standard, which makes nested types implicit
 -   friends of the enclosing class. */
 -#undef DEAL_II_NESTED_CLASS_FRIEND_BUG
  
 -/* Defined if the compiler does not understand friend declarations for nested
 -   member classes when giving a full class specification. */
 -#undef DEAL_II_NESTED_CLASS_TEMPL_FRIEND_BUG
 -
 -/* Path to the deal.II directory */
 -#undef DEAL_II_PATH
 -
 -/* Defined if the compiler does not support the
 -   substitution-failure-is-not-an-error paradigm. For the details, look at
 -   aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_SFINAE_BUG
 -
 -/* Define if we have to work around a bug in Sun's Forte compiler. See the
 -   aclocal.m4 file in the top-level directory for a description of this bug.
 -   */
 -#undef DEAL_II_TEMPLATE_SPEC_ACCESS_WORKAROUND
 -
 -/* Defined if the compiler refuses to allow a typedef to a template template
 -   class template parameter. For the exact failure mode, look at aclocal.m4 in
 -   the top-level directory. */
 -#undef DEAL_II_TEMPLATE_TEMPLATE_TYPEDEF_BUG
 -
 -/* Defined if the compiler requires the use of the template keyword for
 -   disambiguation keyword in certain contexts in which it is not supposed to
 -   do so. For the exact failure mode, look at aclocal.m4 in the top-level
 -   directory. */
 -#undef DEAL_II_TEMPL_OP_DISAMBIGUATION_BUG
 -
 -/* Define if we have to work around a bug with some compilers that will not
 -   allow us to specify a fully specialized class of a template as a friend.
 -   See the aclocal.m4 file in the top-level directory for a description of
 -   this bug. */
 -#undef DEAL_II_TEMPL_SPEC_FRIEND_BUG
 +/*****************************************
 + * Configured in configure_arpack.cmake: *
 + *****************************************/
  
  /* Defined if an ARPACK installation was found and is going to be used */
 -#undef DEAL_II_USE_ARPACK
 -
 -/* Define if the compiler provides a <errno.g> header file which does not
 -   define all error codes such as EINTR. In that case, use the system include
 -   file at /usr/include instead. There is probably a better way to do this,
 -   but it is not apparent by looking at the C/C++ compatibility header
 -   provided by the compiler. */
 -#undef DEAL_II_USE_DIRECT_ERRNO_H
 -
 -/* Defined if deal.II is configured with an external Boost library */
 -#undef DEAL_II_USE_EXTERNAL_BOOST
 -
 -/* Defined if a Metis installation was found and is going to be used */
 -#undef DEAL_II_USE_METIS
 -
 -/* Flag indicating whether the library shall be compiled for multithreaded
 -   applications. If so, then it is set to one, otherwise to zero. */
 -#undef DEAL_II_USE_MT
 -
 -/* Defined if multi-threading is to be achieved by using the POSIX functions
 -   */
 -#undef DEAL_II_USE_MT_POSIX
 +#cmakedefine DEAL_II_USE_ARPACK
  
 -/* Defined if POSIX is supported but not the newer POSIX barrier functions.
 -   Barriers will then not work in the library, but the other threading
 -   functionality is available. */
 -#undef DEAL_II_USE_MT_POSIX_NO_BARRIERS
 -
 -/* Defined if a MUMPS installation was found and is going to be used */
 -#undef DEAL_II_USE_MUMPS
 -
 -/* Defined if we are to use the p4est library to distribute meshes on a
 -   cluster computer. */
 -#undef DEAL_II_USE_P4EST
 -
 -/* Defined if a PETSc installation was found and is going to be used */
 -#undef DEAL_II_USE_PETSC
 -
 -/* Defined if a PETSc installation was found with complex scalar type and is
 -   going to be used */
 -#undef DEAL_II_USE_PETSC_COMPLEX
  
 -/* Defined if a PETSc installation was found and is not a release */
 -#undef DEAL_II_USE_PETSC_DEV
 +/***************************************
 + * Configured in configure_blas.cmake: *
 + ***************************************/
  
 -/* Defined if a SLEPc installation was found and is going to be used */
 -#undef DEAL_II_USE_SLEPC
 -
 -/* Defined if a Trilinos installation was found and is going to be used */
 -#undef DEAL_II_USE_TRILINOS
 -
 -/* Define if vector iterators are just plain pointers */
 -#undef DEAL_II_VECTOR_ITERATOR_IS_POINTER
 +/* Defined if deal.II was configured with BLAS support */
 +#cmakedefine HAVE_LIBBLAS
  
 -/* This error appears in the Apple edition of the gcc 3.3, which ships with
 -   Darwin7.9.0 and probably previous version. It leads to problems during
 -   linking. For the details, look at aclocal.m4 in the top-level directory. */
 -#undef DEAL_II_WEAK_LINKAGE_BUG
  
 -/* Defined if the system stores words with the most significant byte first */
 -#undef DEAL_II_WORDS_BIGENDIAN
 +/*************************************************
 + * Configured in configure_functionparser.cmake: *
 + *************************************************/
  
 -/* Define to 1 if you have the <Amesos.h> header file. */
 -#undef HAVE_AMESOS_H
 +/* Defined if you have the `functionparser' library */
 +#cmakedefine HAVE_FUNCTIONPARSER
  
 -/* Define to 1 if you have the <AztecOO.h> header file. */
 -#undef HAVE_AZTECOO_H
  
 -/* Define to 1 if you have the <AztecOO_Operator.h> header file. */
 -#undef HAVE_AZTECOO_OPERATOR_H
 +/*****************************************
 + * Configured in configure_lapack.cmake: *
 + *****************************************/
  
 -/* Define if the compiler provides __builtin_expect */
 -#undef HAVE_BUILTIN_EXPECT
 +/* Defined if deal.II was configured with LAPACK support */
 +#cmakedefine HAVE_LIBLAPACK
  
  /* Define to 1 if you have the `daxpy_' function. */
 -#undef HAVE_DAXPY_
 +#cmakedefine HAVE_DAXPY_
  
  /* Define to 1 if you have the `dgeevx_' function. */
 -#undef HAVE_DGEEVX_
 +#cmakedefine HAVE_DGEEVX_
  
  /* Define to 1 if you have the `dgeev_' function. */
 -#undef HAVE_DGEEV_
 +#cmakedefine HAVE_DGEEV_
  
  /* Define to 1 if you have the `dgelsd_' function. */
 -#undef HAVE_DGELSD_
 +#cmakedefine HAVE_DGELSD_
  
  /* Define to 1 if you have the `dgemm_' function. */
 -#undef HAVE_DGEMM_
 +#cmakedefine HAVE_DGEMM_
  
  /* Define to 1 if you have the `dgemv_' function. */
 -#undef HAVE_DGEMV_
 +#cmakedefine HAVE_DGEMV_
  
  /* Define to 1 if you have the `dgeqrf_' function. */
 -#undef HAVE_DGEQRF_
 +#cmakedefine HAVE_DGEQRF_
  
  /* Define to 1 if you have the `dgesdd_' function. */
 -#undef HAVE_DGESDD_
 +#cmakedefine HAVE_DGESDD_
  
  /* Define to 1 if you have the `dgesvd_' function. */
 -#undef HAVE_DGESVD_
 +#cmakedefine HAVE_DGESVD_
  
  /* Define to 1 if you have the `dgetrf_' function. */
 -#undef HAVE_DGETRF_
 +#cmakedefine HAVE_DGETRF_
  
  /* Define to 1 if you have the `dgetri_' function. */
 -#undef HAVE_DGETRI_
 +#cmakedefine HAVE_DGETRI_
  
  /* Define to 1 if you have the `dgetrs_' function. */
 -#undef HAVE_DGETRS_
 +#cmakedefine HAVE_DGETRS_
  
  /* Define to 1 if you have the `dorgqr_' function. */
 -#undef HAVE_DORGQR_
 +#cmakedefine HAVE_DORGQR_
  
  /* Define to 1 if you have the `dormqr_' function. */
 -#undef HAVE_DORMQR_
 +#cmakedefine HAVE_DORMQR_
  
  /* Define to 1 if you have the `dstev_' function. */
 -#undef HAVE_DSTEV_
 +#cmakedefine HAVE_DSTEV_
  
  /* Define to 1 if you have the `dsyevx_' function. */
 -#undef HAVE_DSYEVX_
 +#cmakedefine HAVE_DSYEVX_
  
  /* Define to 1 if you have the `dsygvx_' function. */
 -#undef HAVE_DSYGVX_
 +#cmakedefine HAVE_DSYGVX_
  
 -/* Define to 1 if you have the `dsygv_' function. */
 -#undef HAVE_DSYGV_
 +/* Define to 1 if you have the `sgeevx_' function. */
 +#cmakedefine HAVE_SGEEVX_
  
 -/* Define to 1 if you have the `dtrtrs_' function. */
 -#undef HAVE_DTRTRS_
 +/* Define to 1 if you have the `sgeev_' function. */
 +#cmakedefine HAVE_SGEEV_
  
 -/* Define to 1 if you have the <Epetra_CrsGraph.h> header file. */
 -#undef HAVE_EPETRA_CRSGRAPH_H
 +/* Define to 1 if you have the `sgelsd_' function. */
 +#cmakedefine HAVE_SGELSD_
  
 -/* Define to 1 if you have the <Epetra_CrsMatrix.h> header file. */
 -#undef HAVE_EPETRA_CRSMATRIX_H
 +/* Define to 1 if you have the `sgemm_' function. */
 +#cmakedefine HAVE_SGEMM_
  
 -/* Define to 1 if you have the <Epetra_Import.h> header file. */
 -#undef HAVE_EPETRA_IMPORT_H
 +/* Define to 1 if you have the `sgemv_' function. */
 +#cmakedefine HAVE_SGEMV_
  
 -/* Define to 1 if you have the <Epetra_LinearProblem.h> header file. */
 -#undef HAVE_EPETRA_LINEARPROBLEM_H
 +/* Define to 1 if you have the `sgeqrf_' function. */
 +#cmakedefine HAVE_SGEQRF_
  
 -/* Define to 1 if you have the <Epetra_Map.h> header file. */
 -#undef HAVE_EPETRA_MAP_H
 +/* Define to 1 if you have the `sgesdd_' function. */
 +#cmakedefine HAVE_SGESDD_
  
 -/* Define to 1 if you have the <Epetra_MultiVector.h> header file. */
 -#undef HAVE_EPETRA_MULTIVECTOR_H
 +/* Define to 1 if you have the `sgesvd_' function. */
 +#cmakedefine HAVE_SGESVD_
  
 -/* Define to 1 if you have the <Epetra_Operator.h> header file. */
 -#undef HAVE_EPETRA_OPERATOR_H
 +/* Define to 1 if you have the `sgetrf_' function. */
 +#cmakedefine HAVE_SGETRF_
  
 -/* Define to 1 if you have the <Epetra_SerialComm.h> header file. */
 -#undef HAVE_EPETRA_SERIALCOMM_H
 +/* Define to 1 if you have the `sgetri_' function. */
 +#cmakedefine HAVE_SGETRI_
  
 -/* Define to 1 if you have the <Epetra_Vector.h> header file. */
 -#undef HAVE_EPETRA_VECTOR_H
 +/* Define to 1 if you have the `sgetrs_' function. */
 +#cmakedefine HAVE_SGETRS_
  
 -/* Define to 1 if you have the `gethostname' function. */
 -#undef HAVE_GETHOSTNAME
 +/* Define to 1 if you have the `sorgqr_' function. */
 +#cmakedefine HAVE_SORGQR_
  
 -/* Define to 1 if you have the `getpid' function. */
 -#undef HAVE_GETPID
 +/* Define to 1 if you have the `sormqr_' function. */
 +#cmakedefine HAVE_SORMQR_
  
 -/* Define if deal.II is linked against a libc that provides stacktrace debug
 -   information that can be printed out in the exception class */
 -#undef HAVE_GLIBC_STACKTRACE
 +/* Define to 1 if you have the `sstev_' function. */
 +#cmakedefine HAVE_SSTEV_
  
 -/* Availability of the MA27 algorithm from HSL */
 -#undef HAVE_HSL_MA27
 +/* Define to 1 if you have the `ssyevx_' function. */
 +#cmakedefine HAVE_SSYEVX_
  
 -/* Availability of the MA47 algorithm from HSL */
 -#undef HAVE_HSL_MA47
 +/* Define to 1 if you have the `ssygvx_' function. */
 +#cmakedefine HAVE_SSYGVX_
  
 -/* Define to 1 if you have the <Ifpack.h> header file. */
 -#undef HAVE_IFPACK_H
 +/* Defined if you have the `strtrs_' function. */
 +#cmakedefine HAVE_STRTRS_
  
 -/* Define to 1 if you have the <inttypes.h> header file. */
 -#undef HAVE_INTTYPES_H
  
 -/* Define to 1 if you have the `jn' function. */
 -#undef HAVE_JN
 +/****************************************
 + * Configured in configure_metis.cmake: *
 + ****************************************/
  
 -/* Defined if deal.II was configured with BLAS support */
 -#undef HAVE_LIBBLAS
 +/* Defined if a Metis installation was found and is going to be used */
 +#cmakedefine DEAL_II_USE_METIS
  
 -/* Defined if deal.II was configured with LAPACK support */
 -#undef HAVE_LIBLAPACK
  
 -/* Define to 1 if you have the `NetCDF' library (-lnetcdf). */
 -#undef HAVE_LIBNETCDF
 +/**************************************
 + * Configured in configure_mpi.cmake: *
 + **************************************/
  
 -/* Define if the std c++ library provides a demangler conforming to the GCC
 -   libstdc++ interface. */
 -#undef HAVE_LIBSTDCXX_DEMANGLER
 +/* Defined if the compiler supports mpi */
 +#cmakedefine DEAL_II_COMPILER_SUPPORTS_MPI
  
 -/* UMFPACK is */
 -#undef HAVE_LIBUMFPACK
  
 -/* "" */
 -#undef HAVE_LIBZ
 +/*****************************************
 + * Configured in configure_netcdf.cmake: *
 + *****************************************/
  
 -/* Define to 1 if you have the <memory.h> header file. */
 -#undef HAVE_MEMORY_H
 +/* Defined if you have the `NetCDF' library */
 +#cmakedefine HAVE_LIBNETCDF
  
 -/* Define to 1 if you have the <ml_MultiLevelPreconditioner.h> header file. */
 -#undef HAVE_ML_MULTILEVELPRECONDITIONER_H
  
 -/* Define if you have the rand_r function */
 -#undef HAVE_RAND_R
 +/****************************************
 + * Configured in configure_p4est.cmake: *
 + ****************************************/
  
 -/* Define to 1 if you have the <Sacado.hpp> header file. */
 -#undef HAVE_SACADO_HPP
 +/* Defined if we are to use the p4est library to distribute meshes on a
 +   cluster computer. */
 +#cmakedefine DEAL_II_USE_P4EST
  
 -/* Define to 1 if you have the `saxpy_' function. */
 -#undef HAVE_SAXPY_
  
 -/* Define to 1 if you have the `sgeevx_' function. */
 -#undef HAVE_SGEEVX_
 +/****************************************
 + * Configured in configure_petsc.cmake: *
 + ****************************************/
  
 -/* Define to 1 if you have the `sgeev_' function. */
 -#undef HAVE_SGEEV_
 +/* Defined if a PETSc installation was found and is going to be used */
 +#cmakedefine DEAL_II_USE_PETSC
  
 -/* Define to 1 if you have the `sgelsd_' function. */
 -#undef HAVE_SGELSD_
 +/*
 + * Note: The following definitions will be set in petscconf.h and
 + *       petscversion.h, so we don't repeat them here.
 + *
 + *  PETSC_VERSION_MAJOR
 + *  PETSC_VERSION_MINOR
 + *  PETSC_VERSION_SUBMINOR
 + *  PETSC_VERSION_PATCH
 + *  PETSC_VERSION_RELEASE
 + *  PETSC_USE_COMPLEX
 + */
  
 -/* Define to 1 if you have the `sgemm_' function. */
 -#undef HAVE_SGEMM_
 +/**
 + * These macros are defined to make testing for PETSc versions within
 + * the deal.II main code as simple as possible. In brief they are used
 + * like this: (i) DEAL_II_PETSC_VERSION_LT is used to advance the
 + * PETScWrappers to newer versions of PETSc while preserving backward
 + * compatibility; and (ii) DEAL_II_PETSC_VERSION_GTE is used to add
 + * functionality to the PETScWrappers that does not exist in previous
 + * versions of PETSc.  Examples of usage can be found in
 + * lac/source/petsc_matrix_base.h.  Note: SLEPcWrappers do not need
 + * their own analogical macros, since SLEPc and PETSc must have
 + * identical version numbers anyways.
 + */
 +#define DEAL_II_PETSC_VERSION_LT(major,minor,subminor) \
 +  ((PETSC_VERSION_MAJOR * 10000 + \
 +    PETSC_VERSION_MINOR * 100 + \
 +    PETSC_VERSION_SUBMINOR) \
 +    <  \
 +    (major)*10000 + (minor)*100 + (subminor))
  
 -/* Define to 1 if you have the `sgemv_' function. */
 -#undef HAVE_SGEMV_
 +#define DEAL_II_PETSC_VERSION_GTE(major,minor,subminor) \
 +  ((PETSC_VERSION_MAJOR * 10000 + \
 +    PETSC_VERSION_MINOR * 100 + \
 +    PETSC_VERSION_SUBMINOR) \
 +    >=  \
 +    (major)*10000 + (minor)*100 + (subminor))
  
 -/* Define to 1 if you have the `sgeqrf_' function. */
 -#undef HAVE_SGEQRF_
  
 -/* Define to 1 if you have the `sgesdd_' function. */
 -#undef HAVE_SGESDD_
 +/**************************************
 + * Configured in configure_tbb.cmake: *
 + **************************************/
  
 -/* Define to 1 if you have the `sgesvd_' function. */
 -#undef HAVE_SGESVD_
 +/* Flag indicating whether the library shall be compiled for multithreaded
 + * applications. If so, then it is set to one, otherwise to zero.
 + */
 +#cmakedefine DEAL_II_USE_MT
  
 -/* Define to 1 if you have the `sgetrf_' function. */
 -#undef HAVE_SGETRF_
 +/* Defined if multi-threading is to be achieved by using the POSIX functions
 + */
 +#cmakedefine DEAL_II_USE_MT_POSIX
  
 -/* Define to 1 if you have the `sgetri_' function. */
 -#undef HAVE_SGETRI_
 +/* Defined if POSIX is supported but not the newer POSIX barrier functions.
 + * Barriers will then not work in the library, but the other threading
 + * functionality is available.
 + */
 +#cmakedefine DEAL_II_USE_MT_POSIX_NO_BARRIERS
  
 -/* Define to 1 if you have the `sgetrs_' function. */
 -#undef HAVE_SGETRS_
 +/**
 + * Depending on the use of threads, we will have to make some variables
 + * volatile. We do this here in a very old-fashioned C-style, but still
 + * convenient way.
 + */
 +#ifdef DEAL_II_USE_MT
 +#  define DEAL_VOLATILE volatile
 +#else
 +#  define DEAL_VOLATILE
 +#endif
  
 -/* Define to 1 if you have the `sorgqr_' function. */
 -#undef HAVE_SORGQR_
  
 -/* Define to 1 if you have the `sormqr_' function. */
 -#undef HAVE_SORMQR_
 +/*******************************************
 + * Configured in configure_trilinos.cmake: *
 + *******************************************/
  
 -/* Define to 1 if you have the `sstev_' function. */
 -#undef HAVE_SSTEV_
 +/* Defined if a Trilinos installation was found and is going to be used */
 +#cmakedefine DEAL_II_USE_TRILINOS
  
 -/* Define to 1 if you have the `ssyevx_' function. */
 -#undef HAVE_SSYEVX_
  
 -/* Define to 1 if you have the `ssygvx_' function. */
 -#undef HAVE_SSYGVX_
 +/******************************************
 + * Configured in configure_umfpack.cmake: *
 + ******************************************/
  
 -/* Define to 1 if you have the `ssygv_' function. */
 -#undef HAVE_SSYGV_
 +/* Defined if deal.II was configured with UMFPACK support */
 +#cmakedefine HAVE_LIBUMFPACK
  
 -/* Define to 1 if you have the <stdint.h> header file. */
 -#undef HAVE_STDINT_H
  
 -/* Define to 1 if you have the <stdlib.h> header file. */
 -#undef HAVE_STDLIB_H
 +/***************************************
 + * Configured in configure_zlib.cmake: *
 + ***************************************/
  
 -/* Define if the compiler provides an <iosfwd> header file */
 -#undef HAVE_STD_IOSFWD_HEADER
 +/* Defined if deal.II was configure with zlib support */
 +#cmakedefine HAVE_LIBZ
  
 -/* Define if the compiler's library in use provides a std::iterator class
 -   (early gcc versions did not) */
 -#undef HAVE_STD_ITERATOR_CLASS
  
 -/* Define if the compiler's library in use provides std::numeric_limits
 -   classes in the appropriate header file */
 -#undef HAVE_STD_NUMERIC_LIMITS
  
 -/* Define if the compiler provides an <ostream> header file */
 -#undef HAVE_STD_OSTREAM_HEADER
  
 -/* Define if the compiler's library in use provides std::i/ostringstream
 -   classes (early gcc versions did not) */
 -#undef HAVE_STD_STRINGSTREAM
 +/**********************************************
 + * Configured in check_for_compiler_features: *
 + **********************************************/
  
 -/* Define to 1 if you have the <strings.h> header file. */
 -#undef HAVE_STRINGS_H
 +/* Defined if vector iterators are just plain pointers */
 +#cmakedefine DEAL_II_VECTOR_ITERATOR_IS_POINTER
  
 -/* Define to 1 if you have the <string.h> header file. */
 -#undef HAVE_STRING_H
 +/* Define if the compiler provides __builtin_expect */
 +#cmakedefine HAVE_BUILTIN_EXPECT
  
 -/* Define to 1 if you have the `strtrs_' function. */
 -#undef HAVE_STRTRS_
 +/* Define if the compiler provides __verbose_terminate_handler */
 +#cmakedefine HAVE_VERBOSE_TERMINATE
  
 -/* Define to 1 if you have the <sys/stat.h> header file. */
 -#undef HAVE_SYS_STAT_H
 +/* Define if deal.II is linked against a libc that provides stacktrace
 + * debug information that can be printed out in the exception class
 + * */
 +#cmakedefine HAVE_GLIBC_STACKTRACE
  
 -/* Define to 1 if you have the <sys/syscall.h> header file. */
 -#undef HAVE_SYS_SYSCALL_H
 +/* Defined if the std c++ library provides a demangler conforming to the
 + * GCC libstdc++ interface.
 + */
 +#cmakedefine HAVE_LIBSTDCXX_DEMANGLER
  
 -/* Define to 1 if you have the <sys/times.h> header file. */
 -#undef HAVE_SYS_TIMES_H
 +/* Equal to 0 in the generic case, equal to 1 if CPU compiled for supports
 + * SSE2, equal to 2 if CPU compiled for supports AVX
 + */
 +#define DEAL_II_COMPILER_VECTORIZATION_LEVEL @DEAL_II_COMPILER_VECTORIZATION_LEVEL@
  
 -/* Define to 1 if you have the <sys/types.h> header file. */
 -#undef HAVE_SYS_TYPES_H
 +/* Defined if the compiler can use arithmetic operations on vectorized data
 + * types
 + */
 +#cmakedefine DEAL_II_COMPILER_USE_VECTOR_ARITHMETICS
  
 -/* Define to 1 if you have the <Teuchos_ParameterList.hpp> header file. */
 -#undef HAVE_TEUCHOS_PARAMETERLIST_HPP
 +/* If already available, do not define at all. Otherwise, define to
 + * __func__ if that is available. In all other cases, indicate that no
 + * information about the present function is available for this compiler.
 + */
 +#cmakedefine __PRETTY_FUNCTION__ @__PRETTY_FUNCTION__@
  
 -/* Define to 1 if you have the <Teuchos_RCP.hpp> header file. */
 -#undef HAVE_TEUCHOS_RCP_HPP
 +/* Set to the minimal number of elements a std::vector<T> can always hold,
 + * i.e. its minimal capacity.
 + */
 +#define DEAL_II_MIN_VECTOR_CAPACITY @DEAL_II_MIN_VECTOR_CAPACITY@
  
 -/* Define to 1 if you have the <Teuchos_RefCountPtr.hpp> header file. */
 -#undef HAVE_TEUCHOS_REFCOUNTPTR_HPP
 +/* Set to the minimal number of elements a std::vector<bool> can always
 + * hold, i.e. its minimal capacity.
 + */
 +#define DEAL_II_MIN_BOOL_VECTOR_CAPACITY @DEAL_II_MIN_BOOL_VECTOR_CAPACITY@
  
 -/* Define to 1 if you have the `times' function. */
 -#undef HAVE_TIMES
  
 -/* Define to 1 if you have the <unistd.h> header file. */
 -#undef HAVE_UNISTD_H
  
 -/* Define if the compiler provides __verbose_terminate_handler */
 -#undef HAVE_VERBOSE_TERMINATE
  
 -/* On SunOS 4.x, the getrusage() function exists, but is not declared in the
 -   respective header file <resource.h>, as one would think when reading the
 -   man pages. Then we have to declare this function ourselves in those files
 -   that use this function. The question whether we have to do so is controlled
 -   by the preprocessor variable. */
 -#undef NO_HAVE_GETRUSAGE
 +/******************************************
 + * Configured in check_for_compiler_bugs: *
 + ******************************************/
  
 -/* Define to the address where bug reports for this package should be sent. */
 -#undef PACKAGE_BUGREPORT
 +/* Define if we have to work around a bug where the compiler doesn't accept
 + * an explicit destructor call. See the aclocal.m4 file in the top-level
 + * directory for a description of this bug.
 + */
 +#cmakedefine DEAL_II_EXPLICIT_DESTRUCTOR_BUG
  
 -/* Define to the full name of this package. */
 -#undef PACKAGE_NAME
  
 -/* Define to the full name and version of this package. */
 -#undef PACKAGE_STRING
  
 -/* Define to the one symbol short name of this package. */
 -#undef PACKAGE_TARNAME
  
 -/* Define to the home page for this package. */
 -#undef PACKAGE_URL
 +/*****************************************
 + * Configured in check_for_cxx_features: *
 + *****************************************/
  
 -/* Define to the version of this package. */
 -#undef PACKAGE_VERSION
 -
 -/* Make sure PETSc doesn't re-define the underscore through the preprocessor,
 -   since this interferes with boost. PETSc redefines the underscore to be
 -   "__gterr =", but then forgets to undef this thing. Boost simply wants to
 -   concatenate the underscore with another string to form a class name, which
 -   then of course isn't valid any more. See mails in early Feb 2006. */
 -#undef PETSC_SKIP_UNDERSCORE_CHKERR
 -
 -/* Define to 1 if you have the ANSI C header files. */
 -#undef STDC_HEADERS
 -
 -/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
 -   significant byte first (like Motorola and SPARC, unlike Intel). */
 -#if defined AC_APPLE_UNIVERSAL_BUILD
 -# if defined __BIG_ENDIAN__
 -#  define WORDS_BIGENDIAN 1
 -# endif
 -#else
 -# ifndef WORDS_BIGENDIAN
 -#  undef WORDS_BIGENDIAN
 -# endif
 -#endif
 +/* Defined if the compiler we use supports the C++2011 standard well enough
 + * to allow using the standard library classes instead of the corresponding
 + * BOOST classes.
 + */
 +#cmakedefine DEAL_II_CAN_USE_CXX1X
  
 -/* If already available, do not define at all. Otherwise, define to __func__
 -   if that is available. In all other cases, indicate that no information
 -   about the present function is available for this compiler. */
 -#undef __PRETTY_FUNCTION__
 +/* Defined if isnan is available */
 +#cmakedefine HAVE_ISNAN
  
 +/* Defined if _isnan is available */
 +#cmakedefine HAVE_UNDERSCORE_ISNAN
  
 -/**
 - * Depending on the use of threads, we will have to make some variables
 - * volatile. We do this here in a very old-fashioned C-style, but still
 - * convenient way.
 - */
 -#if DEAL_II_USE_MT != 0
 -#  define DEAL_VOLATILE volatile
 -#else
 -#  define DEAL_VOLATILE
 -#endif
 +/* Defined if std::isfinite is available */
 +#cmakedefine DEAL_II_HAVE_ISFINITE
  
 +/* Defined if you have the <stdint.h> header file. */
 +#cmakedefine HAVE_STDINT_H
  
 -/**
 - * A #define that indicates whether we are using the Microsoft
 - * Windows Visual C/C++ compiler. We currently do not run ./configure
 - * on MS Windows, so the detection for this compiler happens via
 - * the appropriate #ifdef, not through a configuration testcase.
 - */
 -#ifdef _MSC_VER
 -#  define DEAL_II_MSVC
 -#endif
 +/* Defined if you have the <stdlib.h> header file. */
 +#cmakedefine HAVE_STDLIB_H
  
 -/**
 - * Using pthreads under windows as a non-static library requires the following
 - * preprocessor switch to be undefined.
 - */
 -#ifdef DEAL_II_MSVC
 -#  if defined(PTW32_STATIC_LIB)
 -#    undef PTW32_STATIC_LIB
 -#  endif
 -#endif
 +/* Defined if you have the <strings.h> header file. */
 +#cmakedefine HAVE_STRINGS_H
  
 -/*
 - * There is an annoying problem in the Trilinos header ml_config.h: It
 - * #define's HAVE_INTTYPES_H but doesn't give the symbol a value. This
 - * conflicts with the result of running deal.II's ./configure which
 - * #define's it and gives it the value "1". The result is a compiler
 - * warning. So if we use Trilinos and if the symbol is already
 - * #define'd, then #undef it again here. deal.II doesn't use the
 - * #define anyway and this way if we include any of the Trilinos
 - * headers they can feel free to set it again to whatever they wish.
 - *
 - * The form of the #undef with the comment in the middle is necessary
 - * to avoid that the pattern substitution of ./configure turns the
 - * #undef into a #define again.
 - */
 -#if defined(DEAL_II_USE_TRILINOS) && defined(HAVE_INTTYPES_H)
 -#  undef /*   */ HAVE_INTTYPES_H
 -#endif
 +/* Defined if you have the <string.h> header file. */
 +#cmakedefine HAVE_STRING_H
 +
 +/* Defined if you have the <sys/stat.h> header file. */
 +#cmakedefine HAVE_SYS_STAT_H
 +
 +/* Defined if you have the <sys/syscall.h> header file. */
 +#cmakedefine HAVE_SYS_SYSCALL_H
 +
 +/* Defined if you have the <sys/times.h> header file. */
 +#cmakedefine HAVE_SYS_TIMES_H
 +
 +/* Defined if you have the <sys/types.h> header file. */
 +#cmakedefine HAVE_SYS_TYPES_H
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#cmakedefine HAVE_UNISTD_H
 +
++/* If the compiler supports it, then this variable is defined to a string
++   that when written after a function name makes the compiler emit a warning
++   whenever this function is used somewhere that its use is deprecated. */
++#define DEAL_II_DEPRECATED
  
 -/**
 - * These macros are defined to make testing for PETSc versions within
 - * the deal.II main code as simple as possible. In brief they are used
 - * like this: (i) DEAL_II_PETSC_VERSION_LT is used to advance the
 - * PETScWrappers to newer versions of PETSc while preserving backward
 - * compatibility; and (ii) DEAL_II_PETSC_VERSION_GTE is used to add
 - * functionality to the PETScWrappers that does not exist in previous
 - * versions of PETSc.  Examples of usage can be found in
 - * lac/source/petsc_matrix_base.h.  Note: SLEPcWrappers do not need
 - * their own analogical macros, since SLEPc and PETSc must have
 - * identical version numbers anyways.
 - */
 -#define DEAL_II_PETSC_VERSION_LT(major,minor,subminor) \
 -  ((PETSC_VERSION_MAJOR * 10000 + \
 -    PETSC_VERSION_MINOR * 100 + \
 -    PETSC_VERSION_SUBMINOR) \
 -    <  \
 -    (major)*10000 + (minor)*100 + (subminor))
  
 -#define DEAL_II_PETSC_VERSION_GTE(major,minor,subminor) \
 -  ((PETSC_VERSION_MAJOR * 10000 + \
 -    PETSC_VERSION_MINOR * 100 + \
 -    PETSC_VERSION_SUBMINOR) \
 -    >=  \
 -    (major)*10000 + (minor)*100 + (subminor))
  
  #include <deal.II/base/numbers.h>
  #include <deal.II/base/types.h>
Simple merge

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.