Christopher Dunn | da49859 | 2015-04-18 18:24:46 -0700 | [diff] [blame] | 1 | # Build matrix / environment variables are explained on: |
Baptiste Lepilleur | 5fff185 | 2013-05-08 22:04:57 +0000 | [diff] [blame] | 2 | # http://about.travis-ci.org/docs/user/build-configuration/ |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 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 |
Hans Johnson | fa61a49 | 2019-01-11 15:13:10 -0600 | [diff] [blame] | 7 | language: cpp |
| 8 | sudo: false |
Christopher Dunn | f4e6fcc | 2015-07-11 14:06:18 -0500 | [diff] [blame] | 9 | addons: |
Hans Johnson | fa61a49 | 2019-01-11 15:13:10 -0600 | [diff] [blame] | 10 | homebrew: |
Hans Johnson | 10a1a38 | 2019-01-12 08:54:50 -0600 | [diff] [blame] | 11 | packages: |
Jordan Bayles | f34bf24 | 2019-10-11 11:19:00 -0700 | [diff] [blame] | 12 | - clang-format |
Hans Johnson | 10a1a38 | 2019-01-12 08:54:50 -0600 | [diff] [blame] | 13 | - meson |
| 14 | - ninja |
Hans Johnson | fa61a49 | 2019-01-11 15:13:10 -0600 | [diff] [blame] | 15 | update: false # do not update homebrew by default |
Christopher Dunn | f4e6fcc | 2015-07-11 14:06:18 -0500 | [diff] [blame] | 16 | apt: |
| 17 | sources: |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 18 | - ubuntu-toolchain-r-test |
| 19 | - llvm-toolchain-xenial-8 |
Christopher Dunn | f4e6fcc | 2015-07-11 14:06:18 -0500 | [diff] [blame] | 20 | packages: |
Jordan Bayles | f34bf24 | 2019-10-11 11:19:00 -0700 | [diff] [blame] | 21 | - clang-format-8 |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 22 | - clang-8 |
Christopher Dunn | d8e8c14 | 2015-07-11 14:09:52 -0500 | [diff] [blame] | 23 | - valgrind |
Christopher Dunn | da49859 | 2015-04-18 18:24:46 -0700 | [diff] [blame] | 24 | matrix: |
Christopher Dunn | da49859 | 2015-04-18 18:24:46 -0700 | [diff] [blame] | 25 | include: |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 26 | - name: Mac clang meson static release testing |
| 27 | os: osx |
Jordan Bayles | f34bf24 | 2019-10-11 11:19:00 -0700 | [diff] [blame] | 28 | osx_image: xcode11 |
Christopher Dunn | da49859 | 2015-04-18 18:24:46 -0700 | [diff] [blame] | 29 | compiler: clang |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 30 | env: |
| 31 | CXX="clang++" |
| 32 | CC="clang" |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 33 | LIB_TYPE=static |
| 34 | BUILD_TYPE=release |
| 35 | script: ./.travis_scripts/meson_builder.sh |
Jordan Bayles | 2690bc9 | 2019-06-25 14:48:40 -0700 | [diff] [blame] | 36 | - name: Linux xenial clang meson static release testing |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 37 | os: linux |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 38 | dist: xenial |
Christopher Dunn | da49859 | 2015-04-18 18:24:46 -0700 | [diff] [blame] | 39 | compiler: clang |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 40 | env: |
| 41 | CXX="clang++" |
| 42 | CC="clang" |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 43 | LIB_TYPE=static |
| 44 | BUILD_TYPE=release |
Christopher Dunn | 1664b6b | 2020-10-10 09:06:43 -0500 | [diff] [blame] | 45 | PYTHONUSERBASE="$(pwd)/LOCAL" |
| 46 | PATH="$PYTHONUSERBASE/bin:$PATH" |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 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 |
Jordan Bayles | 2690bc9 | 2019-06-25 14:48:40 -0700 | [diff] [blame] | 53 | - name: Linux xenial gcc cmake coverage |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 54 | os: linux |
| 55 | dist: xenial |
| 56 | compiler: gcc |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 57 | env: |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 58 | CXX=g++ |
| 59 | CC=gcc |
| 60 | DO_Coverage=ON |
| 61 | BUILD_TOOL="Unix Makefiles" |
Jordan Bayles | 408b466 | 2019-06-25 14:27:26 -0700 | [diff] [blame] | 62 | BUILD_TYPE=Debug |
| 63 | LIB_TYPE=shared |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 64 | DESTDIR=/tmp/cmake_json_cpp |
dota17 | f59ac2a | 2019-10-18 01:46:41 +0800 | [diff] [blame] | 65 | before_install: |
| 66 | - pip install --user cpp-coveralls |
Hans Johnson | a3c8e86 | 2019-01-12 12:32:15 -0600 | [diff] [blame] | 67 | script: ./.travis_scripts/cmake_builder.sh |
dota17 | f59ac2a | 2019-10-18 01:46:41 +0800 | [diff] [blame] | 68 | after_success: |
| 69 | - coveralls --include src/lib_json --include include |
Baptiste Lepilleur | 10712e8 | 2013-05-08 21:23:52 +0000 | [diff] [blame] | 70 | notifications: |
Christopher Dunn | 658fa37 | 2015-07-12 09:53:40 -0500 | [diff] [blame] | 71 | email: false |