Skip to content

feat: add multi platform builds - #607

Open
rwaffen wants to merge 8 commits into
OpenVoxProject:mainfrom
rwaffen:platform_builds
Open

feat: add multi platform builds#607
rwaffen wants to merge 8 commits into
OpenVoxProject:mainfrom
rwaffen:platform_builds

Conversation

@rwaffen

@rwaffen rwaffen commented Aug 13, 2026

Copy link
Copy Markdown
Member

Short description

This PR adds platform-specific OpenVox gem builds and updates the release workflow to publish all generated artifacts.

OpenVox itself has no native extensions, so the platform variants can be cross-built on Linux. They provide the correct platform-specific runtime dependencies for each supported target:

  • ruby: generic gem
  • universal-darwin: includes CFPropertyList
  • x64-mingw-ucrt: includes ffi, minitar, and win32ole

The legacy x64-mingw32 and 32-bit x86-mingw32 targets are dropped. RubyInstaller has used x64-mingw-ucrt since Ruby 3.1, which matches the supported Ruby versions for OpenVox.

Checklist

I have:

@rwaffen
rwaffen requested a review from bastelfreak August 13, 2026 12:18
@rwaffen rwaffen added the enhancement New feature or request label Aug 13, 2026
Comment thread .github/workflows/tests.yaml Outdated
@rwaffen

rwaffen commented Aug 13, 2026

Copy link
Copy Markdown
Member Author

ah okay, windows doesn't like the change. the ole thingy seems not to work like intended

@rwaffen rwaffen changed the title Platform builds feat: add multi platform builds Aug 13, 2026
Signed-off-by: Robert Waffen <rw@betadots.de>
…rossbuils on ubnutu

Signed-off-by: Robert Waffen <rw@betadots.de>
… build everything on linux runners

Signed-off-by: Robert Waffen <rw@betadots.de>
Signed-off-by: Robert Waffen <rw@betadots.de>
Signed-off-by: Robert Waffen <rw@betadots.de>
RubyInstaller has used the x64-mingw-ucrt platform since Ruby 3.1,
while OpenVox requires Ruby 3.2 or newer. Gems built for x64-mingw32
are incompatible with these supported Windows Rubies: RubyGems may
install them, but cannot activate them afterwards.

Replace the x64-mingw32 build and test target with x64-mingw-ucrt so
the generated gem matches current RubyInstaller installations and
includes the required Windows-specific dependencies. Keep
x86-mingw32 for supported 32-bit Windows installations.

Signed-off-by: Robert Waffen <rw@betadots.de>
Signed-off-by: Robert Waffen <rw@betadots.de>
It is now handled in test_gem_build and test_install

Signed-off-by: Robert Waffen <rw@betadots.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants