Skip to content

Release

Release #16

Workflow file for this run

name: Release
on:
release:
types:
- published
env:
BUILD_TYPE: release
jobs:
build-windows:
name: Build (Windows)
runs-on: windows-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Build
run: |
mkdir build
cd build
cmake -G "Visual Studio 17 2022" -A x64 .. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ github.workspace }}/build/Release/EIMTimeStretchers.dll
tag: ${{ github.ref }}
asset_name: libEIMTimeStretchers.dll
build-macos:
name: Build (MacOS)
runs-on: macos-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Build
run: |
mkdir build
cd build
brew install ninja
cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ github.workspace }}/build/libEIMTimeStretchers.dylib
tag: ${{ github.ref }}
asset_name: libEIMTimeStretchers-x86.dylib
- name: Build Apple Silicon binary
run: |
rm -rf build
mkdir build
cd build
cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=arm64
cmake --build . --config Release
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ github.workspace }}/build/libEIMTimeStretchers.dylib
tag: ${{ github.ref }}
asset_name: libEIMTimeStretchers.dylib
# Consider adding a Linux build here, I don't have a Linux machine to test on though
build-linux:
name: Build (Linux)
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Ninja
uses: seanmiddleditch/gha-setup-ninja@master
- name: Build
run: |
mkdir build
cd build
cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ github.workspace }}/build/libEIMTimeStretchers.so
tag: ${{ github.ref }}
asset_name: libEIMTimeStretchers.so