You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
282 lines
7.8 KiB
282 lines
7.8 KiB
language: c |
|
sudo: false |
|
matrix: |
|
include: |
|
### |
|
## Linux builds using various versions of GCC. |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-6 CXX_COMPILER=g++-6 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-6 |
|
- g++-6 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-5 CXX_COMPILER=g++-5 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-5 |
|
- g++-5 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.9 CXX_COMPILER=g++-4.9 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-4.9 |
|
- g++-4.9 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.8 CXX_COMPILER=g++-4.8 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-4.8 |
|
- g++-4.8 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.7 CXX_COMPILER=g++-4.7 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-4.7 |
|
- g++-4.7 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.6 CXX_COMPILER=g++-4.6 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-4.6 |
|
- g++-4.6 |
|
# - os: linux |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.5 CXX_COMPILER=g++-4.5 |
|
# addons: |
|
# apt: |
|
# sources: |
|
# - ubuntu-toolchain-r-test |
|
# packages: |
|
# - gcc-4.5 |
|
# - g++-4.5 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.4 CXX_COMPILER=g++-4.4 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-4.4 |
|
- g++-4.4 |
|
|
|
### |
|
## clang on Linux |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.8 CXX_COMPILER=clang++-3.8 |
|
addons: |
|
apt: |
|
sources: |
|
- llvm-toolchain-precise-3.8 |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- clang-3.8 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.7 CXX_COMPILER=clang++-3.7 |
|
addons: |
|
apt: |
|
sources: |
|
- llvm-toolchain-precise-3.7 |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- clang-3.7 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.6 CXX_COMPILER=clang++-3.6 |
|
addons: |
|
apt: |
|
sources: |
|
- llvm-toolchain-precise-3.6 |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- clang-3.6 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.5 CXX_COMPILER=clang++-3.5 |
|
addons: |
|
apt: |
|
sources: |
|
- llvm-toolchain-precise-3.5 |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- clang-3.5 |
|
|
|
### |
|
## PGI Community Edition on Linux |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=pgcc CXX_COMPILER=pgc++ |
|
|
|
### |
|
## Python build on Linux |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=python C_COMPILER=gcc-6 CXX_COMPILER=g++-6 |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- gcc-6 |
|
- g++-6 |
|
|
|
### |
|
## CMake on OS X |
|
## |
|
## These all work, but it seems unnecessary to actually build them |
|
## all since we already test all these versions of GCC on Linux. |
|
## We'll just test 4.4 and the most recent version. |
|
### |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-6 CXX_COMPILER=g++-6 |
|
- os: osx |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-5 CXX_COMPILER=g++-5 |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.9 CXX_COMPILER=g++-4.9 |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.8 CXX_COMPILER=g++-4.8 |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.7 CXX_COMPILER=g++-4.7 |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.6 CXX_COMPILER=g++-4.6 |
|
# - os: osx |
|
# env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.5 CXX_COMPILER=g++-4.5 |
|
- os: osx |
|
osx_image: beta-xcode6.2 |
|
env: BUILD_SYSTEM=cmake C_COMPILER=gcc-4.4 CXX_COMPILER=g++-4.4 |
|
|
|
### |
|
## Python OS X builds |
|
### |
|
- os: osx |
|
env: BUILD_SYSTEM=python INSTALL_TYPE=macpython PYTHON_VERSION=2.7.12 C_COMPILER=gcc CXX_COMPILER=g++ |
|
- os: osx |
|
env: BUILD_SYSTEM=python INSTALL_TYPE=macpython PYTHON_VERSION=3.4.4 C_COMPILER=gcc CXX_COMPILER=g++ |
|
- os: osx |
|
env: BUILD_SYSTEM=python INSTALL_TYPE=macpython PYTHON_VERSION=3.5.2 C_COMPILER=gcc CXX_COMPILER=g++ |
|
|
|
### |
|
## Sanitizers |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.8 CXX_COMPILER=clang++-3.8 SANITIZER=address |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
- llvm-toolchain-precise-3.8 |
|
packages: |
|
- clang-3.8 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.8 CXX_COMPILER=clang++-3.8 SANITIZER=thread |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
- llvm-toolchain-precise-3.8 |
|
packages: |
|
- clang-3.8 |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=clang-3.8 CXX_COMPILER=clang++-3.8 SANITIZER=undefined CFLAGS="-fno-sanitize-recover=undefined,integer" |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
- llvm-toolchain-precise-3.8 |
|
packages: |
|
- clang-3.8 |
|
|
|
### |
|
## mingw |
|
### |
|
- os: linux |
|
env: BUILD_SYSTEM=cmake C_COMPILER=x86_64-w64-mingw32-gcc CXX_COMPILER=x86_64-w64-mingw32-g++ RC_COMPILER=x86_64-w64-mingw32-windres CROSS_COMPILE=yes |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
- george-edison55-precise-backports |
|
packages: |
|
- binutils-mingw-w64-x86-64 |
|
- g++-mingw-w64-x86-64 |
|
- gcc-mingw-w64-x86-64 |
|
- binutils-mingw-w64-x86-64 |
|
- wine |
|
# Because 2.8.6 passes -rdynamic to the linker, which breaks the build. |
|
- cmake |
|
- cmake-data |
|
|
|
- os: linux |
|
env: BUILD_SYSTEM=maven |
|
language: java |
|
|
|
- os: linux |
|
dist: trusty |
|
sudo: required |
|
env: BUILD_SYSTEM=bazel |
|
addons: |
|
apt: |
|
sources: |
|
- ubuntu-toolchain-r-test |
|
packages: |
|
- wget |
|
- pkg-config |
|
|
|
- os: osx |
|
env: BUILD_SYSTEM=bazel |
|
|
|
before_install: |
|
### |
|
## If we use the matrix to set CC/CXX Travis, overwrites the values, |
|
## so instead we use C/CXX_COMPILER, then copy the values to CC/CXX |
|
## here (after Travis has set CC/CXX). |
|
### |
|
- if [ -n "${C_COMPILER}" ]; then export CC="${C_COMPILER}"; fi |
|
- if [ -n "${CXX_COMPILER}" ]; then export CXX="${CXX_COMPILER}"; fi |
|
- ./.travis.sh before_install |
|
install: |
|
- ./.travis.sh install |
|
script: |
|
- ./.travis.sh script |
|
after_success: |
|
- ./.travis.sh after_success |
|
|
|
before_deploy: |
|
- if [ "${BUILD_SYSTEM}" = "python" ] && [ "${TRAVIS_OS_NAME}" = "osx" ]; then export WHEELS=$(ls ./dist/*.whl); fi |
|
- ./.travis.sh before_deploy |
|
|
|
deploy: |
|
- provider: releases |
|
api_key: |
|
secure: YcCBi6W/w4dtKCa59Wfm8L5lGWvK7KxaFNDr3yh1Hz5aStXXf758pEMHGewnlbfbwuj5a3SjBb1nLp1M69OQJfxm442uXBaBKo52PM9PPbD7NjvbNIso73pqcSODXQXKuZxDFpEhfuDTVq3hUkUqiwhChWhrFucJsSL51i7qSss= |
|
file: "${WHEELS}" |
|
skip_cleanup: true |
|
on: |
|
repo: "google/brotli" |
|
tags: true |
|
condition: "${BUILD_SYSTEM} = python && ${TRAVIS_OS_NAME} = osx" |
|
- provider: bintray |
|
file: ".bintray.json" |
|
user: "eustas" |
|
key: |
|
secure: "Kbam/lTAdz72fZivbs6riJT+Y4PbuKP7r6t5PAWxJxAAykjwnYTRe3zF472g9HCE14KYMsdB+KSYSgg6TGJnqGC9gL9xhhGU9U/WmA+vbMWS/MSnMWpK9IRpp77pM2i2NKZD4v33JuEwKFCBJP3Vj6QQ5Qd1NKdobuXJyznhgnw=" |
|
on: |
|
condition: "${BUILD_SYSTEM} = bazel" |
|
skip_cleanup: true
|
|
|