-
Notifications
You must be signed in to change notification settings - Fork 10
/
.travis.yml
91 lines (86 loc) · 3.03 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
language: node_js
node_js:
- "6"
sudo: false
matrix:
include:
# test on docker+ubuntu
- os: linux
compiler: clang
services:
- docker
sudo: true
dist: trusty
env: DOCKERFILE=Dockerfile
before_install: []
install:
- docker build -t tile-count-image -f ${DOCKERFILE} .
script:
- docker run -it tile-count-image
# debug+santizer build
- os: linux
compiler: clang
sudo: true # to workaround https://github.com/mapbox/node-cpp-skel/issues/93
env: CLANG_VERSION='5.0.1' BUILDTYPE=Debug CC="clang" CXX="clang++" CXXFLAGS="-fsanitize=address,undefined,integer -fsanitize-address-use-after-scope -fno-sanitize-recover=all" CFLAGS="-fsanitize=address,undefined,integer -fsanitize-address-use-after-scope -fno-sanitize-recover=all" LDFLAGS="-fsanitize=address,undefined,integer"
addons:
apt:
sources: ['ubuntu-toolchain-r-test' ]
packages: [ 'libstdc++6','libstdc++-5-dev', 'libsqlite3-dev', 'libpng-dev' ]
# coverage+debug build
- os: linux
compiler: clang
env: CLANG_VERSION='5.0.1' BUILDTYPE=Debug CC="clang" CXX="clang++" CXXFLAGS="--coverage" CFLAGS="--coverage" LDFLAGS="--coverage"
addons:
apt:
sources: ['ubuntu-toolchain-r-test' ]
packages: [ 'libstdc++6','libstdc++-5-dev', 'libsqlite3-dev', 'libpng-dev' ]
# release+linux+g++
- os: linux
compiler: gcc
env: BUILDTYPE=Release CC="gcc-4.9" CXX="g++-4.9"
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: [ 'g++-4.9', 'libsqlite3-dev', 'libpng-dev' ]
# release+linux+clang++
- os: linux
compiler: clang
env: CLANG_VERSION='5.0.1' BUILDTYPE=Release CC="clang" CXX="clang++"
addons:
apt:
sources: ['ubuntu-toolchain-r-test' ]
packages: [ 'libstdc++6','libstdc++-5-dev', 'libsqlite3-dev', 'libpng-dev' ]
# release+osx
- os: osx
compiler: clang
env: BUILDTYPE=Release
before_install:
- brew update && brew install libpng || true
# debug+osx
- os: osx
compiler: clang
env: BUILDTYPE=Debug
before_install:
- brew update && brew install libpng || true
install:
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- export PATH=${DEPS_DIR}/bin:${PATH} && mkdir -p ${DEPS_DIR}
- |
if [[ ${CLANG_VERSION:-false} != false ]]; then
export CCOMPILER='clang'
export CXXCOMPILER='clang++'
CLANG_URL="https://mason-binaries.s3.amazonaws.com/${TRAVIS_OS_NAME}-x86_64/clang++/${CLANG_VERSION}.tar.gz"
travis_retry wget --quiet -O - ${CLANG_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}
fi
- BUILDTYPE=${BUILDTYPE} make -j2
before_script:
# tests depend on tippecanoe
- export TIPPECANOE_VERSION="1.26.3"
- wget https://github.com/mapbox/tippecanoe/archive/${TIPPECANOE_VERSION}.tar.gz
- tar -xvf ${TIPPECANOE_VERSION}.tar.gz
- cd tippecanoe-${TIPPECANOE_VERSION}
- make
- export PATH=$(pwd):${PATH}
- cd ../
script:
- BUILDTYPE=${BUILDTYPE} make test