-
Notifications
You must be signed in to change notification settings - Fork 1
Description
These compatibilities have been requested, and would make sense as gmic and python are compatible with those platforms, and GitHub runners are available for them. I however do not have the time or the resources to figure it out, therefore this is a call for contribution.
As far as I know the current project might build fine on those platforms, I expect most of the work to be figuring out dependency management. Currently the CI build/Github Action do it via the before_all.sh script, called by cibuildwheels, which detects whether the current platform has APT or APK and installs dependencies through that. Ideally, extending the platform compatibility would only imply to add some more else if's to this part, but it might require more changes than that (i.e a separate job in the workflow).
Most of gmic's dependencies are optional, ideally the built wheels should support gmic-py's limited features, meaning it should be built with the libs: fftw, png, jpeg, tiff, zlib, X11 (Not sure how that works for Windows, maybe msys2 has a libx11 that bridges the gap?). These dependencies' shared libs (.so/.dll files) will need to be included in the wheels, which is managed by cibuildwheel on Linux but might need to be done manually on other platforms.
If you intend to test build on your machine (i.e without cibuildwheel) you'll need: the development headers for your python installation, git, cmake and g++ (hopefully I'm not forgetting any).
For windows the easiest would probably to use the official build instructions using msys2. For Mac the homebrew build script is probably a good starting point.
(Please use the respective sub-issues 👇 for platform-specific discussions)