Commit Graph

124 Commits

Author SHA1 Message Date
Markus Blatt
0455c48d2f Only search for Python libs if OPM_ENABLE_EMBEDDED_PYTHON is ON.
Apparently it is not needed in the other cases.
Fixes an issue that arose from #2344 and restores the old behaviour
concerning the libraries.
2021-03-15 10:19:10 +01:00
Markus Blatt
af3c825588 Make sure any python search finds Python3.
FindCWrap issues another find_package(PythonInterpret).
By setting the PYTHON_EXECUTABLE variable we make sure it
will find python3

This also fixes the CMake confusions about multiple linker paths

```
Make Warning at cmake/Modules/OpmSatellites.cmake:320 (add_executable):
  Cannot generate a safe linker search path for target test_ERft because
  files in some directories may conflict with libraries in implicit
  directories:

    link library [libpython3.7m.so] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
      /usr/lib/python3.7/config-3.7m-x86_64-linux-gnu

  Some of these libraries may not be found correctly.
```
2021-03-12 16:48:26 +01:00
Markus Blatt
9a25b78b98 Cater for missing FindPython3 in CMake version < 3.12.0
For these we need to use the old approach. At least we
now produce an error if only python2 is found.

Needed e.g. for Ubuntu LTS 18.04.
2021-03-12 16:47:27 +01:00
Markus Blatt
164f451124 Explictly search for python3 and use that instead PythonInterpret et al.
Otherwise python2 might be found, but OPM needs python3.
2021-03-10 15:57:01 +01:00
Joakim Hove
84d5dbde0e Make the Builtin class available from Python 2021-03-09 12:22:39 +01:00
Joakim Hove
7894de8030 Remove enforced inline schedule testing 2021-02-19 11:51:26 +01:00
Joakim Hove
c8ba2b30b3 Add runtime Schedule integration test - guarded by #ifdef 2021-01-11 09:56:47 +01:00
Torbjørn Skille
e1334adbf6 Adding new class EInit
- for parsing and loading data from INIT file
 - including functions to support parsing/logading LGR data
2020-12-01 20:14:37 +01:00
Torbjørn Skille
9fa90b2687 Update of EclIO classes.
- Enables reading of output files generated by simulator IX
 - Adding support for EclFile data type C0nn (string with length > 8 characters)
 - Update of program summary, now supporting well names with more that 8 characters
 - Updates of program convertECL, possible to write output files with IX "format"
 - updates of python bindings (EclOutput and EclFile)
2020-11-10 22:02:38 +01:00
Arne Morten Kvarving
fac6695d15 workaround cmake issue
cmake does not properly interpret the SYSTEM marker in lists of
include directories. this causes issues downstream when using
dunecontrol / the in-tree cmake config files.
2020-11-06 10:16:02 +01:00
Arne Morten Kvarving
70d13b7427 changed: mark libfmt headers as system to avoid warnings 2020-09-23 14:05:50 +02:00
Joakim Hove
4e5aed45d7 Embed fmtlib source code 2020-09-18 11:23:30 +02:00
Joakim Hove
3004e14e9a Remove use fmtlib package from build system 2020-09-18 11:19:41 +02:00
Joakim Hove
bafdbc35cc Add dependency to header only fmtlib 2020-09-17 14:57:40 +02:00
Gaute Lindkvist
f7b080b7b6 Fix remaining double use of python/python and opm/opm folders in Python package generation 2020-07-01 03:25:11 -04:00
Gaute Lindkvist
3acc26558b Use file COPY instead of configure for straight copy in CMakeLists.txt 2020-06-25 09:52:43 -04:00
Gaute Lindkvist
27fdb0654d Revert "Support building Python module statically"
This reverts commit d3b4f41acf.
2020-06-25 09:26:12 -04:00
Gaute Lindkvist
5515422d02 Add docker files and scripts for creating cross-distro PyPI packages 2020-06-18 10:32:05 -04:00
Gaute Lindkvist
cbd23e71ef Add generation of a setup-package.sh script for creating PyPI-packages 2020-06-16 13:08:33 +02:00
Gaute Lindkvist
e3bb9a3151 README.md file skeleton for Python package 2020-06-16 13:08:33 +02:00
Gaute Lindkvist
6db3ccf36f Add link flags to Python setup.py 2020-06-16 13:08:33 +02:00
Gaute Lindkvist
f67bce1dd8 Add link directories to Python setup.py 2020-06-16 12:52:34 +02:00
Gaute Lindkvist
d3b4f41acf Support building Python module statically 2020-06-10 14:30:38 +02:00
Joakim Hove
512c2e4c1e Python files should go in $PREFIX/dist-packages on debian 2020-04-29 10:03:08 +02:00
Torbjørn Skille
43f1739dfa improved efficiency when opening summary files.
> loading only arrays that is used (DIMENS, RESTART, KEYWORDS, NUMS and UNITS)
 > smspec file now only loading arrays once (twice before)
