Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Source distribution should bootstrap CMake #33

Closed
ghost opened this issue Feb 25, 2018 · 2 comments
Closed

Source distribution should bootstrap CMake #33

ghost opened this issue Feb 25, 2018 · 2 comments
Labels
help wanted Status: Deferred / On Hold 🛑 This item is on hold until further notice.

Comments

@ghost
Copy link

ghost commented Feb 25, 2018

CMake allows bootstrapping from source (with just autotools/GNU Make). Because this package is often the only method to get a new CMake with just pip available, I think it would be too difficult to add logic that would bootstrap a release CMake before calling scikit-build if CMake wasn't found on the path.

This would essentially be:

if is_unix and not which('cmake'):
    download_extract('cmake.tar.gz')
    run('./bootstrap --prefix={prefix} && make && make install')
    os.environ['PATH'] += '{prefix}'
@minrk
Copy link

minrk commented Mar 27, 2024

I looked into this a bit, and I think it needs special handling logic in scikit-build-core, because this package itself uses scikit-build-core, which then assumes cmake is on the system when it builds this package. If there were an override for cmake_executable or something, this package could provide a wrapper script to bootstrap and then call its own cmake, I think. I struggle a bit with understanding the chicken and egg sequence, though.

@mayeut
Copy link
Contributor

mayeut commented Dec 15, 2024

implemented in #568

@mayeut mayeut closed this as completed Dec 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Status: Deferred / On Hold 🛑 This item is on hold until further notice.
Projects
None yet
Development

No branches or pull requests

3 participants