Set the DUNE_PYTHON_WHEELHOUSE pyth even if CMAKE_INSTALL_PREFIX is set after the first run
summary
The variable DUNE_PYTHON_WHEELHOUSE
contains the path where python files from the build-dir are installed to. This is a cache variable initialized to ${CMAKE_INSTALL_PREFIX}/share/dune/wheelhouse
. The problem is that if CMAKE_INSTALL_PREFIX
is set after the first cmake run, this variable is not updated since cached. The effect is, that wheel files will be installed in a read-only system location, leading to a cmake error, see #339 (closed). The MR solves this issue by creating a meaningless value first and setting it afterwards.
Closes #339 (closed).
Merge request reports
Activity
added buildsystem python labels
requested review from @andreas.dedner
- Resolved by Simon Praetorius
@simon.praetorius I don't know much (or anything) about the wheelhouse setup so anything you do here is fine with me.
dune-testing
makes use of them (and probably needs to) so if that passes with this change I would think everything is fine. I'm almost sure that none of the github tests use them.For context (at least as far as I understand Dominic's concept): the wheelhouse allows you to install dune modules into the system from source and then at a later stage install their Python bindings using the wheels. The nightly build uses this e.g., after testing
dune-common
the wheel is installed together with the sources. When testingdune-geometry
using a new pipeline one has the installed sources for the C++ parts and can use the wheel to install the Python bindings fordune-common
. I never have this setup where I install some upstream packages from source but fordune-testing
that is needed I believe and there might be other use cases.
- Resolved by Simon Praetorius
mentioned in commit a36b19af
mentioned in merge request !1259 (closed)
mentioned in issue #358
mentioned in merge request !1417
mentioned in issue #378