| # Linux Build Configuration for Travis |
| |
| language: cpp |
| |
| os: |
| - linux |
| - osx |
| |
| # Use Ubuntu 14.04 LTS (Trusty) as the Linux testing environment. |
| sudo: required |
| dist: trusty |
| |
| env: |
| - DXC_BUILD_TYPE=Release |
| - DXC_BUILD_TYPE=Debug |
| |
| compiler: |
| - clang |
| |
| matrix: |
| include: |
| - os: linux |
| compiler: gcc |
| addons: |
| apt: |
| sources: ubuntu-toolchain-r-test |
| packages: ninja-build g++-5 |
| env: DXC_BUILD_TYPE=Debug |
| - os: linux |
| compiler: gcc |
| addons: |
| apt: |
| sources: ubuntu-toolchain-r-test |
| packages: ninja-build g++-5 |
| env: DXC_BUILD_TYPE=Release |
| |
| cache: |
| apt: true |
| |
| git: |
| depth: false |
| |
| branches: |
| only: |
| - master |
| |
| addons: |
| apt: |
| sources: ubuntu-toolchain-r-test |
| packages: ninja-build libstdc++-5-dev |
| |
| before_install: |
| - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then |
| wget -q https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-mac.zip; |
| unzip -q ninja-mac.zip; |
| chmod +x ninja; |
| export PATH="$PWD:$PATH"; |
| fi |
| |
| before_script: |
| - git submodule update --init |
| - if [ ${CC} = gcc ]; then CC=gcc-5; CXX=g++-5; fi |
| - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ulimit -Sn 1024; fi |
| |
| script: |
| - mkdir build && cd build |
| - cmake .. -GNinja |
| $(cat ../utils/cmake-predefined-config-params) |
| -DSPIRV_BUILD_TESTS=ON |
| -DCMAKE_BUILD_TYPE=${DXC_BUILD_TYPE} |
| -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX} |
| - ninja |
| - ./bin/dxc --help |
| - ./bin/dxc -T ps_6_0 ../tools/clang/test/CodeGenSPIRV/passthru-ps.hlsl2spv |
| - ./bin/dxc -T ps_6_0 -Fo passthru-ps.dxil ../tools/clang/test/CodeGenSPIRV/passthru-ps.hlsl2spv |
| - ./bin/dxc -T ps_6_0 -Fo passthru-ps.spv ../tools/clang/test/CodeGenSPIRV/passthru-ps.hlsl2spv -spirv |
| - ./bin/clang-spirv-tests --spirv-test-root ../tools/clang/test/CodeGenSPIRV/ |
| - ./bin/clang-hlsl-tests --HlslDataDir $PWD/../tools/clang/test/HLSL/ |