-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix cmake install on dev branch #3248
Conversation
Installing ESPResSo with `make install DESTDIR="/path/to/es"` will install files in the wrong folder and set an incorrect runtime path in Cython shared objects, causing import errors. See full report: espressomd#3228 (comment)
When installing ESPResSo, the C++ shared objects and Cython shared objects are stored in the same folder. Since they have the same .so extension, when importing espressomd.cluster_analysis, the file cluster_analysis.py is loaded and the file cluster_analysis.so is automatically considered a Cython shared object, and Python fails to find the Cython-specific symbol PyInit_cluster_analysis. This is remediated by giving a different name to the C++ shared object.
Install the files in a different directory and check the python and tutorials/samples tests can still run with the installed files. Please note that pypresso will experience a major slowdown in CI when located outside the build directory, hence the 3h timeout. This job is meant to be run only during releases and in PRs that add new core modules.
Takes more than 1 hour to run in CI when pypresso is located outside the build directory.
Codecov Report
@@ Coverage Diff @@
## python #3248 +/- ##
======================================
- Coverage 85% 85% -1%
======================================
Files 530 528 -2
Lines 25795 25790 -5
======================================
- Hits 22168 22146 -22
- Misses 3627 3644 +17
Continue to review full report at Codecov.
|
The installed files only exist if the Python bindings are enabled.
4d92d88
to
103a27d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
besides comment LGTM
The clang:6.0 job fails due to undefined ASAN symbols. The logic to fix that error is in the pypresso wrapper.
bors r=KaiSzuttor |
3248: Fix cmake install on dev branch r=KaiSzuttor a=jngrad Porting #3228 to the dev branch Description of changes: - fix the CMake build system to include libraries in the list of installed files and test it in a dedicated CI job - fix the versioning of Cython .so shared objects - simplify the CMake tests 3251: Particle data r=jngrad a=fweik Fixes #3157. Description of changes: - Split definition of `struct Particle` from rest of particle data. Co-authored-by: Christoph Junghans <junghans@lanl.gov> Co-authored-by: Jean-Noël Grad <jgrad@icp.uni-stuttgart.de> Co-authored-by: Florian Weik <fweik@icp.uni-stuttgart.de>
Build succeeded |
Porting #3228 to the dev branch
Description of changes: