Fix CMake and GitHub action for macOS #162
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build macOS Homebrew wheels | |
on: | |
push: | |
branches: [ master ] | |
tags: [ "*" ] | |
pull_request: | |
branches: [ master ] | |
jobs: | |
build_wheel_macos: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-13, macos-14] | |
runs-on: ${{ matrix.os }} | |
# This is still pretty much an experimental feature | |
continue-on-error: true | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
# Needed for `setuptools-scm` | |
fetch-depth: 0 | |
# See https://github.com/orgs/Homebrew/discussions/3895#discussioncomment-4130560 | |
- name: Ensure we use Homebrew Python | |
run: find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete | |
- name: Install Homebrew packages | |
run: | | |
brew tap casacore/tap | |
brew install casacore | |
- name: Make virtualenv | |
# XXX Use Homebrew's numpy to be safe for now, especially since | |
# PyPI is now on numpy 2.0, which complicates matters | |
run: python3 -m venv venv --system-site-packages | |
- name: Install Python dependencies | |
run: venv/bin/pip install --upgrade pip wheel delocate pytest | |
- name: Compile and install python-casacore | |
run: venv/bin/pip install . | |
- name: Run pytest | |
run: cd tests && ../venv/bin/pytest | |
- name: Make binary wheel | |
run: venv/bin/pip wheel -w dist . | |
- name: Delocate binary wheel | |
run: venv/bin/delocate-wheel -v dist/*.whl | |
- name: Publish macOS binary wheels | |
uses: actions/upload-artifact@v4 | |
with: | |
path: dist/*.whl |