-
-
Notifications
You must be signed in to change notification settings - Fork 33
133 lines (121 loc) · 4.16 KB
/
ossia-pd.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
name: ossia-pd
on: push
jobs:
build-macos:
runs-on: macos-14
environment: 'Apple Certificate'
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/latest-mac-toolchain
- name: Install Dependencies
run: brew install ninja
- name: Build
run: |
cmake -B build -S ${GITHUB_WORKSPACE} -GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DOSSIA_PD_ONLY=1 \
-DOSSIA_CI=1 \
-DCMAKE_INSTALL_PREFIX=install \
-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
cmake --build build
cmake --build build --target install
- uses: ./.github/actions/mac-codesign
with:
path-to-sign: "install/ossia-pd-package"
output-name: ossia-pd.zip
MAC_CERT_B64: ${{ secrets.MAC_CERT_B64 }}
MAC_CERT_PASSWORD: ${{ secrets.MAC_CERT_PASSWORD }}
MAC_ALTOOL_PASSWORD: ${{ secrets.MAC_ALTOOL_PASSWORD }}
- name: Archive Package
uses: actions/upload-artifact@v2
with:
name: ossia-pd
path: install/ossia-pd-package/ossia
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/latest-msvc-toolchain
- name : Build
shell: cmd
run: |
cmake -B build -S %GITHUB_WORKSPACE% -GNinja -DOSSIA_PD_ONLY=1 -DOSSIA_CI=1 -DCMAKE_SYSTEM_VERSION=7 -DCMAKE_INSTALL_PREFIX=install -DCMAKE_BUILD_TYPE=Release
cmake --build build
cmake --install build
- name: Archive Package
uses: actions/upload-artifact@v2
with:
name: ossia-pd
path: build/install/ossia-pd-package/ossia
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/latest-ubuntu-toolchain
- name: Build
run: |
cmake -B build -S ${GITHUB_WORKSPACE} -GNinja -DOSSIA_CI=1 -DCMAKE_BUILD_TYPE=Release -DOSSIA_PD_ONLY=1 -DCMAKE_INSTALL_PREFIX=install
cmake --build build
cmake --build build --target install
- name: Archive Package
uses: actions/upload-artifact@v2
with:
name: ossia-pd
path: install/ossia-pd-package/ossia
build-rpi:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/latest-rpi-toolchain
- name: Build
run: |
export CTEST_OUTPUT_ON_FAILURE=1
export PATH=/opt/cross-pi-gcc/bin:${PATH}
export LD_LIBRARY_PATH=/opt/cross-pi-gcc/lib:${LD_LIBRARY_PATH}
cmake -B build -S ${GITHUB_WORKSPACE} \
-DCMAKE_TOOLCHAIN_FILE="/opt/cross-pi-gcc/aarch64-rpi3-linux-gnu.toolchain.cmake" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=install \
-DOSSIA_CI=1 \
-DOSSIA_PD_ONLY=1 \
..
cmake --build build
cmake --build build --target install
- name: Archive Package
uses: actions/upload-artifact@v2
with:
name: ossia-pd
path: install/ossia-pd-package/ossia
upload_release:
runs-on: ubuntu-latest
needs: [ build-macos, build-windows, build-rpi, build-linux ]
steps:
- uses: actions/[email protected]
with:
name: ossia-pd
path: ossia
- name: Rezip
shell: bash
run: |
SHORT=${GITHUB_REF:11} # remove the 'refs/tags/' prefix
SLUG=${SHORT//\//_} # replace '/' with '_'
zip -r ossia-pd-${SLUG}.zip ossia
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: ossia-pd*.zip
# upload_to_deken:
# runs-on: ubuntu-latest
# needs: [ build-macos, build-windows, build-rpi, build-linux ]
# steps:
# - uses: actions/[email protected]
# with:
# name: ossia-pd
# path: ossia
# - name: Create Deken Package
# shell: bash
# run: |
# SHORT=${GITHUB_REF:11} # remove the 'refs/tags/' prefix
# SLUG=${SHORT//\//_} # replace '/' with '_'
# docker run --rm -e DEKEN_USERNAME -e DEKEN_PASSWORD --user $(id -u) --volume ossia:/ossia registry.git.iem.at/pd/deken deken upload -v "${SLUG}" /ossia