mirror of
https://github.com/mikeoliphant/neural-amp-modeler-lv2.git
synced 2026-06-10 14:22:20 +02:00
135 lines
4.3 KiB
YAML
135 lines
4.3 KiB
YAML
name: Release
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
BUILD_TYPE: Release
|
|
|
|
jobs:
|
|
create_release:
|
|
name: Create release
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
upload_url: ${{steps.create_release.outputs.upload_url}}
|
|
steps:
|
|
- name: Check out repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Create release
|
|
id: create_release
|
|
uses: actions/create-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
|
with:
|
|
draft: true
|
|
tag_name: ${{github.ref}}
|
|
release_name: Release ${{github.ref}}
|
|
|
|
build-linux-x64:
|
|
name: Build Linux x64
|
|
needs: create_release
|
|
strategy:
|
|
matrix:
|
|
native_arch: [ON, OFF]
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
ARCHIVE_NAME: neural_amp_modeler_lv2_linux_x64${{ matrix.native_arch == 'ON' && 'v3' || '' }}.tgz
|
|
steps:
|
|
- uses: actions/checkout@v3.3.0
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Build Plugin
|
|
working-directory: ${{github.workspace}}/build
|
|
env:
|
|
CXX: clang++
|
|
run: |
|
|
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DUSE_NATIVE_ARCH=${{ matrix.native_arch }} -DBUILD_NAMCORE=ON -DBUILD_INTERNAL_STATIC_WAVENET=ON -DBUILD_INTERNAL_STATIC_LSTM=ON
|
|
cmake --build . --config $BUILD_TYPE -j4
|
|
|
|
- name: Add LV2 Archive
|
|
working-directory: ${{github.workspace}}/build
|
|
run: tar -czf ${{ env.ARCHIVE_NAME }} neural_amp_modeler.lv2
|
|
|
|
- name: Upload Plugin Asset
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ needs.create_release.outputs.upload_url }}
|
|
asset_path: ./build/${{ env.ARCHIVE_NAME }}
|
|
asset_name: ${{ env.ARCHIVE_NAME }}
|
|
asset_content_type: application/tgz
|
|
|
|
build-rpi:
|
|
name: Build Raspberry Pi
|
|
needs: create_release
|
|
strategy:
|
|
matrix:
|
|
native_arch: [rpi4, rpi5]
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: ghcr.io/tttapa/docker-arm-cross-toolchain:aarch64-rpi3-linux-gnu
|
|
env:
|
|
ARCHIVE_NAME: neural_amp_modeler_lv2_${{ matrix.native_arch }}.tgz
|
|
steps:
|
|
- uses: actions/checkout@v3.3.0
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Build Plugin
|
|
working-directory: ${{github.workspace}}/build
|
|
run: |
|
|
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DBUILD_NAMCORE=ON -DBUILD_INTERNAL_STATIC_WAVENET=ON -DBUILD_INTERNAL_STATIC_LSTM=ON -DCMAKE_TOOLCHAIN_FILE=/home/develop/opt/x-tools/aarch64-rpi3-linux-gnu/aarch64-${{ matrix.native_arch }}-linux-gnu.toolchain.cmake
|
|
cmake --build . --config $BUILD_TYPE -j4
|
|
|
|
- name: Add LV2 Archive
|
|
working-directory: ${{github.workspace}}/build
|
|
run: tar -czf ${{ env.ARCHIVE_NAME }} neural_amp_modeler.lv2
|
|
|
|
- name: Upload Plugin Asset
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ needs.create_release.outputs.upload_url }}
|
|
asset_path: ./build/${{ env.ARCHIVE_NAME }}
|
|
asset_name: ${{ env.ARCHIVE_NAME }}
|
|
asset_content_type: application/tgz
|
|
|
|
build-windows:
|
|
name: Build Windows
|
|
needs: create_release
|
|
strategy:
|
|
matrix:
|
|
native_arch: [ON, OFF]
|
|
runs-on: windows-latest
|
|
env:
|
|
ARCHIVE_NAME: neural_amp_modeler_lv2_win_x64${{ matrix.native_arch == 'ON' && 'v3' || '' }}.zip
|
|
steps:
|
|
- uses: actions/checkout@v3.3.0
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Build Plugin
|
|
working-directory: ${{github.workspace}}/build
|
|
run: |
|
|
cmake.exe -G "Visual Studio 17 2022" -A x64 -T ClangCL -DUSE_NATIVE_ARCH=${{ matrix.native_arch }} -DBUILD_NAMCORE=ON -DBUILD_INTERNAL_STATIC_WAVENET=ON -DBUILD_INTERNAL_STATIC_LSTM=ON ..
|
|
cmake --build . --config=release -j4
|
|
|
|
- name: Add LV2 Archive
|
|
run: Compress-Archive -Path ${{github.workspace}}\build\neural_amp_modeler.lv2 -Destination ${{ env.ARCHIVE_NAME }}
|
|
|
|
- name: Upload Plugin Asset
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ needs.create_release.outputs.upload_url }}
|
|
asset_path: ./${{ env.ARCHIVE_NAME }}
|
|
asset_name: ${{ env.ARCHIVE_NAME }}
|
|
asset_content_type: application/zip
|