8000 Add native macOS Apple Silicon builds for MATLAB and Octave by ptahmose · Pull Request #26 · ptahmose/MEXlibCZI · GitHub
[go: up one dir, main page]

Skip to content

Add native macOS Apple Silicon builds for MATLAB and Octave - #26

Merged
ptahmose merged 1 commit into
masterfrom
jbl/add_macos_arm64
Oct 31, 2026
Merged

ptahmose merged 1 commit into
masterfrom
jbl/add_macos_arm64

Conversation

@ptahmose
Copy link
Copy Markdown
Owner

Add native macOS Apple Silicon builds for MATLAB and Octave on the macos-15 ARM64 runner, targeting macOS 15 or later. Bump the version to 0.6.3-alpha.

  • Give the MATLAB binary its macOS MEX extension, exclude Linux GCC runtime flags on AppleClang, and support macOS dylibs in the manual MATLAB library override.
  • Load libmexlibczi.dylib from beside the Octave wrapper on macOS.
  • Run native, MATLAB, and Octave tests and package separate MATLAB and Octave ARM64 artifacts alongside the existing Linux and Windows artifacts.
  • Document native builds and installation requirements. The Octave wrapper was tested with Homebrew Octave 11.3.0 and requires a compatible native Octave installation; the MATLAB binary is for native Apple Silicon MATLAB.

Validation: GitHub Actions passed on macOS 15 ARM64, Ubuntu 22.04/24.04/26.04 x64, and Windows x64. All ten artifacts uploaded. file/otool confirmed ARM64 binaries and expected host/system dependencies. git diff --check passed. Release publication was disabled.

Fixes #13.

Copilot AI left a comment
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

There are no active review issues for the macOS Apple Silicon support changes.

No open issues 🎉

What changed in this PR

Adds native macOS Apple Silicon support for MATLAB and Octave, addressing #13 while retaining existing Linux and Windows builds. The release version advances to 0.6.3-alpha.

Changes:

  • Configure macOS MATLAB MEX naming and library linking, and load the Octave .dylib beside its wrapper.
  • Extend CI with macOS 15 ARM64 builds, tests, and separate MATLAB and Octave artifacts.
  • Document native build steps and installation requirements.
File Description
README.md Lists macOS Apple Silicon binaries and minimum OS requirement.
OctaveMex/​octavelibczi.c Selects libmexlibczi.dylib on macOS.
MEXlibCZI/​CMakeLists.txt Sets macOS MEX extensions and excludes Linux GCC runtime flags.
doc/​building.markdown Documents native MATLAB and Octave builds and compatibility requirements.
CMakeLists.txt Bumps the version and supports manual MATLAB .dylib paths.
.github/​workflows/​build.yml Adds macOS ARM64 builds, testing, and artifact packaging.

Review effort: Balanced

@ptahmose
ptahmose merged commit 42dca56 into master Oct 31, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Are Mac binaries (Apple silicon) of interest?

2 participants

0