Commit 70505ff raised opm-core's "Boost" requirement to version 1.44
in order to reflect the requirements of the opm-parser module. This
commit propagates that requirement to all other known modules.
The benchmark library uses Boost::iostreams to do decompression. Since
we only scan for the Boost dependency once, this submodule is added to
all of the projects in order to have a coherent dependency on Boost.
Currently opm-parser does not create opm-parser-config.cmake files. Therefore
building with duncontrol fails as it sets opm-parser_DIR. With this patch
we force CMake to always use module mode for finding which fixes this.
Instead of guessing the suffix or subdir of the build directory,
we now simply compare PROJECT_{BINARY,SOURCE]_DIR to detect it.
By this e.g. opm-core/opm-parallel is a possible build directory, too.
At least on Debian requiring version 3.1 of Eigen3 is not sufficient
according to issue #25 the minimum version is 3.1.2. This patch fixes
the required version. In addition it skips the REQUIRED option passed
to find_package(Eigen3) to make the git download work.
Fixes#25.
Headers from other libraries (notably DUNE) require definitions of
other variables than our probe process set (e.g. HAVE_UMFPACK instead
of HAVE_SUITESPARSE_UMFPACK_H). This module sets those aliases for
compatibility.
this prevents to check for the same module more than once in the same
cmake run and should thus speed things up a bit as well as make the
output a bit cleaner. For this I assumed that the ${name}_FOUND cmake
variable does not get cached, which it seems like it does not...
Notation implies that we are going to be given symbols which
represents values or such (which arguably could be true since the
path is a particular value, and from programming we are used to
multi-letter symbols perhaps also with whitespace, but it's a
stretch), but Terminology is more accurate, as this section
describes fits the definition better: it is a vocabulary of
technical terms.
Hat tip: @bska
Give a brief description of each of the modules that comprises the build
system, and the suffices that is used to form a virtual structure of
variables for each project.
This code is run unconditionally each time we do a reconfigure; if the
option is added at each time, they will accumulate (needlessly) on the
command-line, making it harder to inspect the log.
If the module root is not explicitly specified, the loading of its
configuration is delegated to a find module, which does a heuristic
search in known/surrounding directories. Most OPM modules use the
common logic in OpmPackage; this patch configures the search
specifically for opm-autodiff.
if done the other way round we would make an assertation in TimeMap
false and also the values returned by SimulationTimer would be for the
next time step and not the current one...
Since the SimulationTimer, EclipseWriter and WellsManager stuff has
not (yet?) been merged, the old parser is required to be around. Use
my parser-integrate-hacks_for_norne branches to test your stuff on the
Norne deck...
this required to abandon the "Epoch" stuff which the new parser does
not have (as well as the ECLIPSE file format knows nothing about
epochs). Handling well controls properly thus has to wait until Joakim
and Kristian finish refurbishing the WellsManager, so as a stop-gap
measure, only the first "epoch" is run.