forked from redboltz/mqtt_cpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
61 lines (58 loc) · 2.97 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
sudo: false
language: cpp
install:
- export BASE=`pwd`
- mkdir ${BASE}/usr
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then wget --no-check-certificate https://cmake.org/files/v3.7/cmake-3.7.1-Linux-x86_64.sh -O cmake-3.7.1-Linux-x86_64.sh; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then chmod a+x cmake-3.7.1-Linux-x86_64.sh; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then ./cmake-3.7.1-Linux-x86_64.sh --prefix=${BASE}/usr --skip-license; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then export PATH="${BASE}/usr/bin:$PATH"; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then export LD_LIBRARY_PATH="${BASE}/usr/lib:$LD_LIBRARY_PATH"; fi
- if [ "$CXX" = "g++" ]; then export CXX="g++-6" CC="gcc-6"; fi
- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" == "linux" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then wget http://valgrind.org/downloads/valgrind-3.12.0.tar.bz2 && tar xjf valgrind-3.12.0.tar.bz2 && cd valgrind-3.12.0 && ./configure --prefix=${BASE}/usr > /dev/null && make -j3 > /dev/null && make install > /dev/null && cd ..; fi
# boost
- wget http://sourceforge.net/projects/boost/files/boost/1.63.0/boost_1_63_0.zip && unzip -q boost_1_63_0.zip && cd boost_1_63_0 && ./bootstrap.sh && ./b2 -j3 --prefix=${BASE}/usr --with-timer --with-chrono --with-test address-model=64 install > /dev/null && cd ..
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz && tar xf openssl-1.0.2k.tar.gz && cd openssl-1.0.2k && ./config --prefix=${BASE}/usr && make && make install > /dev/null && cd ..; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz && tar xf openssl-1.0.2k.tar.gz && cd openssl-1.0.2k && ./Configure darwin64-x86_64-cc --prefix=${BASE}/usr && make && make install > /dev/null && cd ..; fi
matrix:
include:
- os: osx
compiler: clang
env: FLAGS="-DMQTT_NO_TLS=ON"
- os: osx
compiler: clang
env: FLAGS="-DMQTT_NO_TLS=OFF"
- os: linux
compiler: clang
env: FLAGS="-DMQTT_NO_TLS=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
- llvm-toolchain-precise
packages:
- g++-multilib
- gcc-multilib
- gcc-5-multilib
- g++-5-multilib
- bzip2
- clang-3.7
- libc6-dbg
- os: linux
compiler: gcc
env: FLAGS="-DMQTT_NO_TLS=OFF"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-multilib
- gcc-multilib
- gcc-6-multilib
- g++-6-multilib
- bzip2
- libc6-dbg
script:
- mkdir build && cd build && cmake -DCMAKE_CXX_COMPILER="${CXX}" -DCMAKE_C_COMPILER="${CC}" -DCMAKE_LIBRARY_PATH="${BASE}/usr/lib" -DBOOST_ROOT="${BASE}/usr" -DOPENSSL_ROOT_DIR="${BASE}/usr" $FLAGS .. && make VERBOSE=1 && ctest -VV