-
Notifications
You must be signed in to change notification settings - Fork 36
#171 windows builds installers #172
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
#171 windows builds installers #172
Conversation
…e the dynamic load library is only supported for POSIX systems
…tting and library loading in tests cases
|
Right now the installer generated for windows is actually the default |
ktbolt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@zasexton I assume all of these changes compile on the latest Ubuntu and MacOS ?
yes, I've added the windows build and installer generation to the same |
|
This is currently the most involved change to the source code where I am adding a Windows shim to provide a workaround for the interface testing:
I think the solution ends up being good enough to include here since we can avoid pulling in another library for windows dynamic loading and can instead rely on native |
ktbolt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A good enough solution for now.
Current situation
The solver has first-class CI/CD for Linux and macOS only. On Windows the build breaks because
Issue #171 tracks these gaps and the discussion around adding Windows wheels/MSI installers.
This PR introduces 14 commits that
Release Notes
New: Official Windows (≥ Win10) build, test and packaging workflow on GitHub Actions.
New: Auto-generated Windows installer (.msi) and Python wheel containing pysvzerod.pyd.
New: Portable dynamic-loading layer replaces direct <dlfcn.h> usage; no code changes needed in client projects.
Change: setup.py now uses CustomCMakeBuild to place binaries correctly; downstream pip install . behaviour is unchanged.
Migration: No breaking API changes. maintained custom CMake flags.
Documentation
TODO: Add a “Building on Windows” subsection to docs/developer_guide.md with MinGW & MSVC instructions.
TODO: Update README install table to list the Windows wheel and MSI artifacts.
Testing
Code of Conduct & Contributing Guidelines