ci: remove native synth from MacOS and compile arm64

This commit is contained in:
5684185+vsariola@users.noreply.github.com
2025-12-29 12:32:06 +02:00
parent 9b87589f7b
commit 33ee80a908
3 changed files with 18 additions and 17 deletions

View File

@ -71,16 +71,15 @@ jobs:
asmnasm: /Users/runner/nasm/nasm asmnasm: /Users/runner/nasm/nasm
output: sointu-compile output: sointu-compile
params: cmd/sointu-compile/main.go params: cmd/sointu-compile/main.go
- os: macos-13 - os: macos-latest
asmnasm: /Users/runner/nasm/nasm asmnasm: /Users/runner/nasm/nasm
output: sointu-track output: sointu-track
params: -tags=native cmd/sointu-track/main.go params: cmd/sointu-track/main.go
- os: macos-13 - os: macos-latest
asmnasm: /Users/runner/nasm/nasm asmnasm: /Users/runner/nasm/nasm
output: sointu-vsti.a output: sointu-vsti.a
bundleoutput: sointu-vsti bundleoutput: sointu-vsti
MACOSX_DEPLOYMENT_TARGET: 11 params: -buildmode=c-archive -tags="plugin" ./cmd/sointu-vsti/
params: -buildmode=c-archive -tags="plugin,native" ./cmd/sointu-vsti/
bundle: true bundle: true
steps: steps:
- uses: benjlevesque/short-sha@v3.0 - uses: benjlevesque/short-sha@v3.0
@ -103,15 +102,12 @@ jobs:
- name: Build library - name: Build library
env: env:
ASM_NASM: ${{ matrix.config.asmnasm }} ASM_NASM: ${{ matrix.config.asmnasm }}
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.config.MACOSX_DEPLOYMENT_TARGET }}
run: | run: |
mkdir build mkdir build
cd build cd build
cmake -GNinja .. cmake -GNinja ..
ninja sointu ninja sointu
- name: Build binary - name: Build binary
env:
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.config.MACOSX_DEPLOYMENT_TARGET }}
run: | run: |
go build -ldflags "-X github.com/vsariola/sointu/version.Version=$(git describe) ${{ matrix.config.ldflags}}" -o ${{ matrix.config.output }} ${{ matrix.config.params }} go build -ldflags "-X github.com/vsariola/sointu/version.Version=$(git describe) ${{ matrix.config.ldflags}}" -o ${{ matrix.config.output }} ${{ matrix.config.params }}
- name: Upload binary - name: Upload binary
@ -122,8 +118,6 @@ jobs:
path: ${{ matrix.config.output }} path: ${{ matrix.config.output }}
- name: Bundle VST - name: Bundle VST
if: matrix.config.bundle if: matrix.config.bundle
env:
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.config.MACOSX_DEPLOYMENT_TARGET }}
run: | # following https://github.com/RustAudio/vst-rs/blob/master/osx_vst_bundler.sh run: | # following https://github.com/RustAudio/vst-rs/blob/master/osx_vst_bundler.sh
mkdir -p "bundle/${{ matrix.config.bundleoutput }}.vst/Contents/MacOS" mkdir -p "bundle/${{ matrix.config.bundleoutput }}.vst/Contents/MacOS"
clang++ -D__MACOSX_CORE__ -framework CoreServices -framework CoreAudio -framework CoreMIDI -framework CoreFoundation -L./build/ -lsointu -bundle -o bundle/${{ matrix.config.bundleoutput }} -all_load ${{ matrix.config.output }} clang++ -D__MACOSX_CORE__ -framework CoreServices -framework CoreAudio -framework CoreMIDI -framework CoreFoundation -L./build/ -lsointu -bundle -o bundle/${{ matrix.config.bundleoutput }} -all_load ${{ matrix.config.output }}

View File

@ -20,14 +20,17 @@ jobs:
- os: ubuntu-latest - os: ubuntu-latest
asmnasm: /home/runner/nasm/nasm asmnasm: /home/runner/nasm/nasm
gotests: yes gotests: yes
gotestcases: ./vm ./vm/compiler/bridge ./vm/compiler
cgo_ldflags: cgo_ldflags:
- os: windows-latest - os: windows-latest
asmnasm: C:\Users\runneradmin\nasm\nasm asmnasm: C:\Users\runneradmin\nasm\nasm
gotests: yes gotests: yes
gotestcases: ./vm ./vm/compiler/bridge ./vm/compiler
cgo_ldflags: cgo_ldflags:
- os: macos-13 - os: macos-latest
asmnasm: /Users/runner/nasm/nasm asmnasm: /Users/runner/nasm/nasm
gotests: yes gotests: yes
gotestcases: ./vm ./vm/compiler
cgo_ldflags: # -Wl,-no_pie cgo_ldflags: # -Wl,-no_pie
# ld on mac is complaining about position dependent code so this would take the errors away, BUT # ld on mac is complaining about position dependent code so this would take the errors away, BUT
# suddenly this causes an error, even though worked last week. Let's accept the warnings rather # suddenly this causes an error, even though worked last week. Let's accept the warnings rather
@ -44,7 +47,7 @@ jobs:
go-version: '>=1.21.0' go-version: '>=1.21.0'
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: '15' node-version: '22'
- uses: ilammy/setup-nasm@v1.5.1 - uses: ilammy/setup-nasm@v1.5.1
- name: Run ctest - name: Run ctest
env: env:
@ -60,4 +63,4 @@ jobs:
env: env:
CGO_LDFLAGS: ${{ matrix.config.cgo_ldflags }} CGO_LDFLAGS: ${{ matrix.config.cgo_ldflags }}
run: | run: |
go test ./vm ./vm/compiler/bridge ./vm/compiler go test ${{ matrix.config.gotestcases }}

View File

@ -24,6 +24,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- The tracker thought that "sync" unit pops the value from stack, even if the VM - The tracker thought that "sync" unit pops the value from stack, even if the VM
did not, resulting it claiming errors in patches that worked once compiled. did not, resulting it claiming errors in patches that worked once compiled.
### Changed
- The provided MacOS executables are now arm64, which means the x86 native
synths are not compiled in.
## [0.5.0] ## [0.5.0]
### BREAKING CHANGES ### BREAKING CHANGES
- BREAKING CHANGE: always first modulate delay time, then apply notetracking. In - BREAKING CHANGE: always first modulate delay time, then apply notetracking. In