Skip to content

ZERO_AR_DATE

ZERO_AR_DATE #40

Workflow file for this run

name: Build PortAudio lib
on:
push:
branches-ignore:
- master
permissions:
# This is needed for pushing a new commit to the repo:
contents: write
jobs:
macos:
runs-on: macos-12
env:
CMAKE_OSX_ARCHITECTURES: "arm64;x86_64"
MACOSX_DEPLOYMENT_TARGET: "10.9"
# Reproducible build by avoiding time stamp
ZERO_AR_DATE: "1"
steps:
- name: checkout portaudio
uses: actions/checkout@v4
with:
repository: PortAudio/portaudio
ref: v19.7.0
path: portaudio
- name: cmake configure
run: |
cmake -S portaudio -B build -D CMAKE_BUILD_TYPE=Release
- name: cmake build
run: |
cmake --build build
- name: move dylib
run: |
mv build/libportaudio.dylib .
- name: show some information about dylib
run: |
file libportaudio.dylib
otool -L libportaudio.dylib
- name: upload dylib
uses: actions/upload-artifact@v3
with:
name: macos-dylib
path: libportaudio.dylib
windows:
runs-on: windows-2022
# TODO: matrix with x64 and Win32
# TODO: with and without ASIO
env:
# Reproducible build by avoiding time stamp
LDFLAGS: "/Brepro"
steps:
- name: checkout portaudio
uses: actions/checkout@v4
with:
repository: PortAudio/portaudio
ref: v19.7.0
path: portaudio
# 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: show some information about DLL
run: |
ldd libportaudio64bit.dll
- name: upload DLL
uses: actions/upload-artifact@v3
with:
name: windows-x64-dll
path: libportaudio*.dll
push:
runs-on: ubuntu-latest
needs: [macos, windows]
steps:
- name: Clone Git repository
uses: actions/checkout@v4
- name: Retrieve dylib
uses: actions/download-artifact@v3
with:
name: macos-dylib
- name: Retrieve x64 DLL
uses: actions/download-artifact@v3
with:
name: windows-x64-dll
- name: Commit and push binaries (if there are changes)
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git commit -am "Update binaries" && git push || true