language: cpp os: linux dist: bionic branches: only: - master - coverity_scan - /recast-.*$/ sudo: false addons: apt: packages: [ build-essential, cmake, clang, clang-tools, libsdl2-dev ] matrix: include: - name: Recastnavigation on MacOS using XCode os: osx osx_image: xcode12.2 before_install: - brew update - brew install sdl2 if: branch != coverity_scan - name: Recastnavigation on Ubuntu GCC if: branch != coverity_scan - name: Recastnavigation on Ubuntu GCC using Premake5 if: branch != coverity_scan before_install: - wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha12/premake-5.0.0-alpha12-linux.tar.gz -O premake.tar.gz - tar -xf premake.tar.gz env: - PREMAKE=1 - name: Recastnavigation on Ubuntu Clang with Static Analysis env: - MATRIX_EVAL="CC=clang && CXX=clang++" - ANALYZE="scan-build --force-analyze-debug-code --use-cc clang --use-c++ clang++" if: branch != coverity_scan compiler: clang - name: Recastnavigation Coverity Scan if: branch = coverity_scan before_script: - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then eval "${MATRIX_EVAL}"; fi - if [ "${PREMAKE}" = "1" ]; then cd RecastDemo && ../premake5 gmake && cd ..; fi - if [ "${PREMAKE}" != "1" ]; then mkdir -p build && cd build && ${ANALYZE} cmake ../ && cd ..; fi script: # 2 CPUs on Travis-CI + 1 extra for IO bound process - if [ "${PREMAKE}" = "1" ]; then make -C RecastDemo/Build/gmake -j3; fi - if [ "${PREMAKE}" != "1" ]; then make -C build -j3; fi - if [ "${PREMAKE}" = "1" ]; then RecastDemo/Bin/Tests; fi - if [ "${PREMAKE}" != "1" ]; then cd build && ctest; fi