Skip to content

Port setuptools Python build to meson or scikit-build - sdist/wheel only! #205

@bryanwweber

Description

@bryanwweber

Abstract

In Cantera/pypi-packages#3, we discussed how to include libhdf5 support in Cantera's Python wheels. I expressed some reservations about the complexity of the existing setup and wanted to see if we can simplify that, while also giving end users the ability to configure how a wheel is built from an sdist. I will investigate meson and scikit-build-core to see if either would be an improvement over setuptools.

Out of scope:

  1. I am not considering enscons because, although it's been updated fairly recently, some of the issues on the repo suggest to me that it's not widely used or supported (for example, not supporting Python 3.12). On the other hand, both meson and scikit-build-core are extremely well supported (the former by NumPy/SciPy, the latter by a lot of the ML community).

Acceptance criteria:

  1. I've recorded in this issue the outcome of this investigation with any tradeoffs associated with each system
  2. libhdf5 support is included in the Python wheels that we build in CI
  3. End users can compile an sdist into a wheel that includes libhdf5 support from a libhdf5 library on their system

Related: #93

Metadata

Metadata

Assignees

No one assigned

    Labels

    work-in-progressAn enhancement that someone is currently working on

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions