Skip to content

fix: hanging notes with midi-playback on macOS #72

fix: hanging notes with midi-playback on macOS

fix: hanging notes with midi-playback on macOS #72

name: macOS ARM64 Build
on: [push, pull_request]
jobs:
build:
runs-on: macos-latest
permissions:
actions: write
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
brew install cmake dylibbundler
PACKAGES=(argtable sdl2 dumb libogg flac libpng freetype libvorbis ca-certificates openssl@3 opus opusfile physfs theora giflib jpeg-turbo xz lz4 zstd libtiff webp pcre2 gettext glib lame mpg123 libsndfile portaudio readline allegro fluid-synth mad enet)
for PACKAGE in "${PACKAGES[@]}"
do
brew uninstall --force --ignore-dependencies $PACKAGE
brew fetch --force --bottle-tag=arm64_monterey $PACKAGE
brew install $(brew --cache --bottle-tag=arm64_monterey $PACKAGE)
done
- name: Build
run: ./scripts/build-macos-arm64.sh
- name: Bundle libs
run: ./scripts/bundle-libs-macos.sh
- name: Copy OS specific files
run: cp -r ./dist-os-specific/macos/* ./dist
- name: Zip dist folder
run: |
cd dist
zip -r dist.zip .
- name: Delete Old Artifacts
uses: actions/github-script@v7
id: artifact
with:
script: |
const res = await github.rest.actions.listArtifactsForRepo({
owner: context.repo.owner,
repo: context.repo.repo,
})
res.data.artifacts
.filter(({ name }) => name === 'macos-arm64-build')
.forEach(({ id }) => {
github.rest.actions.deleteArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: id,
})
})
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: macos-arm64-build
path: dist/dist.zip