mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-13 10:51:35 +00:00
Compiling on Linux Debug fails with what may be an out of memory for clang. Limit the number of jobs to try and avoid OOM.
76 lines
1.6 KiB
YAML
76 lines
1.6 KiB
YAML
os:
|
|
- linux
|
|
- osx
|
|
|
|
# If linux, use precise
|
|
dist: trusty
|
|
sudo: false
|
|
|
|
language:
|
|
- cpp
|
|
|
|
python:
|
|
- "2.7"
|
|
|
|
env:
|
|
- BUILD_TYPE=Debug
|
|
- BUILD_TYPE=Release
|
|
|
|
compiler:
|
|
- clang
|
|
|
|
cache:
|
|
- pip
|
|
|
|
addons:
|
|
# Everything under apt is only used on linux
|
|
apt:
|
|
sources:
|
|
# PPA for clang 6.0
|
|
- llvm-toolchain-trusty-6.0
|
|
# PPA for clang-format 7
|
|
- llvm-toolchain-trusty
|
|
# PPA for a more recen libstdc++
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
# Get recent compilers
|
|
- clang-6.0
|
|
# Pull a recent version of libstdc++
|
|
- libstdc++-6-dev
|
|
# Ninja builds are faster
|
|
- ninja-build
|
|
# Required for the code generator, unfortunately this is jinja2 2.6 which lacks some of the options we use
|
|
- python-jinja2
|
|
# Required dependency for GLFW on Linux
|
|
- xorg-dev
|
|
# Format using the latest and greatest
|
|
- clang-format-7
|
|
|
|
before_install:
|
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update; fi
|
|
|
|
install:
|
|
# Install dependencies required on OSX
|
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install ninja; fi
|
|
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then pip2 install --user jinja2; fi
|
|
|
|
script:
|
|
# Use the more recent compilers we just installed
|
|
- if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$CXX" == "clang++" ]; then export CXX="clang++-6.0" CC="clang-6.0"; fi
|
|
|
|
# Build
|
|
- mkdir -p build
|
|
- cd build
|
|
- cmake --version
|
|
- cmake -G "Ninja" -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DDAWN_USE_WERROR=1 ..
|
|
- cmake --build . -- -j 1
|
|
|
|
# Test
|
|
- ./dawn_unittests
|
|
|
|
# Get out of the build dir
|
|
- cd ..
|
|
|
|
# Lint
|
|
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then ./scripts/travis_lint_format.sh clang-format-7; fi
|