Disabled by default, this statement attempted to pass a std::istream to
function std::fclose() which is meaningless and should not be enabled at
any time--even for a MATLAB-related build.
Specifically, commit ff4f709e made the support for transitively
conveying interlibrary dependencies onto clients of OPM-Core more
robust. As a consequence, we no longer need to explicitly link in the
Boost.System or Boost.Filesystem libraries to use the software contained
therein.
Specifically, use the OPM_BOOST_LIBDIR variable created in commit
5c97e512 and Libtool's "-R" link-time switch to encode the library
location within OPM-Core's run-path. This simplifies using the library,
because the onus of satisfying the library's link-time requirements is
removed from the client.
A second refinement puts the additional link-requirements (i.e., "-l"
and "-L" options) within the *_LIBADD primary. This moves the libraries
from the middle to the end of the link statement.
middle.
This enables explicitly encoding the directory, e.g., in the OPM-Core
run-path. This, in turn, reduces the burden on library clients that
would otherwise have to satisfy library link requirements in addition to
any other link requirements they might have.
This change implements the approach of (e.g.,) ax_boost_system.m4, but
may lose some of the initial refinements. In that case, we will have to
refine this code.
The constant 6 is the number of array dimensions needed to successfully
allocate a grid. While unlikely, this number may change in the future
and it is better to have a manifest constant (in this case, GRID_NMETA)
than a hard-coded number.
There is little to no error checking, and the importer assumes that the
grid is serialised more or less directly from the grid structure.
Intended use: Testing on non-uniform grids created in MRST.
Changing transport source convention
Tested locally. No regressions. Merged.
Long-term, we may need to do away with scalar source terms though--at least for black-oil type problems.
Commit 642eaf6 introduced the correct documentation, but mixed the order
of the 'zcorn' and 'actnum' documentation. This commit corrects that
oversight.
In DUNE 2.2 FieldVector::size changed from being a member to being a
method. A compatibility warning is issued if you include the relevant
headers.
This warning can be silenced for DUNE modules by using passing the
option --enable-fieldvector-size-is-method to ./configure. This patch
effectively does the same, but through a macro definition.
The LT_INIT macro is wrapped in an m4_ifdef to handle older versions of
libtool. However, the text scanning done by libtoolize cause a warning
if this statement does not match a particular search expression.
Writing the clause in this form makes the (false) warning go away.
A boilerplate .pc file is provided in the lib/pkgconfig directory. Using
this location has the advantage of being in the same path relative to
the libraries as it will be in the installation. The drawback is that the
lib/ directory no longer contains just output unless one uses out-of-tree
builds.
In the root directory of the project a local .pc file is provided which
instead of the usual end-installation directory rather points to the
build and source directories. By adding the build directory to the
PKG_CONFIG_PATH environment variable, a local build can be referred to
from other projects (such as examples or specific test-cases).
Having two different files is unfortunately necessary since pkgconfig
does not support prefix rewriting on Linux, and having them in two
different directories is necessary since the AutoMake-generated files
is not capable of renaming a file, only relocating it.
By having an M4 line comment ("dnl") at the end of the line after the
comma, it seems that the indentation is included in the string on the
next line (it does not start at the escaping bracket).
This whitespace should be removed so the PACKAGE define can be used in
for instance filenames.