Skip to content

Conversation

@Helveg
Copy link
Collaborator

@Helveg Helveg commented Dec 4, 2022

The responsibilities of our build systems have historically been mangled, with a pseudo-Python-install carried out by CMake as the most problematic and brittle aspect. This PR will fix that as follows:

  • CMake carries out the building of the NEST library
    • CMake is by default configured to round out the Python install by calling pip as a pypkg build frontend.
  • Python packaging happens (for now) by either carrying out a full CMake build, or a noop build:
    • The full build uses skbuild as a build backend that runs the CMake build without the trailing pip build.
    • The noop build assumes that the binaries were produced by CMake, and just copies them into the output bundle.
  • spack will configure a CMake build without pip, followed by a pip build without CMake

This allows us to move away effortlessly from Python, or add new interpreters/bindings without our build tools becoming hypercomplex

@github-actions
Copy link

Pull request automatically marked stale!

@github-actions github-actions bot added the stale label Sep 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants