forked from falkTX/Carla
-
Notifications
You must be signed in to change notification settings - Fork 0
154 lines (149 loc) · 4.83 KB
/
release.yml
File metadata and controls
154 lines (149 loc) · 4.83 KB
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
name: release
on: [push, pull_request]
env:
CACHE_VERSION: 5
DEBIAN_FRONTEND: noninteractive
HOMEBREW_NO_AUTO_UPDATE: 1
HOMEBREW_NO_INSTALL_CLEANUP: 1
PAWPAW_SKIP_LTO: 1
PAWPAW_SKIP_TESTS: 1
PAWPAW_VERSION: 2606d0d436471b12902d60edd2aeb2390db44e62
jobs:
# macOS native universal build
macos_universal:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Set up cache
uses: actions/cache@v4
with:
path: |
~/PawPawBuilds
key: macos-universal-v${{ env.CACHE_VERSION }}
- name: Set up dependencies
run: |
brew install cmake jq meson
- name: Bootstrap macOS universal
shell: bash
run: |
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
./PawPaw/.github/workflows/bootstrap-deps.sh macos-universal
./PawPaw/bootstrap-carla.sh macos-universal && ./PawPaw/.cleanup.sh macos-universal
- name: Build macOS universal
shell: bash
run: |
source PawPaw/local.env macos-universal
make features
make NOOPT=true ${MAKE_ARGS}
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} -j 1
- uses: actions/upload-artifact@v4
with:
name: macOS dmg
path: ./*.dmg
- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
./*.dmg
# linux with win32 cross-compilation
win32:
runs-on: ubuntu-latest
container:
image: ubuntu:22.04
steps:
- uses: actions/checkout@v4
- name: Set up cache
uses: actions/cache@v4
with:
path: |
~/PawPawBuilds
key: win32-v${{ env.CACHE_VERSION }}
- name: Bootstrap win32 cross-compiled
shell: bash
run: |
apt-get update -qq
apt-get install -yqq git unzip zip
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
./PawPaw/.github/workflows/bootstrap-deps.sh win32
./PawPaw/bootstrap-carla.sh win32 && ./PawPaw/.cleanup.sh win32
- name: Build win32 cross-compiled
shell: bash
run: |
source PawPaw/local.env win32
make features
make NOOPT=true ${MAKE_ARGS}
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} -j 1
- uses: actions/upload-artifact@v4
with:
name: win32 zip
path: ./*.zip
- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
./*.zip
# linux with win64 cross-compilation
win64:
runs-on: ubuntu-latest
container:
image: ubuntu:22.04
steps:
- uses: actions/checkout@v4
- name: Set up cache
uses: actions/cache@v4
with:
path: |
~/PawPawBuilds
key: win64-v${{ env.CACHE_VERSION }}
- name: Bootstrap win64 cross-compiled
shell: bash
run: |
apt-get update -qq
apt-get install -yqq git unzip zip
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
./PawPaw/.github/workflows/bootstrap-deps.sh win64
./PawPaw/bootstrap-carla.sh win64 && ./PawPaw/.cleanup.sh win64
- name: Build win64 cross-compiled
shell: bash
run: |
source PawPaw/local.env win64
make features
make NOOPT=true ${MAKE_ARGS}
make NOOPT=true ${MAKE_ARGS} win32r
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} TESTING=true -j 1
make dist ${MAKE_ARGS} -j 1
- uses: actions/upload-artifact@v4
with:
name: win64 zip
path: ./*.zip
- uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
draft: false
prerelease: false
files: |
./*.zip