-
Notifications
You must be signed in to change notification settings - Fork 5
/
.travis.yml
116 lines (110 loc) · 3.95 KB
/
.travis.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
language: c++
branches:
except:
- automatic
cache:
directories:
- download
matrix:
include:
- os: linux
dist: bionic
env:
- _BUILD=win32
- _HOST=i686-w64-mingw32
before_install:
- docker pull archlinux
install:
- container=$(docker run -d -i -t -v /home:/home archlinux /bin/bash)
- |
cross() {
docker exec -w "$(pwd)" -e "_BUILD=$_BUILD" -e "_MINGW=$_MINGW" -e "_HOST=$_HOST" -i -t "$container" "$@"
}
script:
- cross bash .travis/script-mingw.sh
- mkdir -p release/
- mkdir -p temp/smf-dsp-"$_BUILD"/
- for f in build/*.{exe,dll}; do cp -f "$f" temp/smf-dsp-"$_BUILD"/; done
- cd temp
- zip -9 -r ../release/smf-dsp-"$_BUILD".zip smf-dsp-"$_BUILD"/
- cd ..
- os: linux
dist: bionic
env:
- _BUILD=win64
- _HOST=x86_64-w64-mingw32
before_install:
- docker pull archlinux
install:
- container=$(docker run -d -i -t -v /home:/home archlinux /bin/bash)
- |
cross() {
docker exec -w "$(pwd)" -e "_BUILD=$_BUILD" -e "_MINGW=$_MINGW" -e "_HOST=$_HOST" -i -t "$container" "$@"
}
script:
- cross bash .travis/script-mingw.sh
- mkdir -p release/
- mkdir -p temp/smf-dsp-"$_BUILD"/
- for f in build/*.{exe,dll}; do cp -f "$f" temp/smf-dsp-"$_BUILD"/; done
- cd temp
- zip -9 -r ../release/smf-dsp-"$_BUILD".zip smf-dsp-"$_BUILD"/
- cd ..
- os: linux
dist: xenial
env:
- Build=linux64
before_install:
- mkdir -p download/
- |
getfile() {
local url="$1"
local base="$2"
test -z "$base" && base="$(basename "$1")"
test -f download/"$base" || wget -O download/"$base" "$url"
}
- getfile https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage
- getfile https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
install:
- sudo install -m 755 download/appimagetool-x86_64.AppImage /usr/bin/appimagetool
- sudo install -m 755 download/linuxdeploy-x86_64.AppImage /usr/bin/linuxdeploy
script:
- mkdir -p build/
- cd build
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ..
- make -j$(nproc)
- cd ..
- make -C build install DESTDIR="$(pwd)/target"
- linuxdeploy --appdir="$(pwd)/target"
- appimagetool "$(pwd)/target"
- mkdir -p release/
- mv -f *.AppImage release/
addons:
apt:
packages:
- cmake
- libsdl2-dev
- libsdl2-image-dev
- libuv1-dev
- libjack-jackd2-dev
- libpulse-dev
- libasound2-dev
- libfluidsynth-dev
before_deploy:
- |
if test "$TRAVIS_BRANCH" = "master" -a "$TRAVIS_PULL_REQUEST" = "false"; then
export TRAVIS_TAG=automatic
git tag -f "$TRAVIS_TAG"
fi
deploy:
provider: releases
api_key: "$GITHUB_TOKEN"
file: release/*
file_glob: true
prerelease: true
overwrite: true
edge: true
on:
branch: master
env:
global:
secure: "ot8UR1/k0r8yCKRIRXLy3SEaZ1RnvkhoGs1+uVzkYuJHmVx4zw6ZU/kM7gDMDaAZ0b/89r+CdTX7nD5lHkxt4ktCjgl3Cx5RUSkg27X5H8WeTdIqYXt6r7U16EArnuv9vuovQ2n7FXsss//W9iQdI96YLkUtSm8Vr32Yo8IujcbIjs2i4FjpqDhpYBwggM/DH2jNk+gWnQBFV33Sn2q43eVVFz/ihg4Bof4nXXOCh1szWnR73qePvRRwUcHZK+MlLTiS53myHUsTEvrG0KAN0Tg5y03zR78bA/JXmDljaTRECX9AQkpqrspbgQai+cRv8CiqVbfPTIItRLzZ8onXdi23zfV8kLYeeiGu09DGIgaDAew+sVS71RGS97Eod6i645iU9rAe8YEb3URc1xu7uV1k4Dwd9lYYzrjooKC1cbiNomxWuBIUSydcvPiklVB80XmcjFLwEFdxp4OCujcnM1yiGDx/o3rB9LDDEbEd9e67MIz8k4VhBzGG0doapMEqrn5qtxRhqznb3V29SZ3XLk3zJgiKtkNDNGK4bxfUyLcxmJ3i/s9q4v1lQD34hdW/SVtgkjabXwolfmhI04mvL2uAZ7cKTRRzhI+TIWGB7riRAICFbcDa6wXBjLD+UpdouzKzSJbeUgzQvjsPnH+la5ES4knlaB8gkC7GMhQJmyE="