From fd2410d37805f6809900d5ba121bcf037f6d1aaa Mon Sep 17 00:00:00 2001 From: maier Date: Wed, 27 Feb 2013 18:43:31 +0000 Subject: [PATCH] Add a Config.sample file git-svn-id: https://svn.dealii.org/branches/branch_cmake@28622 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/doc/development/Config.sample | 393 ++++++++++++++++++++++++++ deal.II/doc/development/cmake.html | 14 + deal.II/doc/readme.html | 4 + 3 files changed, 411 insertions(+) create mode 100644 deal.II/doc/development/Config.sample diff --git a/deal.II/doc/development/Config.sample b/deal.II/doc/development/Config.sample new file mode 100644 index 0000000000..4df18e8ea3 --- /dev/null +++ b/deal.II/doc/development/Config.sample @@ -0,0 +1,393 @@ +## ## +# Example configuration file # +# # +# See doc/readme.html and doc/development/cmake.html for further # +# details on how to use the cmake build system of deal.II. # +## ## + + +########################################################################### +# # +# General Configuration: # +# # +########################################################################### + +# +# Component configuration: +# + +SET(DEAL_II_COMPONENT_COMPAT_FILES ON CACHE BOOL + "Enable installation of the example steps. This adds a COMPONENT \"compat_files\" to the build system." + ) + +SET(DEAL_II_COMPONENT_CONTRIB OFF CACHE BOOL + "Enable installation of contrib packages. This adds a COMPONENT \"contrib\" to the build system." + ) + +SET(DEAL_II_COMPONENT_DOCUMENTATION OFF CACHE BOOL + "Enable configuration, build and installation of the documentation. This adds a COMPONENT \"documentation\" to the build system." + ) + +SET(DEAL_II_COMPONENT_EXAMPLES ON CACHE BOOL + "Enable configuration and installation of the example steps. This adds a COMPONENT \"examples\" to the build system." + ) + +# +# General Feature configuration: +# + +SET(DEAL_II_ALLOW_BUNDLED ON CACHE BOOL + "Allow the use of libraries bundled with the source tarball. (DEAL_II_FORCE_BUNDLED* will overwrite this option.)" + ) + +SET(DEAL_II_ALLOW_AUTODETECTION ON CACHE BOOL + "Allow to automatically setup features by setting all undefined DEAL_II_WITH_* variables to ON or OFF" + ) + +SET(DEAL_II_FORCE_AUTODETECTION OFF CACHE BOOL + "Force feature autodetection by undefining all DEAL_II_WITH_* variables prior to configure" + ) + +SET(DEAL_II_FORCE_BUNDLED_BOOST OFF CACHE BOOL + "Always use the bundled boost library instead of an external one." + ) + +SET(DEAL_II_FORCE_BUNDLED_FUNCTIONPARSER OFF CACHE BOOL + "Always use the bundled functionparser library instead of an external one." + ) + +SET(DEAL_II_FORCE_BUNDLED_THREADS OFF CACHE BOOL + "Always use the bundled tbb library instead of an external one." + ) + +SET(DEAL_II_FORCE_BUNDLED_UMFPACK OFF CACHE BOOL + "Always use the bundled umfpack library instead of an external one." + ) + +# +# Build configuration: +# + +SET(CMAKE_BUILD_TYPE "DebugRelease" CACHE STRING + "Choose the type of build, options are: Debug, Release and DebugRelease." + ) + +SET(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH + "Install path prefix, prepended onto install directories." + ) + +SET(DEAL_II_ALLOW_PLATFORM_INTROSPECTION ON CACHE BOOL + "Allow platform introspection for CPU command set, SSE and AVX" + ) + +SET(DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS ON CACHE BOOL + "Configure sensible default CFLAGS and CXXFLAGS depending on platform, compiler and build target." + ) + +SET(CMAKE_CXX_FLAGS "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated CMAKE_CXX_FLAGS variable" + ) + +SET(DEAL_II_CXX_FLAGS_DEBUG "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated DEAL_II_CXX_FLAGS_DEBUG variable" + ) + +SET(DEAL_II_CXX_FLAGS_RELEASE "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated DEAL_II_CXX_FLAGS_RELEASE variable" + ) + +SET(CMAKE_SHARED_LINKER_FLAGS "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated CMAKE_SHARED_LINKER_FLAGS variable" + ) + +SET(DEAL_II_SHARED_LINKER_FLAGS_DEBUG "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated DEAL_II_SHARED_LINKER_FLAGS_DEBUG variable" + ) + +SET(DEAL_II_SHARED_LINKER_FLAGS_RELEASE "" CACHE STRING + "The user supplied cache variable will be appended _at the end_ of the auto generated DEAL_II_SHARED_LINKER_FLAGS_RELEASE variable" + ) + +SET(BUILD_SHARED_LIBS "ON" CACHE BOOL + "Build a shared library" + ) + +SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE BOOL + "Set the rpath of the library to the external link pathes on installation" + ) + + +########################################################################### +# # +# Advanced Configuration: # +# # +########################################################################### + +# +# C++11 support: +# +# C++11 support is autodetected. You can explicitly disable C+11 support by +# specifying +# +# SET(DEAL_II_HAVE_CXX11_FLAG FALSE CACHE BOOL "") +# +# A custom C++11 flag can be set by setting +# +# SET(DEAL_II_HAVE_CXX11_FLAG TRUE CACHE BOOL "") +# SET(DEAL_II_CXX11_FLAG "-std=c++0x" CACHE STRING "") +# + + +# +# Platform introspection: +# +# deal.II has some platform dependend tests and configuration options. +# They can be enabled/disabled with DEAL_II_ALLOW_PLATFORM_INTROSPECTION +# +# To enable support for AVX and SSE manually, set: +# +# SET(DEAL_II_HAVE_SSE TRUE CACHE BOOL "") +# SET(DEAL_II_HAVE_AVX TRUE CACHE BOOL "") +# + + +# +# Threading support: +# +# SET(DEAL_II_WITH_THREADS ON CACHE BOOL "") +# +# TODO +# + + +# +# MPI: +# +# SET(DEAL_II_WITH_MPI ON CACHE BOOL "") +# +# SET(DEAL_II_USE_MPICXX ON CACHE BOOL +# "Set the compiler to the detected mpi wrapper" +# ) +# +# TODO +# + + +# +# Arpack: +# +# SET(DEAL_II_WITH_ARPACK ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(ARPACK_DIR "/.../..." CACHE PATH "") +# +# Manual setup: +# +# SET(ARPACK_FOUND TRUE CACHE BOOL "") +# SET(ARPACK_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(ARPACK_LINKER_FLAGS "..." CACHE STRING "") +# + + +# +# HDF5: +# +# SET(DEAL_II_WITH_HDF5 ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(HDF5_DIR "/.../..." CACHE PATH "") +# +# Manual setup: +# +# SET(HDF5_FOUND TRUE CACHE BOOL "") +# SET(HDF5_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(HDF5_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# + + +# +# Lapack: +# +# SET(DEAL_II_WITH_LAPACK ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH. +# +# Manual setup: +# +# SET(LAPACK_FOUND TRUE CACHE BOOL "") +# SET(LAPACK_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(LAPACK_LINKER_FLAGS "..." CACHE STRING "") +# + + +# +# Metis: +# +# SET(DEAL_II_WITH_METIS ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(METIS_DIR "/.../..." CACHE PATH "") +# +# Manual setup: +# +# SET(METIS_FOUND TRUE CACHE BOOL "") +# SET(METIS_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(METIS_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# + + +# +# Mumps: +# +# SET(DEAL_II_WITH_MUMPS ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(MUMPS_DIR "/.../..." CACHE PATH "") +# also, if necessary, SCALAPACK_DIR and BLACS_DIR +# +# Manual setup: +# +# SET(METIS_FOUND TRUE CACHE BOOL "") +# SET(METIS_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(METIS_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(METIS_LINKER_FLAGS "..." CACHE STRING "") +# + + +# +# Netcdf: +# +# SET(DEAL_II_WITH_NETCDF ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(NETCDF_DIR "/.../..." CACHE PATH "") +# +# Manual setup: +# +# SET(NETCDF_FOUND TRUE CACHE BOOL "") +# SET(NETCDF_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(NETCDF_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# + + +# +# P4EST: +# +# SET(DEAL_II_WITH_P4EST ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(P4EST_DIR "/.../..." CACHE PATH "") +# also, if necessary, SC_DIR +# +# Manual setup: +# +# SET(P4EST_FOUND TRUE CACHE BOOL "") +# SET(P4EST_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(P4EST_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(P4EST_WITH_MPI TRUE CACHE BOOL "") +# + + +# +# PETSc: +# +# SET(DEAL_II_WITH_PETSC ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(PETSC_DIR "/.../..." CACHE PATH "") +# SET(PETSC_ARCH "..." CACHE STRING "") +# +# Manual setup: +# +# SET(PETSC_FOUND TRUE CACHE BOOL "") +# SET(PETSC_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(PETSC_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(PETSC_VERSION "x.y.z." CACHE STRING "") +# SET(PETSC_VERSION_MAJOR "x" CACHE STRING "") +# SET(PETSC_VERSION_MINOR "y" CACHE STRING "") +# SET(PETSC_VERSION_SUBMINOR "z" CACHE STRING "") +# SET(PETSC_WITH_MPI_UNI FALSE CACHE BOOL "") +# + + +# +# SLEPc: +# +# SET(DEAL_II_WITH_SLEPC ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(SLEPC_DIR "/.../..." CACHE PATH "") +# SET(SLEPC_ARCH "..." CACHE STRING "") +# +# Manual setup: +# +# SET(SLEPC_FOUND TRUE CACHE BOOL "") +# SET(SLEPC_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(SLEPC_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(SLEPC_VERSION "x.y.z." CACHE STRING "") +# SET(SLEPC_VERSION_MAJOR "x" CACHE STRING "") +# SET(SLEPC_VERSION_MINOR "y" CACHE STRING "") +# SET(SLEPC_VERSION_SUBMINOR "z" CACHE STRING "") +# SET(SLEPC_WITH_MPI_UNI FALSE CACHE BOOL "") +# + + +# +# Trilinos: +# +# SET(DEAL_II_WITH_TRILINOS ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(TRILINOS_DIR "/.../..." CACHE PATH "") +# +# Manual setup: +# +# SET(TRILINOS_FOUND TRUE CACHE BOOL "") +# SET(TRILINOS_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(TRILINOS_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(TRILINOS_VERSION_MAJOR "x" CACHE STRING "") +# SET(TRILINOS_VERSION_MINOR "y" CACHE STRING "") +# SET(TRILINOS_VERSION_SUBMINOR "z" CACHE STRING "") +# SET(TRILINOS_WITH_MPI TRUE CACHE BOOL "") +# + + +# +# UMFPACK: +# +# SET(DEAL_II_WITH_UMFPACK ON CACHE BOOL "") +# +# Automatic detection: +# +# Specify a hint with CMAKE_PREFIX_PATH or by setting +# SET(UMFPACK_DIR "/.../..." CACHE PATH "") +# also, if necessary, SUITESPARSE_DIR (AMD_DIR, CHOLMOD_DIR, COLAMD_DIR, SUITESPARSECONFIG_DIR) +# +# Manual setup: +# +# SET(UMFPACK_FOUND TRUE CACHE BOOL "") +# SET(UMFPACK_LIBRARIES "library;and;semicolon;separated;list;of;link;interface" CACHE STRING "") +# SET(UMFPACK_INCLUDE_DIRS "semicolon;separated;list;of;include;dirs" CACHE STRING "") +# SET(UMFPACK_LINKER_FLAGS "..." CACHE STRING "") +# + diff --git a/deal.II/doc/development/cmake.html b/deal.II/doc/development/cmake.html index 89917ad974..4c30be6b00 100644 --- a/deal.II/doc/development/cmake.html +++ b/deal.II/doc/development/cmake.html @@ -53,6 +53,7 @@
  • Writing platform checks
  • Writing feature tests +
  • Advanced setup @@ -1077,6 +1078,19 @@

    + +

    Advanced setup

    + + A sample configuration file for preloading the CMake cache with +
    +
    +    $ cmake -C Config.sample <...>
    +    
    + can be found here. + This sample configuration covers all options mentioned in this + documentation as well as some advanced aspects in feature + configuration. +
    diff --git a/deal.II/doc/readme.html b/deal.II/doc/readme.html index e27e9d1a88..4044cbec98 100644 --- a/deal.II/doc/readme.html +++ b/deal.II/doc/readme.html @@ -482,6 +482,10 @@ distributions and found automatically whenever available. (You might have to install develpment versions of the libraries for deal.II being able to use them). + For details on how to set up deal.II with a + non standard BLAS/LAPACK implementation, see the + advanced + setup section in the CMake ReadME.

    -- 2.39.5