-
Notifications
You must be signed in to change notification settings - Fork 9
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
MACOSX_DEPLOYMENT_TARGET should be controlled by settings in addition to an env variable #43
Comments
I'm a bit hesitant to add build platform-specific options to But this could be tricky, as it would probably interfere with the value of What are your thoughts? Possibly relevant discussion: scikit-build/scikit-build-core#977 |
Thinking about it again, I think a minimum value is exactly what I'm looking for. When building in CI to publish for general consumption it's sufficient and appropriate to set this as an env variable, because such settings are linked to the particulars of that specific instance of the build. However it is also necessary that a project be able to say, "I need symbols that only become available at such-and-such version", and can error out early and with a specific error message if trying to be built in an environment where that's not available. |
Ehhh, at the same time the appropriate place to check that minimum is in the CML itself, not py-build-cmake which might be bypassed. Closing this because I don't think it's a feature that py-build-cmake actually needs. Jumped the gun because my workflow broke. |
I've added checks for |
Until 0.4 I've been manually handling
CMAKE_MACOSX_DEPLOYMENT_TARGET
under[tool.py-build-cmake.mac.cmake.options]
which lets it live nicely alongside all its other MacOS-specific options.0.4 overrides this with it's own
-D
option, which can only be controlled by an associated environment variable.This puts me in a pickle, I can control this with an environment variable that lives elsewhere in the build hierarchy, but that non-locality is confusing and is difficult to override in the same manner as other CMake options.
So this should be controlled by a setting too, something like
Maybe or maybe not having priority over the environment variable.
This way the version can be managed as a setting, or prevent py-build-cmake from overriding the option at all and allow the user to manually set the deployment target in their
mac.cmake.options
.A similar approach should be considered for other platform-specific options, for example
MSVC_RUNTIME_LIBRARY
.The text was updated successfully, but these errors were encountered: