Quick addendum:
Upstream has moved away from calling `setup.py` and now uses `pip`:
https://github.com/nest/nest-simulator/blob/v3.4/pynest/CMakeLists.txt#L91
Still not sure how to use the pyproject macros though.
On Mon, Jun 12, 2023 15:04:54 +0100, Ankur Sinha wrote:
Hi folks,
I'm in the process of updating the nest package to the latest release.
It uses cmake as its build system, but then the cmake calls `python
setup.py install` and so on to install the Python API. So, we strip that
bit out and call these commands ourselves in the right places in the
spec[1,2,3].
As you'll also see from the spec, nest supports MPI, so we build it 3
times:
- without MPI
- once with openmpi
- once with mpich
For the MPI builds, we need to pass the `--install-lib=$MPI_SITEARCH`
option to `python setup.py install` to get it to install the bits in the
right MPI related locations.
I've noticed that using this system now gives us deprecation warnings
during the build since calling `setup.py ...` explicitly is deprecated.
However, I can't figure out how I would replicate the build using the
`pyproject` macros. I guess `pyproject_wheel` usage is straightforward
(?), but how do I get `pyproject_install` to install in the
$MPI_SITEARCH locations, and then how do I get `pyproject_save_files` to
store the files in three different lists that I can use in the different
`%files` sections?
[1]
https://src.fedoraproject.org/rpms/nest/blob/rawhide/f/0001-Disable-pytho...
[2]
https://src.fedoraproject.org/rpms/nest/blob/rawhide/f/nest.spec#_342
[3]
https://src.fedoraproject.org/rpms/nest/blob/rawhide/f/nest.spec#_424
--
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) |
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London
--
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) |
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London