2015-07-12 09:49:25 +00:00
|
|
|
language: cpp
|
2017-07-03 20:01:36 +00:00
|
|
|
matrix:
|
|
|
|
|
|
|
|
# Linux / GCC
|
|
|
|
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-03-15 06:32:51 +00:00
|
|
|
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
|
2017-07-03 20:01:36 +00:00
|
|
|
|
2017-07-03 21:25:23 +00:00
|
|
|
# OS X / GCC
|
2017-07-03 20:23:01 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
env:
|
2018-03-15 06:32:51 +00:00
|
|
|
- MATRIX_EVAL="brew install gcc && CC=gcc-7 && CXX=g++-7"
|
2017-07-03 20:23:01 +00:00
|
|
|
|
2017-07-03 21:25:23 +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-03-15 06:32:51 +00:00
|
|
|
- llvm-toolchain-trusty-5.0
|
2017-07-03 20:01:36 +00:00
|
|
|
packages:
|
2018-03-15 06:32:51 +00:00
|
|
|
- clang-5.0
|
2017-07-03 20:01:36 +00:00
|
|
|
env:
|
2018-03-15 06:32:51 +00:00
|
|
|
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
|
2017-07-03 20:23:01 +00:00
|
|
|
|
2017-07-03 21:25:23 +00:00
|
|
|
# OS X / Clang
|
2017-07-03 20:23:01 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
2017-07-03 20:01:36 +00:00
|
|
|
|
|
|
|
before_install:
|
2017-07-03 20:23:01 +00:00
|
|
|
- eval "${MATRIX_EVAL}"
|
2015-07-12 09:49:25 +00:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
|
|
|
- develop
|
|
|
|
script:
|
2016-04-15 19:45:55 +00:00
|
|
|
- mkdir build_directory
|
2016-04-02 15:12:31 +00:00
|
|
|
- cd build_directory
|
2016-04-02 14:26:12 +00:00
|
|
|
# Build in debug mode with double precision
|
2016-04-02 15:06:54 +00:00
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug —DDOUBLE_PRECISION_ENABLED=True -DCOMPILE_TESTS=True ../
|
2016-04-02 00:19:12 +00:00
|
|
|
- make && make test ARGS="-V"
|
2016-04-02 14:26:12 +00:00
|
|
|
# Build in debug mode with single precision
|
2016-04-02 15:06:54 +00:00
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug —DDOUBLE_PRECISION_ENABLED=False -DCOMPILE_TESTS=True ../
|
2016-04-02 00:19:12 +00:00
|
|
|
- make && make test ARGS="-V"
|
2016-04-02 14:26:12 +00:00
|
|
|
# Build in release mode with double precision
|
2016-04-02 15:06:54 +00:00
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release —DDOUBLE_PRECISION_ENABLED=True -DCOMPILE_TESTS=True ../
|
2016-04-02 00:19:12 +00:00
|
|
|
- make && make test ARGS="-V"
|
2016-04-02 14:26:12 +00:00
|
|
|
# Build in release mode with single precision
|
2016-04-02 15:06:54 +00:00
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release —DDOUBLE_PRECISION_ENABLED=False -DCOMPILE_TESTS=True ../
|
2016-04-02 00:19:12 +00:00
|
|
|
- make && make test ARGS="-V"
|
2018-03-15 06:32:51 +00:00
|
|
|
# Build in debug mode with logs and profiler enabled
|
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug —DPROFILING_ENABLED=True -DLOGS_ENABLED=True
|
|
|
|
- make
|
|
|
|
# Build in release mode with logs and profiler enabled
|
|
|
|
- cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release —DPROFILING_ENABLED=True -DLOGS_ENABLED=True
|
|
|
|
- make
|