blob: 4a88dce5a9a14c103919c177283e3cdd24015c2d [file] [log] [blame]
Lei Zhangc4ebb552016-05-04 11:29:21 -04001# Linux and Mac Build Configuration for Travis
2
3language: cpp
4
5os:
6 - linux
7 - osx
8
9# Use Ubuntu 14.04 LTS (Trusty) as the Linux testing environment.
10sudo: required
11dist: trusty
12
13env:
14 - GLSLANG_BUILD_TYPE=Release
15 - GLSLANG_BUILD_TYPE=Debug
16
17compiler:
18 - clang
19 - gcc
20
21matrix:
22 fast_finish: true # Show final status immediately if a test fails.
23 exclude:
24 # Skip GCC builds on Mac OS X.
25 - os: osx
26 compiler: gcc
27
28cache:
29 apt: true
30
31branches:
32 only:
33 - master
34
35addons:
36 apt:
37 packages:
38 - clang-3.6
39 - ninja-build
40
41install:
42 # Install ninja on Mac OS X.
43 - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update && brew install ninja; fi
44 # Make sure that clang-3.6 is selected.
45 - if [[ "$TRAVIS_OS_NAME" == "linux" && "$CC" == "clang" ]]; then
46 export CC=clang-3.6 CXX=clang++-3.6;
47 fi
48
49before_script:
50 - git clone https://github.com/google/googletest.git External/googletest
51
52script:
53 - mkdir build && cd build
54 # We need to install the compiled binaries so the paths in the runtests script can resolve correctly.
55 - cmake -GNinja -DCMAKE_BUILD_TYPE=${GLSLANG_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=`pwd`/install ..
56 - ninja install
57 # Run Google-Test-based tests.
58 - ctest --output-on-failure
59 # Run runtests-based tests.
60 - cd ../Test && ./runtests