mirror of https://gitee.com/bigwinds/arangodb
833 lines
39 KiB
YAML
833 lines
39 KiB
YAML
sudo: required
|
|
dist: trusty #precise
|
|
group: deprecated-2017Q4
|
|
language: cpp
|
|
|
|
cache:
|
|
directories:
|
|
- ${TRAVIS_BUILD_DIR}/deps/icu
|
|
- ${TRAVIS_BUILD_DIR}/deps/gtest
|
|
- ${TRAVIS_BUILD_DIR}/deps/snowball
|
|
- ${TRAVIS_BUILD_DIR}/deps/lz4
|
|
- ${TRAVIS_BUILD_DIR}/deps/boost-1.58.0
|
|
# - ${TRAVIS_BUILD_DIR}/deps/boost-1.59.0
|
|
# - ${TRAVIS_BUILD_DIR}/deps/boost-1.60.0
|
|
# - ${TRAVIS_BUILD_DIR}/deps/boost-1.61.0
|
|
# - ${TRAVIS_BUILD_DIR}/deps/boost-1.62.0
|
|
# - ${TRAVIS_BUILD_DIR}/deps/boost-1.63.0
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
|
|
env:
|
|
global:
|
|
- MAKEFLAGS="-j 8"
|
|
- BOOST_VERSION=default
|
|
- CMAKE_VERSION=default
|
|
|
|
matrix:
|
|
include:
|
|
############################################################################
|
|
# GCC 4.8
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.8 && CXX=g++-4.8"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# GCC 4.9
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-4.9 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-4.9 && CXX=g++-4.9"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
- SUPPRESS_MAKE_ERRORS=true # travis is unable to handle log files > 4MB
|
|
|
|
############################################################################
|
|
# GCC 5
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-5 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-5 && CXX=g++-5"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# GCC 6
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-6 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-6 && CXX=g++-6"
|
|
- CXX_STANDARD=11
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# GCC 7
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc7 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install cmake cmake-data g++-7 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-7 && CXX=g++-7"
|
|
- CXX_STANDARD=14
|
|
- CMAKE_VERSION=3.2.3 # supports c++14
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# GCC 8
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: linux
|
|
dist: trusty # gcc8 is not available in `precise`
|
|
before_install:
|
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
|
- for i in 1 2 3; do travis_retry sudo apt-get update; done # 3 times since download failure is not an error
|
|
- travis_retry sudo apt-get install g++-8 valgrind
|
|
env:
|
|
- SET_ENV="CC=gcc-8 && CXX=g++-8"
|
|
- CMAKE_VERSION=3.8.2 # supports c++17
|
|
- CXX_STANDARD=17
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# OSX
|
|
############################################################################
|
|
|
|
############################################################################
|
|
# Debug build, static library
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Debug" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, static library (filesystem tests)
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, static library (remaining tests)
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Release" STATIC_LIB="true" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Debug build, shared library
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Debug" TEST_PARAMS="--gtest_filter=*:-:*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (filesystem tests)
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*/fs___*:*/mmap___*"
|
|
|
|
############################################################################
|
|
# Release build, shared library (remaining tests)
|
|
############################################################################
|
|
- os: osx
|
|
osx_image: xcode9
|
|
compiler: clang
|
|
before_install:
|
|
- brew update || true;
|
|
brew install bison@2.7 || true;
|
|
env:
|
|
- SET_ENV="PATH=/usr/local/opt/bison/bin:/usr/local/opt/bison@2.7/bin:$PATH"
|
|
- CXX_STANDARD=11
|
|
- BOOST_B2_ARGS="boost.locale.iconv=off"
|
|
- BUILD_TYPE="Release" TEST_PARAMS="--gtest_filter=*:-:*/fs___*:-:*/mmap___*"
|
|
|
|
before_install:
|
|
- eval "${SET_ENV}"
|
|
|
|
install:
|
|
- eval "${SET_ENV}"
|
|
- which bison
|
|
- bison --version
|
|
- which ${CC}
|
|
- ${CC} --version
|
|
- which ${CXX}
|
|
- ${CXX} --version
|
|
|
|
############################################################################
|
|
# All the dependencies are installed in ${TRAVIS_BUILD_DIR}/deps/
|
|
############################################################################
|
|
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
|
|
- mkdir -p ${DEPS_DIR} && cd ${DEPS_DIR}
|
|
|
|
############################################################################
|
|
# Install a recent CMake (unless already installed on OS X)
|
|
############################################################################
|
|
- |
|
|
if [[ "${CMAKE_VERSION}" != "default" ]]; then
|
|
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
|
|
CMAKE_URL="https://cmake.org/files/v${CMAKE_VERSION%.[0-9]}/cmake-${CMAKE_VERSION}-Linux-x86_64.tar.gz"
|
|
mkdir -p ${DEPS_DIR}/cmake && travis_retry wget --no-check-certificate -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/cmake
|
|
export PATH=${DEPS_DIR}/cmake/bin:${PATH}
|
|
else
|
|
brew install cmake || brew upgrade cmake
|
|
fi
|
|
fi
|
|
- which cmake
|
|
- cmake --version
|
|
|
|
############################################################################
|
|
# Setup default versions and override compiler if needed
|
|
############################################################################
|
|
- if [[ "${BOOST_VERSION}" == "default" ]]; then BOOST_VERSION=1.58.0; fi
|
|
|
|
############################################################################
|
|
# Install ICU
|
|
############################################################################
|
|
- |
|
|
ICU_DIR=${DEPS_DIR}/icu
|
|
if [[ -z "$(ls -A ${ICU_DIR})" ]]; then
|
|
ICU_URL="https://netix.dl.sourceforge.net/project/icu/ICU4C/57.1/icu4c-57_1-src.tgz"
|
|
cd ${DEPS_DIR}
|
|
wget -P icu ${ICU_URL}
|
|
cd ${ICU_DIR}
|
|
tar -zxf icu4c-57_1-src.tgz
|
|
cd icu/source
|
|
./configure --enable-static
|
|
mkdir -P ${ICU_DIR}/build
|
|
make install DESTDIR=${ICU_DIR}/build
|
|
fi
|
|
# sudo make install DESTDIR=${ICU_DIR}
|
|
export ICU_ROOT=${ICU_DIR}/build/usr/local
|
|
export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:${ICU_ROOT}/lib" # required for MacOS
|
|
|
|
############################################################################
|
|
# Install Boost
|
|
############################################################################
|
|
- |
|
|
if [[ "${BOOST_VERSION}" != "" ]]; then
|
|
BOOST_DIR=${DEPS_DIR}/boost-${BOOST_VERSION}
|
|
if [[ -z "$(ls -A ${BOOST_DIR})" ]]; then
|
|
if [[ "${BOOST_VERSION}" == "trunk" ]]; then
|
|
BOOST_URL="http://github.com/boostorg/boost.git"
|
|
travis_retry git clone --depth 1 --recursive --quiet ${BOOST_URL} ${BOOST_DIR} || exit 1
|
|
else
|
|
#BOOST_URL="https://mirrors.netix.net/sourceforge/b/bo/boost/boost/${BOOST_VERSION}/boost_${BOOST_VERSION//\./_}.tar.gz"
|
|
#BOOST_URL="https://kent.dl.sourceforge.net/project/boost/boost/${BOOST_VERSION}/boost_${BOOST_VERSION//\./_}.tar.gz"
|
|
BOOST_URL="https://netix.dl.sourceforge.net/project/boost/boost/${BOOST_VERSION}/boost_${BOOST_VERSION//\./_}.tar.gz"
|
|
mkdir -p ${BOOST_DIR}
|
|
{ travis_retry wget --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${BOOST_DIR}; } || exit 1
|
|
fi
|
|
(cd ${BOOST_DIR} && ./bootstrap.sh --with-libraries=locale,system,thread,regex && ./b2 install -sICU_PATH=${ICU_ROOT} --libdir=lib ${BOOST_B2_ARGS})
|
|
fi
|
|
export BOOST_ROOT=${BOOST_DIR}
|
|
export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:${BOOST_ROOT}/lib" # required for MacOS
|
|
fi
|
|
|
|
############################################################################
|
|
# Install Lz4
|
|
############################################################################
|
|
- |
|
|
LZ4_DIR=${DEPS_DIR}/lz4
|
|
if [[ -z "$(ls -A ${LZ4_DIR})" ]]; then
|
|
LZ4_URL="https://github.com/lz4/lz4.git"
|
|
cd ${DEPS_DIR}
|
|
travis_retry git clone --depth 1 --recursive --quiet ${LZ4_URL} ${LZ4_DIR} || exit 1
|
|
cd ${LZ4_DIR}
|
|
make install DESTDIR=${LZ4_DIR}/build PREFIX=""
|
|
fi
|
|
export LZ4_ROOT=${LZ4_DIR}/build
|
|
export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:${LZ4_ROOT}/lib" # required for MacOS
|
|
|
|
############################################################################
|
|
# Install snowball
|
|
############################################################################
|
|
- |
|
|
SNOWBALL_DIR=${DEPS_DIR}/snowball
|
|
if [[ -z "$(ls -A ${SNOWBALL_DIR})" ]]; then
|
|
SNOWBALL_URL="https://github.com/snowballstem/snowball.git"
|
|
cd ${DEPS_DIR}
|
|
travis_retry git clone --quiet ${SNOWBALL_URL} ${SNOWBALL_DIR} || exit 1
|
|
cd ${SNOWBALL_DIR}
|
|
git reset --hard 5137019d68befd633ce8b1cd48065f41e77ed43e
|
|
fi
|
|
export SNOWBALL_ROOT=${SNOWBALL_DIR}
|
|
|
|
############################################################################
|
|
# Install gtest
|
|
############################################################################
|
|
- |
|
|
GTEST_DIR=${DEPS_DIR}/gtest
|
|
if [[ -z "$(ls -A ${GTEST_DIR})" ]]; then
|
|
GTEST_URL="https://github.com/google/googletest.git"
|
|
cd ${DEPS_DIR}
|
|
travis_retry git clone --depth 1 --recursive --quiet ${GTEST_URL} ${GTEST_DIR} || exit 1
|
|
cd ${GTEST_DIR}
|
|
travis_retry git fetch --tags
|
|
travis_retry git checkout tags/release-1.8.0
|
|
fi
|
|
export GTEST_ROOT=${GTEST_DIR}/googletest
|
|
|
|
before_script:
|
|
############################################################################
|
|
# Go back to the root of the project and setup the build directory
|
|
############################################################################
|
|
- CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_CXX_STANDARD=${CXX_STANDARD} -DUSE_TESTS=On" ${BUILD_PYRESEARCH}
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- (mkdir build && cd build && cmake .. ${CMAKE_OPTIONS})
|
|
|
|
script:
|
|
- cd ${TRAVIS_BUILD_DIR}/build
|
|
- |
|
|
if [[ "${STATIC_LIB}" == "true" ]]; then
|
|
BUILD_TYPE_SUFFIX="-static"
|
|
TEST_EXECUTABLE_SUFFIX="-s"
|
|
else
|
|
BUILD_TYPE_SUFFIX="-shared"
|
|
TEST_EXECUTABLE_SUFFIX=""
|
|
fi
|
|
# build library and tests
|
|
if [[ "${SUPPRESS_MAKE_ERRORS}" == true ]]; then
|
|
if ! make -j 1 iresearch-tests${BUILD_TYPE_SUFFIX} 2> stderr.log; then
|
|
head --bytes=1048576 stderr.log
|
|
echo ""
|
|
echo "..."
|
|
echo ""
|
|
tail --bytes=1048576 stderr.log
|
|
exit 1
|
|
fi
|
|
else
|
|
make iresearch-tests${BUILD_TYPE_SUFFIX}
|
|
fi
|
|
# build utils
|
|
if [[ "${STATIC_LIB}" == "true" ]]; then
|
|
make iresearch-index-util
|
|
make iresearch-benchmarks
|
|
fi
|
|
# execute tests
|
|
ulimit -n 5120 # required for MacOS (max-open-files = 16 threads * (100000/10000) commits * 8 segments-per-commit * 4 open-files-per-segment)
|
|
ulimit -a
|
|
if ! travis_wait 60 ./bin/iresearch-tests${TEST_EXECUTABLE_SUFFIX} ${TEST_PARAMS}; then
|
|
exit 1
|
|
fi
|
|
# archive artifacts
|
|
tar -czf iresearch-${TRAVIS_OS_NAME}-${BUILD_TYPE}${BUILD_TYPE_SUFFIX}-${TRAVIS_BUILD_NUMBER}.tar.gz bin
|
|
|
|
deploy:
|
|
provider: releases
|
|
api_key:
|
|
secure: WldnAnXt5V7vZHmeAi/+tDxWYnQKOmgklgSRbjlRxCYpqNKwaqoIT/4W17+fd8UvPiB1wvsgfQ6DrrhN5ZUDKMUuH7OICuko6BJsOw2Ydx5e20BnbZaiU2+VmQpd6x1D90/CFjD3V6kSFRMnKd5crG/02A1UGTQnAtlzw+KTSoH7Vk3iHP6q9mq1fmnq4Aa0dLDMChIMLcPiLP/aJWh2+sdZqyaCMiMTaNW8aWLDxRVakHSUrie3CoMpWgraq5xQIwTskUm26NhS8v9d4BI3rbXBwQ50Hu7na/CqegjTJ3BIn9ePqeLWDfZewCGbQcSrJoBKSgMi70D3/BaZ8dvSCZODRH5hAPk7J4uPjQTkfkPws9Otj5iNlYlEQ3U/cGTNX2drzpSWKJS+9N5tiXhlAkegpZMW4czcsIISXA98CthMSxIT3rqxcNUL6ZlImZyFxa0bav7Jlx1SwQxrsIPFuxsX4qscG/D/QKu54l36h8qcmVKHThBL2UyQYDDgy4EPYXnO+cgi3aAuXkTS5a7jv6MEC9UTwSU6XAVYFZDhgRxlsq3xq/maOsVN/xCw1zY4cfFlHEG1/OLIX1sbJtct8mNMxsHCW+Xeku2NSLg/Vr5fgLQt8upOd49rMwhQyBn+3gp0eaEOlcIGbhDC/RnXS3UJtuO38DgkRvwfQ90B0gw=
|
|
file: ${TRAVIS_BUILD_DIR}/build/iresearch-${TRAVIS_OS_NAME}-${BUILD_TYPE}${BUILD_TYPE_SUFFIX}-${TRAVIS_BUILD_NUMBER}.tar.gz
|
|
skip_cleanup: true
|
|
on:
|
|
tags: true
|
|
repo: iresearch-toolkit/iresearch
|