1
0
Fork 0
arangodb/3rdParty/iresearch/.travis.yml

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