-
Notifications
You must be signed in to change notification settings - Fork 49
314 lines (312 loc) · 12 KB
/
main.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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
name: build
on: [push, pull_request]
jobs:
build-windows-msvc:
runs-on: windows-2019
steps:
- uses: actions/checkout@v1
# this runs vcvarsall for us, so we get the MSVC toolchain in PATH.
- uses: seanmiddleditch/gha-setup-vsdevenv@master
- name: build burn
run: |
cl source/burn.c source/dos.c
- name: build edit
run: |
cl source/edit.c source/dos.c
- name: build julia
run: |
cl source/julia.c source/dos.c
- name: build mandelbrot
run: |
cl source/mandelbrot.c source/dos.c
- name: build plasma
run: |
cl source/plasma.c source/dos.c
- name: build raycast
run: |
cl source/raycast.c source/dos.c
- name: build rotozoom
run: |
cl source/rotozoom.c source/dos.c
- name: build sound
run: |
cl source/sound.c source/dos.c
- name: build stranded
run: |
cl source/stranded.c source/dos.c
- name: build tracker
run: |
cl source/tracker.c source/dos.c
- name: build tunnel
run: |
cl source/tunnel.c source/dos.c
- name: build voxel
run: |
cl source/voxel.c source/dos.c
- name: build command
run: |
cl source/command.c source/dos.c
build-windows-msvc-cpp:
runs-on: windows-2019
steps:
- uses: actions/checkout@v1
# this runs vcvarsall for us, so we get the MSVC toolchain in PATH.
- uses: seanmiddleditch/gha-setup-vsdevenv@master
- name: build burn
run: |
cl /Tp source/burn.c /Tp source/dos.c
- name: build edit
run: |
cl /Tp source/edit.c /Tp source/dos.c
- name: build julia
run: |
cl /Tp source/julia.c /Tp source/dos.c
- name: build mandelbrot
run: |
cl /Tp source/mandelbrot.c /Tp source/dos.c
- name: build plasma
run: |
cl /Tp source/plasma.c /Tp source/dos.c
- name: build raycast
run: |
cl /Tp source/raycast.c /Tp source/dos.c
- name: build rotozoom
run: |
cl /Tp source/rotozoom.c /Tp source/dos.c
- name: build sound
run: |
cl /Tp source/sound.c /Tp source/dos.c
- name: build stranded
run: |
cl /Tp source/stranded.c /Tp source/dos.c
- name: build tracker
run: |
cl /Tp source/tracker.c /Tp source/dos.c
- name: build tunnel
run: |
cl /Tp source/tunnel.c /Tp source/dos.c
- name: build voxel
run: |
cl /Tp source/voxel.c /Tp source/dos.c
- name: build command
run: |
cl /Tp source/command.c /Tp source/dos.c
build-windows-tcc:
runs-on: windows-2019
steps:
- uses: actions/checkout@v1
- name: build burn
run: |
tcc/tcc source/burn.c source/dos.c
- name: build edit
run: |
tcc/tcc source/edit.c source/dos.c
- name: build julia
run: |
tcc/tcc source/julia.c source/dos.c
- name: build mandelbrot
run: |
tcc/tcc source/mandelbrot.c source/dos.c
- name: build plasma
run: |
tcc/tcc source/plasma.c source/dos.c
- name: build raycast
run: |
tcc/tcc source/raycast.c source/dos.c
- name: build rotozoom
run: |
tcc/tcc source/rotozoom.c source/dos.c
- name: build sound
run: |
tcc/tcc source/sound.c source/dos.c
- name: build stranded
run: |
tcc/tcc source/stranded.c source/dos.c
- name: build tracker
run: |
tcc/tcc source/tracker.c source/dos.c
- name: build tunnel
run: |
tcc/tcc source/tunnel.c source/dos.c
- name: build voxel
run: |
tcc/tcc source/voxel.c source/dos.c
- name: build command
run: |
tcc/tcc source/command.c source/dos.c
build-macos:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v1
- name: install dependencies
run: brew install sdl2 glew
- name: build burn
run: |
clang source/burn.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build edit
run: |
clang source/edit.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build julia
run: |
clang source/julia.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build mandelbrot
run: |
clang source/mandelbrot.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build plasma
run: |
clang source/plasma.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build raycast
run: |
clang source/raycast.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build rotozoom
run: |
clang source/rotozoom.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build sound
run: |
clang source/sound.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build stranded
run: |
clang source/stranded.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build tracker
run: |
clang source/tracker.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build tunnel
run: |
clang source/tunnel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build voxel
run: |
clang source/voxel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
build-macos-cpp:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v1
- name: install dependencies
run: brew install sdl2 glew
- name: build burn
run: |
clang++ source/burn.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build edit
run: |
clang++ source/edit.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build julia
run: |
clang++ source/julia.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build mandelbrot
run: |
clang++ source/mandelbrot.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build plasma
run: |
clang++ source/plasma.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build raycast
run: |
clang++ source/raycast.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build rotozoom
run: |
clang++ source/rotozoom.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build sound
run: |
clang++ source/sound.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build stranded
run: |
clang++ source/stranded.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build tracker
run: |
clang++ source/tracker.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build tunnel
run: |
clang++ source/tunnel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
- name: build voxel
run: |
clang++ source/voxel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -framework OpenGL -lpthread
build-linux-gcc:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: install dependencies
run: |
sudo apt-get update
sudo apt-get install -qq libsdl2-dev
sudo apt-get install -qq libglew-dev
- name: build burn
run: |
gcc source/burn.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build edit
run: |
gcc source/edit.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build julia
run: |
gcc source/julia.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build mandelbrot
run: |
gcc source/mandelbrot.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build plasma
run: |
gcc source/plasma.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build raycast
run: |
gcc source/raycast.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build rotozoom
run: |
gcc source/rotozoom.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build sound
run: |
gcc source/sound.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build stranded
run: |
gcc source/stranded.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build tracker
run: |
gcc source/tracker.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build tunnel
run: |
gcc source/tunnel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
- name: build voxel
run: |
gcc source/voxel.c source/dos.c `sdl2-config --libs --cflags` -lGLEW -lGL -lm -lpthread
build-wasm:
runs-on: windows-2019
steps:
- uses: actions/checkout@v1
- uses: robinraju/release-downloader@v1.2
with:
repository: "mattiasgustavsson/dos-like"
tag: "wasm-env"
fileName: "dos-like-wasm-build-env-win.zip"
- name: install dependencies
run: 7z x dos-like-wasm-build-env-win.zip
- name: build burn
run: |
wasm\node wasm\wajicup.js source/burn.c source/dos.c burn.html
- name: build edit
run: |
wasm\node wasm\wajicup.js -embed source/rotozoom.c source/rotozoom.c source/edit.c source/dos.c edit.html
- name: build julia
run: |
wasm\node wasm\wajicup.js source/julia.c source/dos.c julia.html
- name: build mandelbrot
run: |
wasm\node wasm\wajicup.js source/mandelbrot.c source/dos.c mandelbrot.html
- name: build plasma
run: |
wasm\node wasm\wajicup.js source/plasma.c source/dos.c plasma.html
- name: build raycast
run: |
wasm\node wasm\wajicup.js -embed files/raycast/ files/raycast/ source/raycast.c source/dos.c raycast.html
- name: build rotozoom
run: |
wasm\node wasm\wajicup.js -embed files/rotozoom.gif files/rotozoom.gif source/rotozoom.c source/dos.c rotozoom.html
- name: build sound
run: |
wasm\node wasm\wajicup.js -embed files/sound/ files/sound/ source/sound.c source/dos.c sound.html
- name: build stranded
run: |
wasm\node wasm\wajicup.js -embed files/stranded/ files/stranded/ source/stranded.c source/dos.c stranded.html
- name: build tracker
run: |
wasm\node wasm\wajicup.js source/tracker.c source/dos.c tracker.html
- name: build tunnel
run: |
wasm\node wasm\wajicup.js -embed files/tunnel.gif files/tunnel.gif source/tunnel.c source/dos.c tunnel.html
- name: build voxel
run: |
wasm\node wasm\wajicup.js -embed files/C1W.gif files/C1W.gif -embed files/D1.gif files/D1.gif source/voxel.c source/dos.c voxel.html