-
Christoph Grüninger authored
Should even work when they stick to version 3.0, but not vice versa.
Christoph Grüninger authoredShould even work when they stick to version 3.0, but not vice versa.
CMakeLists.txt 1.12 KiB
# set up project
project("dumux" C CXX)
# general stuff
cmake_minimum_required(VERSION 2.8.12)
if(NOT (dune-common_DIR
OR dune-common_ROOT
OR "${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*"))
string(REPLACE ${CMAKE_PROJECT_NAME}
dune-common dune-common_DIR
${PROJECT_BINARY_DIR})
endif()
#find dune-common and set the module path
find_package(dune-common)
list(APPEND CMAKE_MODULE_PATH ${dune-common_MODULE_PATH}
"${PROJECT_SOURCE_DIR}/cmake/modules")
#include the dune macros
include(DuneMacros)
# start a dune project with information from dune.module
dune_project()
dune_enable_all_packages()
# enforce C++-14
dune_require_cxx_standard(MODULE "DuMuX" VERSION 14)
add_subdirectory(cmake/modules)
add_subdirectory(doc)
add_subdirectory(dumux)
add_subdirectory(test EXCLUDE_FROM_ALL)
add_subdirectory(tutorial EXCLUDE_FROM_ALL)
if(DUNE_COMMON_VERSION VERSION_LESS 2.5)
# de-activate testing the DUNE way
# now ctest (aka make test) does not build the tests
set(DUNE_TEST_MAGIC OFF)
endif()
# finalize the dune project, e.g. generating config.h etc.
finalize_dune_project(GENERATE_CONFIG_H_CMAKE)