phoebe-project / phoebe2

PHOEBE - Eclipsing Binary Star Modeling Software
http://phoebe-project.org
GNU General Public License v3.0
80 stars 30 forks source link

Phoebe build system #794

Closed aprsa closed 8 months ago

aprsa commented 10 months ago

We are on the verge of replacing distutils with setuptools. Yet that is just the first step towards a more modern build system. I'm providing below some of the most insightful reads on the topic as of late 2023.

https://packaging.python.org/en/latest/guides/modernize-setup-py-project/#what-is-the-build-isolation-feature https://www.pyopensci.org/python-package-guide/package-structure-code/python-package-build-tools.html https://setuptools.pypa.io/en/latest/userguide/ext_modules.html https://meson-python.readthedocs.io/en/latest/tutorials/introduction.html#tutorial-introduction https://packaging.python.org/en/latest/tutorials/installing-packages/ https://carpentries-incubator.github.io/python_packaging/instructor/03-building-and-installing.html https://setuptools.pypa.io/en/latest/userguide/ext_modules.html

It looks like pdm and poetry are the most suitable candidates, with pdm being slightly favored, using the meson backend for building c/c++ libraries.