language: cpp sudo: false # Save common build configurations as shortcuts, so we can reference them later. addons_shortcuts: addons_clang35: &clang35 apt: sources: [ 'ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5' ] packages: [ 'gdb', 'clang-3.5', 'libstdc++-4.9-dev', 'libstdc++6', 'libllvm3.4', 'xutils-dev', 'libxxf86vm-dev', 'x11proto-xf86vidmode-dev', 'mesa-utils' ] addons_gcc49: &gcc49 apt: sources: [ 'ubuntu-toolchain-r-test' ] packages: [ 'gdb', 'g++-4.9', 'gcc-4.9', 'libllvm3.4', 'xutils-dev', 'libxxf86vm-dev', 'x11proto-xf86vidmode-dev', 'mesa-utils' ] addons_clang38-tidy: &clang38-tidy apt: sources: [ 'ubuntu-toolchain-r-test', 'llvm-toolchain-precise' ] packages: [ 'clang-tidy-3.8', 'clang-3.8', 'libgcc-4.9-dev', 'libstdc++-4.9-dev', 'libstdc++6', 'libllvm3.4', 'libclang-common-3.8-dev', 'libclang1-3.8', 'liblldb-3.8', 'libllvm3.8', 'lldb-3.8', 'llvm-3.8', 'llvm-3.8-dev', 'llvm-3.8-runtime', 'xutils-dev', 'libxxf86vm-dev', 'x11proto-xf86vidmode-dev', 'mesa-utils' ] matrix: exclude: - os: linux include: # OS X/Node.js 4 - Xcode 7 - os: osx osx_image: xcode7 compiler: clang env: FLAVOR=node NODE_VERSION=4 # Linux/Node.js 4 - Clang 3.5 - Release - os: linux compiler: ": node4-clang35-release" env: FLAVOR=node BUILDTYPE=Release NODE_VERSION=4 _CXX=clang++-3.5 _CC=clang-3.5 CCACHE=1 addons: *clang35 # Linux - GCC 4.9 - Debug - os: linux compiler: ": linux-gcc49-debug" env: FLAVOR=linux ACTION=coveralls _CXX=g++-4.9 _CC=gcc-4.9 CCACHE=1 addons: *gcc49 # Linux - GCC 4.9 - Release - os: linux compiler: ": linux-gcc49-release" env: FLAVOR=linux BUILDTYPE=Release _CXX=g++-4.9 _CC=gcc-4.9 CCACHE=1 addons: *gcc49 # Linux - Clang 3.5 - Debug - os: linux compiler: ": linux-clang35-debug" env: FLAVOR=linux BUILDTYPE=Debug _CXX=clang++-3.5 _CC=clang-3.5 CCACHE=1 addons: *clang35 # Linux - Clang 3.5 - Release - os: linux compiler: ": linux-clang35-release" env: FLAVOR=linux BUILDTYPE=Release _CXX=clang++-3.5 _CC=clang-3.5 CCACHE=1 addons: *clang35 # clang-tidy - Clang 3.8 - Release - os: linux compiler: ": tidy-clang38-release" env: FLAVOR=linux ACTION=tidy BUILDTYPE=Release _CXX=clang++-3.8 _CC=clang-3.8 AWS_ACCESS_KEY_ID= addons: *clang38-tidy cache: directories: - $HOME/.ccache - $HOME/.cache/pip - $HOME/build/mapbox/mapbox-gl-native/.binaries - $HOME/build/mapbox/mapbox-gl-native/.scripts env: global: - TERM: dumb # AWS - secure: "MZHblLZXG/jWf2w0ZFlxCLDwx2qtGgRDODQyg1BR7JIuMz6AtWv8XR/sUczWLbiABCL0a/NzJF1g4v2pI7X69IntcjOdIABBgTh7++6+1TJ0Kp8viEltb55nQG3lHy/R6fOaI7Pj9tuCX0PCRtGA5C/fGnodLGEjy3RVOJ09ln0=" - secure: "KaSQbhgjtV7ZCkesHmvrNsbQVjk5SPfGKB1VkWenRGYhLF45HpSRNwSxMQddZ566Pg7qIFgF1iWl/B0QW3B6AWL5WmzQ5AOJgwS876pNIc/UT7ubMPtgAtjpvw1bQvQP3B8MrB+3OE5c6tD+a3LhR9krV//dOsfErR5Yy+3Mbkc=" # Access Token - secure: "RiBIBfVhhaMjU5ksuwJO3shdvG9FpinBjdSv4co9jg9171SR8edNriedHjVKSIeBhSGNmZmX+twS3dJS/By6tl/LKh9sTynA+ZAYYljkE7jn881B/gMrlYvdAA6og5KvkhV1/0iJWlhuZrMTkhpDR200iLgg3EWBhWjltzmDW/I=" before_install: - source ./scripts/set_compiler.sh - source ./scripts/travis_helper.sh - if [[ ${ACTION:-0} == 'coveralls' ]]; then rvm install 2.3.0; rvm use 2.3.0; rvm rubygems latest --force; gem install coveralls-lcov; fi install: - ./platform/${FLAVOR}/scripts/install.sh before_script: - if command -v ccache >/dev/null 2>&1; then ccache --zero-stats ; fi script: - ./platform/${FLAVOR}/scripts/${ACTION:-run}.sh after_failure: - "[ -f ./platform/${FLAVOR}/scripts/after_failure.sh ] && ./platform/${FLAVOR}/scripts/after_failure.sh" after_script: - if command -v ccache >/dev/null 2>&1; then ccache --show-stats ; fi - "[ -f ./platform/${FLAVOR}/scripts/after_script.sh ] && ./platform/${FLAVOR}/scripts/after_script.sh" notifications: slack: secure: HHQYr7sF8M1SzoWSqgKVYtwAgGdLLCyTMsQjFhEEQNYO92ZwURE5s03qWTGH5k8+4Yqn26yrXt3NztLC4JIOpcGervN2mSZyq4dZgFTcWEd61igw0qwSenlwvFfbE1ASK/KYCzfyn9MIfHN+ovwLoRxXZkPwinKDvl3DXjBaFNg= git: submodules: false