2020-04-26 18:24:01 +02:00
Arne Morten Kvarving
c22a4ff980 changed: mark pybind11 headers as system headers
to quell some (shadowing) warnings
2020-04-21 09:00:30 +02:00
Torbjørn Skille
54087e3bd8 Effective LOD for ESmry 2020-04-19 20:59:38 +02:00
Joakim Hove
92e923b567 Merge pull request #1706 from joakim-hove/test-clean-srcdir
Rework testing of Schedule exit status
2020-04-15 21:56:55 +02:00
Joakim Hove
43e2fced7d Simplified testing of exit status 2020-04-15 21:04:26 +02:00
Markus Blatt
8e3ba156a6 Merge pull request #1675 from blattms/refactor-policy-settings
Fix policy warnings
2020-04-15 21:01:35 +02:00
Markus Blatt
742d8943ca Move policy settings to OpmInit and into a macro OpmSetPolicies().
OpmInit.cmake is one of the first includes and most importantly before
the opm-*-prereqs.cmake files are include. The macro is needed to make
the policies set in all CMakefiles. OpmSetPolicies should be called in
the toplevel CMakeLists.txt file.

This fixes a lot of warnings experienced in downstream modules that
got triggered by the opm-*-prereqs.cmake files. At some calls the
policies were at other not.

On the other hand new warnings about soon to be deprecated policies
CMP0026 and CMP0048 appear at least for cmake version 3.13.4.
But that should be fixed in another PR.
2020-04-15 14:17:53 +02:00
Joakim Hove
1c84c4c3f3 Add new keyword EXIT
The keyword EXIT is a opm only keyword which can be used to terminate the whole
simulation as part of the ACTIONX keyword.
2020-04-14 16:32:52 +02:00
Joakim Hove
4b687e3368 Fix bug in CMakeLists.txt - mock simulator tests were not built 2020-03-24 07:23:31 +01:00
Arne Morten Kvarving
8233ae200c Merge pull request #1515 from akva2/python_debian_packaging
Add debian packaging of python bindings
2020-02-26 12:22:01 +01:00
Arne Morten Kvarving
6e0a581764 remove unused cmake option 2020-02-26 11:57:37 +01:00
Arne Morten Kvarving
c765b769fa fixed: set LD_LIBRARY_PATH so python tests can find the library
necessary when building shared lib
2020-02-26 11:56:02 +01:00
Bård Skaflestad
df21acfc49 Merge pull request #1492 from akva2/conditional_test_suite
changed: disable building of test suite if Boost::test is not found
2020-02-24 20:30:53 -06:00
Joakim Hove
269802ae48 Add comment about locating shared library while testing Python 2020-02-19 12:33:50 +01:00
Arne Morten Kvarving
f76daabbb4 changed: disable building of test suite if Boost::test is not found 2020-02-19 12:25:32 +01:00
Joakim Hove
6b0073455b Pass RPATH to the python setup.py based build system 2020-02-06 10:15:40 +01:00
Arne Morten Kvarving
8cf1497ccb fixed: use PROJECT_XXX instead of CMAKE_XXX
make it work fine with the 'super-build' CMakeLists.txt
2020-01-13 13:38:47 +01:00
Joakim Hove
3c6a60c4a9 Code genereator will create many source files 2020-01-02 15:27:54 +01:00
Joakim Hove
c3a038c2b6 Refactor code generation to facilitate multiple source files 2020-01-02 15:27:54 +01:00
Joakim Hove
885093d472 Use DEST_PREFIX when installing python code 2019-11-27 23:46:32 +01:00
Torbjørn Skille
59e0c39558 New program summary based on OPM I/O classes 2019-11-12 13:27:26 +01:00
Joakim Hove
d66852d8de Rewrite EclFile wrapping
- Include the eclipse_io.cpp file in existing extension library - do not create
   a new library.

 - Remove Python class EclFile - just expose the C++ through Pybind1, include
   some monkey-patching of the class to ensure proper Python strings for CHAR
   keywords.

 - Remove string based keyword lookup.

 - Use standard Python methods __len__, __getitem__ and __contains__; get() is
   an equivalent alternative to __getitem__().

 - Add property arrays in addition to getListOfArrays()
2019-11-06 09:59:07 +01:00
Torbjørn Skille
7cacc734e8 python binding for EclFile 2019-11-06 09:59:07 +01:00
Joakim Hove
0b8a42fd1f Fix cmake find pythonlibs 2019-11-06 09:59:07 +01:00
Joakim Hove
0d2f57354a Merge pull request #1184 from joakim-hove/python-dep
Add Python library to opm-common_LIBRARIES cmake variable
2019-11-04 13:16:32 +01:00
Joakim Hove
a7187abc17 Initial implementation of 3D properties 2019-10-31 11:18:55 +01:00