2015-07-12 09:49:25 +00:00
|
|
|
language: cpp
|
2017-07-03 20:01:36 +00:00
|
|
|
matrix:
|
|
|
|
|
2018-04-06 05:17:48 +00:00
|
|
|
# ----- Linux / GCC -----
|
2017-07-03 20:01:36 +00:00
|
|
|
include:
|
|
|
|
- os: linux
|
|
|
|
addons:
|
2017-07-03 21:32:52 +00:00
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
2018-03-15 06:32:51 +00:00
|
|
|
- g++-7
|
2017-07-03 20:01:36 +00:00
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
2018-04-06 05:41:25 +00:00
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="False" LOGGER="True" Profiler="True"
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="False" LOGGER="True" Profiler="True"
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- g++-7
|
|
|
|
- lcov
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="False" CODE_COVERAGE="True"
|
2017-07-03 20:01:36 +00:00
|
|
|
|
2018-04-06 05:17:48 +00:00
|
|
|
# ----- OS X / GCC -----
|
2017-07-03 20:23:01 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
2018-04-06 05:17:48 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
2018-04-06 05:41:25 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Debug" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="brew update && brew install gcc && CC=gcc-7 && CXX=g++-7" BUILD_TYPE="Release" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
2017-07-03 20:23:01 +00:00
|
|
|
|
2018-04-06 05:17:48 +00:00
|
|
|
# ----- Linux / Clang -----
|
2017-07-03 20:23:01 +00:00
|
|
|
- os: linux
|
|
|
|
addons:
|
2017-07-03 20:01:36 +00:00
|
|
|
apt:
|
|
|
|
sources:
|
2018-04-05 05:09:37 +00:00
|
|
|
- ubuntu-toolchain-r-test
|
2018-04-05 05:40:01 +00:00
|
|
|
- llvm-toolchain-precise-3.8
|
2017-07-03 20:01:36 +00:00
|
|
|
packages:
|
2018-04-05 05:40:01 +00:00
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
2017-07-03 20:01:36 +00:00
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
2018-04-06 05:41:25 +00:00
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Debug" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
|
|
|
- os: linux
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- g++-7
|
|
|
|
env:
|
|
|
|
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8" BUILD_TYPE="Release" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
2017-07-03 20:23:01 +00:00
|
|
|
|
2018-04-06 05:17:48 +00:00
|
|
|
# ----- OS X / Clang -----
|
2017-07-03 20:23:01 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
2018-04-05 15:42:47 +00:00
|
|
|
env:
|
|
|
|
- BUILD_TYPE="Debug" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- BUILD_TYPE="Release" DOUBLE_PRECISION="False"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- BUILD_TYPE="Debug" DOUBLE_PRECISION="True"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-04-05 15:42:47 +00:00
|
|
|
- BUILD_TYPE="Release" DOUBLE_PRECISION="True"
|
2017-07-03 20:01:36 +00:00
|
|
|
|
2018-04-06 05:41:25 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
|
|
|
- BUILD_TYPE="Debug" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
|
|
|
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
|
|
|
- BUILD_TYPE="Release" DOUBLE_PRECISION="True" LOGGER="True" PROFILER="True"
|
|
|
|
|
2017-07-03 20:01:36 +00:00
|
|
|
before_install:
|
2017-07-03 20:23:01 +00:00
|
|
|
- eval "${MATRIX_EVAL}"
|
2018-04-06 05:17:48 +00:00
|
|
|
|
2015-07-12 09:49:25 +00:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
|
|
|
- develop
|
2018-04-06 05:17:48 +00:00
|
|
|
|
|
|
|
script:
|
2018-04-06 05:23:51 +00:00
|
|
|
- mkdir build_directory
|
|
|
|
- cd build_directory
|
2018-04-06 05:41:25 +00:00
|
|
|
- cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE} —DDOUBLE_PRECISION_ENABLED=${DOUBLE_PRECISION} -DCOMPILE_TESTS=True -DLOGS_ENABLE=${LOGGER} -DPROFILING_ENABLED=${PROFILER} ../
|
2018-04-06 05:17:48 +00:00
|
|
|
- make && make test ARGS="-V"
|
2018-04-06 05:41:25 +00:00
|
|
|
|
|
|
|
after_success:
|
|
|
|
|
|
|
|
# Generate code coverage report
|
|
|
|
- cd build_directory
|
|
|
|
- lcov --directory . --capture --output-file coverage.info
|
|
|
|
- lcov --remove coverage.info '/usr/*' --output-file coverage.info
|
|
|
|
- lcov --list coverage.info
|
|
|
|
|
|
|
|
# Uploading code coverage report to CodeCov
|
|
|
|
- bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
|