[sh4lt] Implementation of input and output devices #2051
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Template check | |
on: [push,pull_request] | |
jobs: | |
init_template: | |
name: Template generation | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
template: | |
- score-vfx-template | |
- score-process-template | |
- score-device-template | |
- score-audio-addon-template | |
- score-offline-process-template | |
steps: | |
- name: Install git | |
run: | | |
sudo apt-get update -qq | |
sudo apt-get install -qq --force-yes git rename perl | |
- name: Checkout template | |
uses: actions/checkout@v4 | |
with: | |
repository: ossia-templates/${{ matrix.template }} | |
submodules: "recursive" | |
path: ${{ matrix.template }} | |
- name: Init template | |
run: | | |
cd ${{ matrix.template }} | |
./init.sh Build | |
./release.sh | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.template }} | |
path: "**/score-addon-build.zip" | |
check: | |
name: ${{ matrix.template }} (${{ matrix.config.name }}) | |
runs-on: ${{ matrix.config.os }} | |
needs: init_template | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- { | |
name: "Windows", | |
os: windows-latest, | |
path: "/c/ossia-sdk/llvm/bin", | |
common_flags: "-GNinja -DCMAKE_C_COMPILER=c:/ossia-sdk/llvm/bin/clang.exe -DCMAKE_CXX_COMPILER=c:/ossia-sdk/llvm/bin/clang++.exe -DCMAKE_UNITY_BUILD=1", | |
debug_flags: "-DCMAKE_BUILD_TYPE=Debug", | |
release_flags: "-DCMAKE_BUILD_TYPE=Release", | |
dependencies: "choco install -y ninja", | |
sdk: "/c/ossia-sdk", | |
} | |
- { | |
name: "Ubuntu", | |
os: ubuntu-latest, | |
path: "/opt/ossia-sdk/llvm/bin", | |
common_flags: "-DCMAKE_C_COMPILER=/opt/ossia-sdk/llvm/bin/clang -DCMAKE_CXX_COMPILER=/opt/ossia-sdk/llvm/bin/clang++ -DCMAKE_UNITY_BUILD=1", | |
debug_flags: "-DCMAKE_BUILD_TYPE=Debug", | |
release_flags: "-DCMAKE_BUILD_TYPE=Release", | |
dependencies: "sudo apt-get -yq update; sudo apt-get -yq install libgl-dev libegl-dev libdrm-dev libxcomposite-dev libxkbcommon-dev libxkbcommon-x11-dev libwayland-dev libxcb-*-dev libX11-*-dev libz-dev libtinfo5 libxext-dev", | |
sdk: "/opt/ossia-sdk", | |
} | |
- { | |
name: "macOS", | |
os: macos-latest, | |
common_flags: "-DCMAKE_UNITY_BUILD=1", | |
debug_flags: "-DCMAKE_BUILD_TYPE=Debug", | |
release_flags: "-DCMAKE_BUILD_TYPE=Release", | |
sdk: "/opt/ossia-sdk-x86_64", | |
} | |
template: | |
- score-vfx-template | |
- score-process-template | |
- score-device-template | |
- score-audio-addon-template | |
- score-offline-process-template | |
steps: | |
- name: Checkout score | |
uses: actions/checkout@v4 | |
with: | |
submodules: "recursive" | |
path: score | |
fetch-depth: 0 # Needed for getting tags | |
- uses: actions/download-artifact@v4 | |
with: | |
name: ${{ matrix.template }} | |
path: . | |
- name: Install dependencies | |
shell: bash | |
run: | | |
export DEBIAN_FRONTEND=noninteractive | |
${{ matrix.config.dependencies }} | |
- name: Download SDK | |
shell: bash | |
run: | | |
cd score | |
tools/fetch-sdk.sh | |
- name: Extract artifact | |
shell: bash | |
run: | | |
find ${{ matrix.template }} -name '*.zip' -exec cmake -E tar xz {} \; | |
ls | |
find score-addon-build | |
ls score-addon-build | |
- name: Build debug | |
shell: bash | |
run: | | |
mkdir build-debug | |
cd build-debug | |
if [[ "${{ matrix.config.path }}" != "" ]]; then | |
export PATH=${{ matrix.config.path }}:$PATH | |
fi | |
cmake ../score-addon-build \ | |
-DSCORE_SOURCE_DIR=../score \ | |
-DOSSIA_SDK=${{ matrix.config.sdk }} \ | |
${{ matrix.config.common_flags }} \ | |
${{ matrix.config.debug_flags }} | |
cmake --build . | |
- name: Build release | |
shell: bash | |
run: | | |
mkdir build-release | |
cd build-release | |
if [[ "${{ matrix.config.path }}" != "" ]]; then | |
export PATH=${{ matrix.config.path }}:$PATH | |
fi | |
cmake ../score-addon-build \ | |
-DSCORE_SOURCE_DIR=../score \ | |
-DOSSIA_SDK=${{ matrix.config.sdk }} \ | |
${{ matrix.config.common_flags }} \ | |
${{ matrix.config.release_flags }} | |
cmake --build . | |