• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Build matrix / environment variables are explained on:
2# http://about.travis-ci.com/docs/user/build-configuration/
3# This file can be validated on: http://www.yamllint.com/
4# Or using the Ruby based travel command line tool:
5# gem install travis --no-rdoc --no-ri
6# travis lint .travis.yml
7language: cpp
8sudo: false
9addons:
10  homebrew:
11    packages:
12    - clang-format
13    - meson
14    - ninja
15    update: false # do not update homebrew by default
16  apt:
17    sources:
18    - ubuntu-toolchain-r-test
19    - llvm-toolchain-xenial-8
20    packages:
21    - clang-format-8
22    - clang-8
23    - valgrind
24matrix:
25  include:
26    - name: Mac clang meson static release testing
27      os: osx
28      osx_image: xcode11
29      compiler: clang
30      env:
31         CXX="clang++"
32         CC="clang"
33         LIB_TYPE=static
34         BUILD_TYPE=release
35      script: ./.travis_scripts/meson_builder.sh
36    - name: Linux xenial clang meson static release testing
37      os: linux
38      dist: xenial
39      compiler: clang
40      env:
41         CXX="clang++"
42         CC="clang"
43         LIB_TYPE=static
44         BUILD_TYPE=release
45         PYTHONUSERBASE="$(pwd)/LOCAL"
46         PATH="$PYTHONUSERBASE/bin:$PATH"
47      # before_install and install steps only needed for linux meson builds
48      before_install:
49          - source ./.travis_scripts/travis.before_install.${TRAVIS_OS_NAME}.sh
50      install:
51           - source ./.travis_scripts/travis.install.${TRAVIS_OS_NAME}.sh
52      script: ./.travis_scripts/meson_builder.sh
53    - name: Linux xenial gcc cmake coverage
54      os: linux
55      dist: xenial
56      compiler: gcc
57      env:
58        CXX=g++
59        CC=gcc
60        DO_Coverage=ON
61        BUILD_TOOL="Unix Makefiles"
62        BUILD_TYPE=Debug
63        LIB_TYPE=shared
64        DESTDIR=/tmp/cmake_json_cpp
65      before_install:
66          - pip install --user cpp-coveralls
67      script: ./.travis_scripts/cmake_builder.sh
68      after_success:
69          - coveralls --include src/lib_json --include include
70notifications:
71  email: false
72