Commit Graph

240 Commits

Author SHA1 Message Date
Arne Morten Kvarving
d0fa9ce9dc changed: remove hack for dunecontrol+autotools compatibility
all supported dune versions have cmake builds which should be used
2018-01-22 11:06:36 +01:00
Arne Morten Kvarving
4340691ff8 added: handle QuadMath support like MPI 2018-01-17 15:57:48 +01:00
Arne Morten Kvarving
de7f4e168d fixed: we need to do mpi disabling earlier
if not, prereqs do not see this file, and the option ends
up not being operational for prereqs looking for MPI.
2018-01-17 15:57:16 +01:00
Arne Morten Kvarving
8fc5283b05 Merge pull request #306 from blattms/fix-pr-304
Include <module>-prereqs.cmake in <module>-config.cmake to process all dependencies
2017-12-21 14:00:32 +01:00
Markus Blatt
4c0625aa8b Include <module>-prereqs.cmake in <module>-config.cmake for transitive search
Otherwise implicit dependencies are never search for. That was the case
for dune-geometry and dune-grid when configuring opm-core as these are only
transitively required via opm-grid.

With this commit we include <module>-prereqs.cmake in <module>-config.cmake
and thus trigger searches for all modules that this module depends on.

We also install the file now <module>-prereqs.cmake as we need it for
installed modules, too.
2017-12-21 12:52:33 +00:00
Arne Morten Kvarving
3a60e567bb fixed: this test code slipped through in 9737538708
sorry about that
2017-12-21 13:05:00 +01:00
Arne Morten Kvarving
9737538708 changed: get rid of find modules for opm modules
use pure config mode.

we no longer compile a test application for the libraries,
however checks have been tightened by making sure version of
all opm modules are the same.

this allows for putting prereqs directly in the module repositories
2017-12-20 11:12:01 +01:00
Atgeirr Flø Rasmussen
a346cf5e16 Merge pull request #285 from akva2/add_ndebug_option
added: option to not define NDEBUG for release builds
2017-11-28 07:30:42 +01:00
Arne Morten Kvarving
af503d2c48 fixed: do not use ParameterGroup code in opm-core test program
it now sits in opm-common. yields confusing output as test
program compilation will succeed even if opm-common but not opm-core
is available
2017-11-24 12:44:03 +01:00
Arne Morten Kvarving
439aae72d2 added: option to not define NDEBUG for release builds 2017-11-13 12:16:23 +01:00
Markus Blatt
4a46e4a4cd Only set the library directories if module builds a library. 2017-11-08 14:58:38 +01:00
Arne Morten Kvarving
d0c1eb28e3 Merge pull request #281 from andlaus/opm-simulators_no_umfpack_required
don't mark UMFpack as required for opm-simulators
2017-10-30 11:05:32 +01:00
Atgeirr Flø Rasmussen
1709398e25 Remove RT lib dependency. 2017-10-27 10:09:25 +02:00
Atgeirr Flø Rasmussen
de70cdcb52 Library not needed nor found on macOS. 2017-10-26 11:08:10 +02:00
Atgeirr Flø Rasmussen
5519643aa4 Always set include-related CMake variables. 2017-10-26 10:51:18 +02:00
Andreas Lauser
fe7938d82a don't mark UMFpack as required for opm-simulators
before OPM/opm-simulators#1309 it was required, but this was not
enforced by the build system because the SuiteSparse tests are run by
the opm-core build system first and UMFpack is optional there.

thanks to [at]akva2 and [at]blattms for the heads-up.
2017-10-25 16:48:33 +02:00
Markus Blatt
8e58ea8567 Print package version and origin only for found modules. 2017-10-20 12:37:34 +02:00
Markus Blatt
c030dd865c Use module_DIR as the location in found status message. 2017-10-20 12:36:51 +02:00
Markus Blatt
63dd29ceb0 Use the module version that CMake exports directly.
Since all supported DUNE versions have a CMake based build system,
when can drop the magic and use the module version exported by CMake
directly.

