mirror of
https://github.com/OPM/opm-upscaling.git
synced 2025-02-25 18:45:23 -06:00
Remove opm-core specific customizations
This commit is contained in:
parent
2b1c1c70b9
commit
9b8fe95846
@ -12,13 +12,7 @@ set (doxy_dir "Documentation")
|
||||
|
||||
# defines that must be present in config.h for our headers
|
||||
set (${project}_CONFIG_VAR
|
||||
HAVE_AGMG
|
||||
HAVE_DUNE_ISTL
|
||||
HAVE_DYNAMIC_BOOST_TEST
|
||||
HAVE_ERT
|
||||
HAVE_SUITESPARSE_UMFPACK_H
|
||||
HAVE_NULLPTR
|
||||
HAVE_STATIC_ASSERT
|
||||
)
|
||||
|
||||
# dependencies
|
||||
@ -33,14 +27,8 @@ set (${project}_DEPS
|
||||
# matrix library
|
||||
"BLAS REQUIRED"
|
||||
"LAPACK REQUIRED"
|
||||
# Tim Davis' SuiteSparse archive
|
||||
"SuiteSparse COMPONENTS umfpack"
|
||||
# solver
|
||||
"SUPERLU"
|
||||
# xml processing (for config parsing)
|
||||
"TinyXML"
|
||||
# Ensembles-based Reservoir Tools (ERT)
|
||||
"ERT"
|
||||
# DUNE dependency
|
||||
"dune-istl"
|
||||
)
|
||||
@ -125,72 +113,6 @@ opm_find_tutorials ()
|
||||
# example programs are found in the examples/ directory
|
||||
opm_find_examples ()
|
||||
|
||||
### --- begin AGMG specific --- ###
|
||||
# Algebraic Multigrid must be compiled together with our program;
|
||||
# if it is not available, then remove our corresponding component
|
||||
find_package (AGMG)
|
||||
if (AGMG_FOUND)
|
||||
list (APPEND ${project}_SOURCES ${AGMG_SOURCES})
|
||||
endif (AGMG_FOUND)
|
||||
### --- end AGMG specific --- ###
|
||||
|
||||
### --- begin opm-core specific --- ###
|
||||
# these solvers are only compiled in if their dependency is found
|
||||
if (NOT AGMG_FOUND)
|
||||
list (REMOVE_ITEM opm-core_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/linalg/LinearSolverAGMG.cpp
|
||||
)
|
||||
endif (NOT AGMG_FOUND)
|
||||
if (NOT dune-istl_FOUND)
|
||||
list (REMOVE_ITEM opm-core_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/linalg/LinearSolverIstl.cpp
|
||||
)
|
||||
endif (NOT dune-istl_FOUND)
|
||||
if (NOT SuiteSparse_FOUND)
|
||||
list (REMOVE_ITEM opm-core_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/linalg/call_umfpack.c
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/linalg/LinearSolverUmfpack.cpp
|
||||
)
|
||||
list (REMOVE_ITEM tutorial_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${tutorial_DIR}/tutorial2.cpp
|
||||
${PROJECT_SOURCE_DIR}/${tutorial_DIR}/tutorial3.cpp
|
||||
${PROJECT_SOURCE_DIR}/${tutorial_DIR}/tutorial4.cpp
|
||||
)
|
||||
list (REMOVE_ITEM examples_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${examples_DIR}/spu_2p.cpp
|
||||
)
|
||||
endif (NOT SuiteSparse_FOUND)
|
||||
|
||||
# these files are provided in source control, but can only compile with Matlab
|
||||
# available; we are not supposed to include the TinyXML test prog. regardless
|
||||
list (REMOVE_ITEM opm-core_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/grid/cpgpreprocess/mxgrdecl.c
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/grid/cpgpreprocess/processgrid.c
|
||||
${PROJECT_SOURCE_DIR}/${opm-core_DIR}/core/utility/parameters/tinyxml/xmltest.cpp
|
||||
)
|
||||
|
||||
# remove inline TinyXML if a system version was found
|
||||
if (TinyXML_FOUND)
|
||||
file (GLOB_RECURSE _inline_tinyxml "${opm-core_DIR}/core/utility/parameters/tinyxml/*")
|
||||
foreach (_file IN LISTS _inline_tinyxml)
|
||||
list (REMOVE_ITEM opm-core_SOURCES ${_file})
|
||||
endforeach (_file)
|
||||
endif (TinyXML_FOUND)
|
||||
|
||||
# anyhow remove it from the header list (so it doesn't get installed)
|
||||
list (REMOVE_ITEM opm-core_HEADERS "${opm-core_DIR}/core/utility/parameters/tinyxml/tinystr.h")
|
||||
list (REMOVE_ITEM opm-core_HEADERS "${opm-core_DIR}/core/utility/parameters/tinyxml/tinyxml.h")
|
||||
|
||||
# HAVE_ERT is used as an #ifdef, not as an #if in the source code, if it
|
||||
# is not true, then it should be unset altogether
|
||||
if (NOT HAVE_ERT)
|
||||
set (HAVE_ERT)
|
||||
list (REMOVE_ITEM examples_SOURCES
|
||||
${PROJECT_SOURCE_DIR}/examples/import_rewrite.cpp
|
||||
)
|
||||
endif (NOT HAVE_ERT)
|
||||
### --- end opm-core specific --- ###
|
||||
|
||||
# create configuration header which describes available features
|
||||
# necessary to compile this library. singular version is the names that
|
||||
# is required by this project alone, plural version transitively
|
||||
@ -234,20 +156,6 @@ opm_compile_satellites (${project} examples "" "")
|
||||
enable_testing ()
|
||||
include (CTest)
|
||||
|
||||
### --- begin opm-core specific --- ###
|
||||
# conditionally disable tests when features aren't available
|
||||
macro (cond_disable_test name)
|
||||
if ((NOT DEFINED HAVE_${name}) OR (NOT HAVE_${name}))
|
||||
message (STATUS "${name} test disabled, since ${name} is not found.")
|
||||
string (TOLOWER "${name}" name_lower)
|
||||
get_filename_component (test_${name}_FILE "tests/test_${name_lower}.cpp" ABSOLUTE)
|
||||
list (REMOVE_ITEM tests_SOURCES "${test_${name}_FILE}")
|
||||
endif ((NOT DEFINED HAVE_${name}) OR (NOT HAVE_${name}))
|
||||
endmacro (cond_disable_test name)
|
||||
cond_disable_test ("AGMG")
|
||||
cond_disable_test ("ERT")
|
||||
### --- end opm-core specific --- ###
|
||||
|
||||
# make datafiles necessary for tests available in output directory
|
||||
opm_data (tests datafiles "${tests_DIR}" "*.xml")
|
||||
opm_compile_satellites (${project} tests "" "${tests_REGEXP}")
|
||||
|
10
configure
vendored
10
configure
vendored
@ -31,16 +31,6 @@ Optional Packages:
|
||||
--with-boost=PATH use Boost library from a specified location
|
||||
--with-dune-MODULE=PATH use given DUNE module from a specified location
|
||||
--with-opm-MODULE=PATH use given OPM module from a specified location
|
||||
--with-superlu=PATH user defined path to SuperLU library
|
||||
--with-agmg=PATH Include DOUBLE PRECISION version Notay's of AGMG
|
||||
Algebraic Multigrid solver from specified source
|
||||
location. Note: this option requires a complete,
|
||||
working Fortran 90 environment.
|
||||
--with-umfpack=PATH use UMFPACK/SuiteSparse from a specified location
|
||||
--with-ert=PATH Use ERT libraries
|
||||
--with-tinyxml=PATH use TinyXML library from a specified location
|
||||
(Note: if not found, then a bundled library will
|
||||
be used)
|
||||
--with-cmake=PROGRAM use this program instead of \`cmake' to configure
|
||||
|
||||
Some influential environment variables:
|
||||
|
Loading…
Reference in New Issue
Block a user