diff options
Diffstat (limited to 'EASTL/.travis.yml')
-rw-r--r-- | EASTL/.travis.yml | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/EASTL/.travis.yml b/EASTL/.travis.yml new file mode 100644 index 0000000..11b4a22 --- /dev/null +++ b/EASTL/.travis.yml @@ -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 + |