The magic used previously was broken when setting CMAKE_INSTALL_LIBDIR to
an absolute path.
2017-10-20 12:31:17 +02:00
Arne Morten Kvarving
f8cac9cf3f remove stale file 2017-10-19 13:46:01 +02:00
Kai Bao
e7b1172528 adding UMFpack to prerequisite of opm-simulators 2017-10-16 21:17:28 +02:00
Arne Morten Kvarving
e1f7da13d2 Merge pull request #273 from blattms/cmakify-sibling-search
Simplify dune/opm module search by relying on cmake package config files
2017-10-16 20:02:27 +02:00
Markus Blatt
5662f2a188 Allow second search for opm-common to get all its dependencies and defines.
As opm-common is search in the toplevel CMakeLists.txt of each module in
config mode and the dependencies and defines are only processed in
opm_find_package(opm-common), we allow a second search using module mode
to trigger opm_find_package.
2017-10-13 21:20:30 +02:00
Markus Blatt
db0a52ffdb Force module mode in search for dune and opm even if *_DIR is set.
Otherwise some defines and macros will not be set as this is done
in opm_find_package. This might also make sense for dunecontrol
which always will set *_DIR.
2017-10-13 21:19:11 +02:00
Markus Blatt
c7fc21e343 Stop setting COMPARE_(SUMMARY|ECL)_COMAND in Findopm-output.cmake.
Theses variables are already set in opm-output-config.cmake. Unfortunately,
theres is still a bug there which will be fixed by a PR in opm-output. After
that everything should work and have less guess work in it.
2017-10-11 14:37:21 +02:00
Markus Blatt
7a891baef7 Use correct default clone directory in sibling search for ecl.
Previously we assumed it to be ecl (like the project name).
That is not correct. With this commit we now use the correct
default clone directory, libecl, in the sibling search.
2017-10-10 12:44:22 +02:00
Markus Blatt
fc4bac6b7a Suppress message "finding .. using module mode" for OPM modules. 2017-10-10 12:42:49 +02:00
Markus Blatt
7c779697c7 Deactivate package cache and activate sibling search for ecl.
Even though people are telling that ecl is already found using
sibling search it turned out that this statement is false. It
was always found using the CMake package cache. When installing
this lead to the installed package using ecl from the build tree.
With this commit we first try to find ecl without the package cache
but maybe using sibling search. Building installed packages no works
by setting -DSIBLING_SEARCH=Off -DCMAKE_INSTALL_PREFIX=/install/path
2017-10-06 22:36:40 +02:00
Arne Morten Kvarving
e6e5491c74 add HAVE_SUITESPARSE_UMFPACK to opm-simulators config.h 2017-09-29 23:19:48 +02:00
Arne Morten Kvarving
48472bcf1a typo: SUITEPARSE -> SUITESPARSE 2017-09-29 21:13:10 +02:00
Arne Morten Kvarving
fd411cb1b7 Merge pull request #259 from blattms/fix-check-for-opm-grid-with-dune-2.5
Fix check for opm grid with dune 2.5
2017-09-29 20:21:40 +02:00
Markus Blatt
38e198d961 Always append CONFIG_VARS to ${module}_CONFIG_VARS.
It seems like this variable was not empty for e.g. dune-grid
and therefore we did not add some necessary defines before this
commit.
2017-09-29 11:02:14 +02:00
Arne Morten Kvarving
3283278090 Merge pull request #265 from akva2/add_another_alias
add another alias for UMFPACK
2017-09-27 08:44:06 +02:00
Markus Blatt
f5bf291f7d Simplify dune/opm module search by relying on cmake package configuration files.
We use ${module}_DIR to set the correct path when sibling search is activated.
The package configuration files set all the necessary variable and we save
us a lot of CMake magic.
2017-09-26 16:49:18 +02:00
Arne Morten Kvarving
9646753a10 changed: update opm-flowdiagnostics-applications prereqs
it is now ecl, not ERT
2017-09-26 13:48:03 +02:00
Arne Morten Kvarving
0ea57b9054 Merge pull request #268 from andlaus/compile-ONLY_COMPILE
also compile tests marked `ONLY_COMPILE` on `make test-suite`
2017-09-22 11:46:16 +02:00
Arne Morten Kvarving
8c9776688d add option to enable PETSc
disabled by default
2017-09-10 06:18:48 +02:00
Andreas Lauser
4b60de7248 also compile tests marked ONLY_COMPILE on make test-suite 2017-09-03 17:44:22 +02:00
Arne Morten Kvarving
e3ff47dd9f changed: add option to disable superlu
make this default to off.

additionally, check that the found superlu version
is compatible with the dune-istl version in use.
in particular superlu5 is not compatible with dune-istl 2.4
2017-08-21 16:49:47 +02:00
Arne Morten Kvarving
0a9bae6587 add another alias for UMFPACK
used by dune 2.5
2017-08-16 12:25:20 +02:00
Markus Blatt
f8841cea15 Search for same header as used in compile test of Findopm-grid.cmake 2017-06-21 13:23:05 +00:00
Markus Blatt
3dd214ba34 Include geometry version in config.h.
This is needed with DUNE 2.5 as otherwise the includes of
geometry headers are for older DUNE versions.
2017-06-21 13:15:12 +00:00
Markus Blatt
ef5f730786 Make check for opm-grid work with DUNE 2.5.
Previously, we checked for header CpGrid.hpp which finally
tried to include the non-existent generic geometry headers
as the checks for dune-geometry versions do not work during
 a CMake run.
With this patch we search for the header GlobalIdMapper.hpp which
does not use any version checks and therefore works for every DUNE
version.
2017-06-21 13:15:12 +00:00
Jørgen Kvalsvik
62c2b15c29 Don't exit early when checking dynamic boost 2017-06-15 14:39:27 +02:00
Jørgen Kvalsvik
5df5c59c27 Add find_package(Boost) in Findopm-parser 2017-06-15 10:04:35 +02:00
Markus Blatt
5c731bf2ce Stop marking non-stored variables as advanced. 2017-06-13 11:09:11 +02:00
Markus Blatt
bea6eb9240 Removed dead code. 2017-06-13 10:21:54 +02:00
Markus Blatt
5500dcfe8b Pass sibling dirs HINTS to find_package calls for opm-parser.
These take precendence over the package registry where we have no control
on which entry will be used. The registry is only the last resort.

On some Linux version the most recently created package registry key will
be used. Please not that an entry is only created for a build try that is
not already in the registry. If there is already key, then not even the
modification date of the key will be updated. This default behaviour might
lead to strange mixes of build configurations.
2017-06-12 21:13:58 +02:00
Arne Morten Kvarving
cdbcb74e5e add static analysis support to buildsystem 2017-06-02 10:38:54 +02:00
Jørgen Kvalsvik
fbec9b1e0d Findopm-parser tries CONFIG mode first
CONFIG mode is usually a fallback when Find* modules are not found, but
opm-parser is now mainly meant to be used with config mode, so it's the
first thing being tried. If that fails, continue with the old logic.

Some legacy requires HAVE_ERT being set somewhere, so this logic is
injected here.
2017-05-31 21:51:35 +02:00