...
|
...
|
@@ -19,7 +19,7 @@ sources:
|
19
|
19
|
tasks:
|
20
|
20
|
- prepare: |
|
21
|
21
|
rm -f out build
|
22
|
|
- mkdir -p out build/linux-amd64 build/windows-64bit build/macos build/rompack/uxn
|
|
22
|
+ mkdir -p out build/uxn-lin64 build/uxn-win64 build/uxn-mac64 build/essentials/uxn
|
23
|
23
|
umask 077
|
24
|
24
|
mkdir -p ~/.ssh
|
25
|
25
|
printf '%s\n' "${SSH_HOST_KEYS}" > ~/.ssh/known_hosts
|
...
|
...
|
@@ -27,9 +27,8 @@ tasks:
|
27
|
27
|
- build-linux: |
|
28
|
28
|
cd uxn
|
29
|
29
|
./build.sh --no-run
|
30
|
|
- mv bin ../build/linux-amd64/uxn
|
31
|
|
- - build-rompack: |
|
32
|
|
- mkdir -p rompack/uxn
|
|
30
|
+ mv bin ../build/uxn-lin64/uxn
|
|
31
|
+ - build-essentials: |
|
33
|
32
|
for F in uxn/projects/software/calc.tal uxn/projects/software/launcher.tal uxn/projects/examples/demos/piano.tal uxn/projects/examples/demos/clock.tal catclock/src/main.tal dexe/src/main.tal donsol/src/main.tal left/src/main.tal nasu/src/main.tal noodle/src/main.tal orca-toy/src/main.tal:orca.rom turye/src/main.tal; do
|
34
|
33
|
PROJECT="${F%%/*}"
|
35
|
34
|
if [ "${F}" = "${F%:*}" ]; then
|
...
|
...
|
@@ -41,26 +40,23 @@ tasks:
|
41
|
40
|
F="${F%:*}"
|
42
|
41
|
fi
|
43
|
42
|
[ -d "${PROJECT}" ] || git clone "https://git.sr.ht/~rabbits/${PROJECT}"
|
44
|
|
- ( cd "${PROJECT}" && ../build/linux-amd64/uxn/uxnasm "${F#*/}" "../build/rompack/uxn/${ROMNAME}" || rm -f "../build/rompack/uxn/${ROMNAME}" )
|
|
43
|
+ ( cd "${PROJECT}" && ../build/uxn-lin64/uxn/uxnasm "${F#*/}" "../build/essentials/uxn/${ROMNAME}" || rm -f "../build/essentials/uxn/${ROMNAME}" )
|
45
|
44
|
done
|
46
|
45
|
[ -e ~/.ssh/id_rsa ] || complete-build
|
47
|
46
|
- build-windows: |
|
48
|
|
- ssh win "rm -f uxn-windows-64bit.zip; export PATH=\"\${PATH}:/mingw64/bin\"; set -ex; cd uxn; git fetch; git checkout .; git clean -xfd; git checkout $(cd uxn && git rev-parse HEAD); MSYSTEM=MSYS ./build.sh --no-run"
|
49
|
|
- rsync -rp win:uxn/bin/ build/windows-64bit/uxn/
|
|
47
|
+ ssh win "export PATH=\"\${PATH}:/mingw64/bin\"; set -ex; cd uxn; git fetch; git checkout .; git clean -xfd; git checkout $(cd uxn && git rev-parse HEAD); MSYSTEM=MSYS ./build.sh --no-run"
|
|
48
|
+ rsync -rp win:uxn/bin/ build/uxn-win64/uxn/
|
50
|
49
|
- build-macos: |
|
51
|
|
- ssh mac "rm -f uxn-macos.tar.gz; export PATH=\"\${PATH}:/usr/local/bin\"; set -ex; cd uxn; git fetch; git checkout .; git clean -xfd; git checkout $(cd uxn && git rev-parse HEAD); ./build.sh --no-run"
|
52
|
|
- rsync -rp mac:uxn/bin/ build/macos/uxn/
|
|
50
|
+ ssh mac "export PATH=\"\${PATH}:/usr/local/bin\"; set -ex; cd uxn; git fetch; git checkout .; git clean -xfd; git checkout $(cd uxn && git rev-parse HEAD); ./build.sh --no-run"
|
|
51
|
+ rsync -rp mac:uxn/bin/ build/uxn-mac64/uxn/
|
53
|
52
|
- archive: |
|
54
|
|
- for PROJECT in linux-amd64 windows-64bit macos rompack; do
|
55
|
|
- tar -czf "out/uxn-${PROJECT}.tar.gz" -C "build/${PROJECT}" uxn
|
56
|
|
- ( cd "build/${PROJECT}" && zip -qr "../../out/uxn-${PROJECT}.zip" uxn )
|
57
|
|
- if [ "${PROJECT}" = rompack ]; then
|
58
|
|
- cp "out/uxn-${PROJECT}.tar.gz" out/uxn-essentials.tar.gz
|
59
|
|
- cp "out/uxn-${PROJECT}.zip" out/uxn-essentials.zip
|
60
|
|
- else
|
61
|
|
- cp build/rompack/uxn/* "build/${PROJECT}/uxn/"
|
62
|
|
- tar -czf "out/uxn-essentials-${PROJECT}.tar.gz" -C "build/${PROJECT}" uxn
|
63
|
|
- ( cd "build/${PROJECT}" && zip -qr "../../out/uxn-essentials-${PROJECT}.zip" uxn )
|
|
53
|
+ for PROJECT in uxn-lin64 uxn-win64 uxn-mac64 essentials; do
|
|
54
|
+ tar -czf "out/${PROJECT}.tar.gz" -C "build/${PROJECT}" uxn
|
|
55
|
+ ( cd "build/${PROJECT}" && zip -qr "../../out/${PROJECT}.zip" uxn )
|
|
56
|
+ if [ "${PROJECT}" != essentials ]; then
|
|
57
|
+ cp build/essentials/uxn/* "build/${PROJECT}/uxn/"
|
|
58
|
+ tar -czf "out/uxn-essentials-${PROJECT#uxn-}.tar.gz" -C "build/${PROJECT}" uxn
|
|
59
|
+ ( cd "build/${PROJECT}" && zip -qr "../../out/uxn-essentials-${PROJECT#uxn-}.zip" uxn )
|
64
|
60
|
fi
|
65
|
61
|
done
|
66
|
62
|
- upload: |
|