@@ -2,26 +2,46 @@ name: Build VCV Rack Plugin
22on : [push, pull_request]
33
44env :
5- rack-plugin-toolchain-dir : /home/build/rack-plugin-toolchain
5+ rack-sdk-version : 2.1.0
66
77defaults :
88 run :
99 shell : bash
1010
1111jobs :
1212 build :
13- name : ${{ matrix.platform }}
14- runs-on : ubuntu-latest
15- container :
16- image : ghcr.io/qno/rack-plugin-toolchain:v2
17- options : --user root
13+ name : ${{ matrix.config.name }}
14+ runs-on : ${{ matrix.config.os }}
1815 strategy :
1916 matrix :
20- platform : [linux, mac, win]
17+ config :
18+ - {
19+ name : Linux,
20+ sdk-platform : lin,
21+ os : ubuntu-latest,
22+ prepare-os : sudo apt update && sudo apt install -y libglu-dev
23+ }
24+ - {
25+ name : MacOS,
26+ sdk-platform : mac,
27+ os : macos-latest,
28+ prepare-os : " "
29+ }
30+ - {
31+ name : Windows,
32+ sdk-platform : win,
33+ os : windows-latest,
34+ prepare-os : export CC=gcc
35+ }
2136 steps :
2237 - uses : actions/checkout@v3
2338 with :
2439 submodules : recursive
40+ - name : Get Rack-SDK
41+ run : |
42+ pushd $HOME
43+ curl -o Rack-SDK.zip https://vcvrack.com/downloads/Rack-SDK-${{ env.rack-sdk-version }}-${{ matrix.config.sdk-platform }}.zip
44+ unzip Rack-SDK.zip
2545 - name : Modify plugin version
2646 # only modify plugin version if no tag was created
2747 if : " ! startsWith(github.ref, 'refs/tags/v')"
@@ -32,14 +52,15 @@ jobs:
3252 cat <<< `jq --arg VERSION "$pluginversion-$gitrev" '.version=$VERSION' plugin.json` > plugin.json
3353 - name : Build plugin
3454 run : |
35- export PLUGIN_DIR=$GITHUB_WORKSPACE
36- pushd ${{ env.rack-plugin-toolchain-dir }}
37- make plugin-build-${{ matrix.platform }}
55+ ${{ matrix.config.prepare-os }}
56+ export RACK_DIR=$HOME/Rack-SDK
57+ make -j dep
58+ make -j dist
3859 - name : Upload artifact
3960 uses : actions/upload-artifact@v2
4061 with :
41- path : ${{ env.rack-plugin-toolchain-dir }}/plugin-build
42- name : ${{ matrix.platform }}
62+ path : dist
63+ name : ${{ matrix.config.name }}
4364
4465 publish :
4566 name : Publish plugin
0 commit comments