forked from DeviationTX/deviation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
106 lines (96 loc) · 4.35 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
# boards are ordered by priority so that when monitoring a build developers get feedback on the important ones first.
env:
#Do not define 'global' env vars here. They cannot be used with API builds
matrix:
- TARGET=devo8
- TARGET=devo10
- TARGET=devo12
- TARGET=devo7e
- TARGET=devof12e
- TARGET=at9
- MAKETARGET=win_emu_devo8
# - COMPILER=latest TARGET=devo8
# use new docker environment
sudo: false
#sudo: required
#dist: trusty
addons:
apt:
packages:
- build-essential
- git
- libc6-i386
- mingw32
- mingw32-binutils
- mingw32-runtime
# - gcc-arm-none-eabi
#Do NOT set these. They set 'CC' which breaks the build
#language: c
#compiler: gcc
before_install:
- if [ ! -d "$HOME/gcc-arm-none-eabi-4_8-2013q4/bin" ]; then
pushd $HOME;
curl --retry 10 --retry-max-time 120 -L "https://launchpad.net/gcc-arm-embedded/4.8/4.8-2013-q4-major/+download/gcc-arm-none-eabi-4_8-2013q4-20131204-linux.tar.bz2" | tar xfj -;
popd;
fi;
# don't build 'tests' because they don't work on a cross-compile, so we need to specify 'DIRS' explicitly
- if [ ! -d "$HOME/fltk-1.3.0-w32/bin" ]; then
mkdir $HOME/src;
mkdir $HOME/fltk-1.3.0-w32;
pushd $HOME/src;
curl --retry 10 --retry-max-time 120 -L "http://fltk.org/pub/fltk/1.3.0/fltk-1.3.0-source.tar.gz" | tar xzf -;
cd fltk-1.3.0;
./configure --prefix=$HOME/fltk-1.3.0-w32 --enable-localzlib --enable-localpng --disable-gl --host=i586-mingw32msvc &&
make DIRS="jpeg zlib png src fluid" &&
make install DIRS="jpeg zlib png src fluid";
popd;
fi;
- if [ ! -d "$HOME/portaudio-w32/bin" ]; then
mkdir $HOME/src;
mkdir $HOME/portaudio-w32;
pushd $HOME/src;
curl --retry 10 --retry-max-time 120 -L "http://www.portaudio.com/archives/pa_stable_v19_20140130.tgz" | tar xzf -;
cd portaudio;
./configure --prefix=$HOME/portaudio-w32 --host=i586-mingw32msvc &&
make install;
popd;
fi;
- openssl aes-256-cbc -K $encrypted_39cc7b34336f_key -iv $encrypted_39cc7b34336f_iv -in install_nightlies.tar.enc -out install_nightlies.tar -d;
tar -xf install_nightlies.tar;
rm -f install_nightlies.tar
install:
- export PATH=$PATH:$HOME/gcc-arm-none-eabi-4_8-2013q4/bin
# - "export TRAVIS_COMMIT_MSG=\"$(git log --format=%B --no-merges -n 1)\""a
- curl -s -L "https://api.travis-ci.org/repos/$TRAVIS_REPO_SLUG/builds/$TRAVIS_BUILD_ID" | python -c 'import sys, json; a = json.load(sys.stdin); print "export TRAVIS_EVENT_TYPE=" + a.get("event_type",""); print "export TRAVIS_COMMIT_MSG=\"" + a.get("message","").replace("\"", "\\\"") + "\""'
- source <(curl -s -L "https://api.travis-ci.org/repos/$TRAVIS_REPO_SLUG/builds/$TRAVIS_BUILD_ID" | python -c 'import sys, json; a = json.load(sys.stdin); print "export TRAVIS_EVENT_TYPE=" + a.get("event_type",""); print "export TRAVIS_COMMIT_MSG=\"" + a.get("message","").replace("\"", "\\\"") + "\""')
- if [[ "$MAKETARGET" == *"win"* ]]; then
export FLTK_DIR=$HOME/fltk-1.3.0-w32;
export PORTAUDIO_DIR=$HOME/portaudio-w32;
fi;
before_script:
- echo $PATH
- echo $HOME
- arm-none-eabi-gcc --version
script: cd src && make $MAKETARGET
after_success:
- if [ "$TRAVIS_EVENT_TYPE" == "api" ]; then
export NIGHTLY_DATE=$(echo $TRAVIS_COMMIT_MSG | egrep -o '[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}');
if [[ "$TRAVIS_COMMIT_MSG" == "Nightly Build "* ]] && [ "$NIGHTLY_DATE" != "" ]; then
echo "Uploading Nightly - $NIGHTLY_DATE";
../utils/upload_test_build.pl -skip -nightly "$NIGHTLY_DATE" -delete;
../utils/upload_test_build.pl -skip -nightly "$NIGHTLY_DATE" *.zip;
else
export RELEASE_VERSION=$(echo $TRAVIS_BRANCH | egrep -o '[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+');
if [ "$RELEASE_VERSION" != "" ] && [ "$TRAVIS_BRANCH" == "v$RELEASE_VERSION" ]; then
echo "Releasing $RELEASE_VERSION";
../utils/upload_test_build.pl -skip -release "$RELEASE_VERSION" -delete;
../utils/upload_test_build.pl -skip -release "$RELEASE_VERSION" *.zip;
fi;
fi;
fi;
cache:
apt: true
directories:
- $HOME/gcc-arm-none-eabi-4_8-2013q4
- $HOME/fltk-1.3.0-w32
- $HOME/portaudio-w32