CI: build DLL

This commit is contained in:
Matthias Geier
2023-10-15 12:21:07 +02:00
parent 71bfaa6f71
commit 792ff6e0c0

43
.github/workflows/build-libs.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Build ASDF lib and run tests
# TODO: only pull_request?
on: [push]
jobs:
windows:
runs-on: windows-2022
# TODO: matrix with x64 and Win32
steps:
- name: checkout portaudio
uses: actions/checkout@v4
with:
repository: PortAudio/portaudio
ref: v19.7.0
path: portaudio
# see https://github.com/PortAudio/portaudio/pull/552:
- name: cherry-pick MinGW fix
working-directory: portaudio
run: |
git fetch origin c6178e8592d936e246177a8991b75c9a043ccd00
git cherry-pick c6178e8592d936e246177a8991b75c9a043ccd00 --no-commit
# The next portaudio release will have an auto-download feature:
- name: download and extract ASIO SDK
run: |
curl -L -o asiosdk.zip https://www.steinberg.net/asiosdk
7z x asiosdk.zip
- name: cmake configure
run: |
cmake -S portaudio -B build -A x64 -D PA_USE_ASIO=ON
- name: cmake build
run: |
cmake --build build --config Release
- name: rename DLL
run: |
mv build/Release/portaudio_x64.dll libportaudio64bit.dll
- name: upload DLL
uses: actions/upload-artifact@v3
with:
name: windows-x64-dll
path: libportaudio*.dll
# TODO: macOS universal dylib
# TODO: commit and push DLLs and dylib