First
This commit is contained in:
+88
@@ -0,0 +1,88 @@
|
||||
dist: xenial
|
||||
language: cpp
|
||||
|
||||
cache:
|
||||
- ccache: true
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
- windows
|
||||
|
||||
compiler:
|
||||
- gcc
|
||||
- clang
|
||||
- msvc
|
||||
|
||||
env:
|
||||
- EASTL_CONFIG=Debug
|
||||
- EASTL_CONFIG=Release
|
||||
|
||||
addons:
|
||||
apt:
|
||||
update: true
|
||||
sources:
|
||||
- george-edison55-precise-backports
|
||||
- sourceline: 'ppa:ubuntu-toolchain-r/test'
|
||||
- sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-11 main'
|
||||
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||||
packages:
|
||||
- cmake
|
||||
- cmake-data
|
||||
- g++-9
|
||||
- clang-11
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- compiler: clang "release build with clang to trigger MOJI check"
|
||||
env: EASTL_CONFIG=Release USE_MOJI_CHECK=yes
|
||||
os: linux
|
||||
- compiler: msvc
|
||||
env: EASTL_CONFIG=Release CXXFLAGS="/std:c++latest /Zc:char8_t"
|
||||
os: windows
|
||||
|
||||
exclude:
|
||||
- os: osx
|
||||
compiler: gcc
|
||||
- os: osx
|
||||
compiler: msvc
|
||||
- os: linux
|
||||
compiler: msvc
|
||||
- os: windows
|
||||
compiler: clang
|
||||
- os: windows
|
||||
compiler: gcc
|
||||
|
||||
# Handle git submodules yourself
|
||||
git:
|
||||
submodules: false
|
||||
|
||||
before_install:
|
||||
- git submodule update --init
|
||||
- if [[ "$CXX" == "g++" ]]; then export CC="gcc-9" ;fi
|
||||
- if [[ "$CXX" == "g++" ]]; then export CXX="g++-9" ;fi
|
||||
- if [[ "$CXX" == "clang++" && "${TRAVIS_OS_NAME}" != "osx" ]]; then export CC="clang-11" ;fi
|
||||
- if [[ "$CXX" == "clang++" && "${TRAVIS_OS_NAME}" != "osx" ]]; then export CXX="clang++-11" ;fi
|
||||
- if [[ "$CXX" == "g++-9" && "${TRAVIS_OS_NAME}" != "windows" ]]; then g++-9 -v ;fi
|
||||
- if [[ "$CXX" == "clang++-11" && "${TRAVIS_OS_NAME}" != "windows" ]]; then clang++-11 -v ;fi
|
||||
|
||||
install:
|
||||
# MOJI check; exit 1 if non-ascii characters detected in C++
|
||||
- if [[ -n "$USE_MOJI_CHECK" && -n `git grep -P "[^[:ascii:]]" source test` ]]; then echo "Moji Detected" && exit 1 ;fi
|
||||
- if [[ -n "$USE_MOJI_CHECK" ]]; then exit 0 ;fi
|
||||
|
||||
before_script:
|
||||
- mkdir build_$EASTL_CONFIG
|
||||
- cd build_$EASTL_CONFIG
|
||||
- cmake .. -DEASTL_BUILD_BENCHMARK:BOOL=ON -DEASTL_BUILD_TESTS:BOOL=ON
|
||||
- cmake --build . --config $EASTL_CONFIG
|
||||
|
||||
script:
|
||||
# Run Tests
|
||||
- cd $TRAVIS_BUILD_DIR/build_$EASTL_CONFIG/test
|
||||
- ctest -C $EASTL_CONFIG -V || exit 1
|
||||
|
||||
# Run Benchmarks
|
||||
- cd $TRAVIS_BUILD_DIR/build_$EASTL_CONFIG/benchmark
|
||||
- ctest -C $EASTL_CONFIG -V || exit 1
|
||||
|
||||
Reference in New Issue
Block a user