wgpu/.travis.yml
2020-01-23 16:05:44 +01:00

114 lines
3.8 KiB
YAML

language: rust
sudo: false
dist: xenial
matrix:
include:
# Linux 64bit
- os: linux
rust: stable
compiler: gcc
env:
- BUILD_COMMAND=clippy
#TODO: unlock when libglfw3 on Ubuntu comes with Vulkan support
# or when we add a GL backend.
#- os: linux
# rust: nightly
# compiler: gcc
# env:
# - BUILD_COMMAND=check
# Windows 64bit
- os: windows
rust: stable
env:
- BUILD_COMMAND=clippy
- os: windows
rust: nightly
env:
- BUILD_COMMAND=check
# macOS 64bit
- os: osx
osx_image: xcode9.4
rust: stable
compiler: clang
env:
- MACOSX_DEPLOYMENT_TARGET=10.9
- BUILD_COMMAND=clippy
- os: osx
osx_image: xcode9.4
rust: nightly
compiler: clang
env:
- MACOSX_DEPLOYMENT_TARGET=10.9
- BUILD_COMMAND=check
# iPhoneOS 64bit
- os: osx
osx_image: xcode11
rust: stable
env:
- TARGET=aarch64-apple-ios
- BUILD_COMMAND=clippy
addons:
apt:
packages:
- cmake
- libglfw3-dev
homebrew:
update: true
packages:
- cmake
- glfw3
branches:
except:
- staging.tmp
before_install:
- if [[ $TRAVIS_OS_NAME == "windows" ]]; then choco install make; fi
- if [[ $TRAVIS_RUST_VERSION != "nightly" ]] && [[ $TRAVIS_OS_NAME == "windows" ]]; then rustup default stable-msvc; fi
- if [[ $TRAVIS_RUST_VERSION == "nightly" ]] && [[ $TRAVIS_OS_NAME == "windows" ]]; then rustup default nightly-msvc; fi
before_script:
- if [[ $BUILD_COMMAND == "clippy" ]]; then rustup component add clippy; fi
script:
- cargo test
# TODO: enable GL backend
- (cd wgpu-core && cargo $BUILD_COMMAND --all-features)
- (cd wgpu-native && cargo $BUILD_COMMAND)
- (cd wgpu-remote && cargo $BUILD_COMMAND --all-features)
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then (cd wgpu-native && cargo $BUILD_COMMAND --features vulkan-portability); fi
- if [[ $TRAVIS_OS_NAME == "linux" ]]; then cargo $BUILD_COMMAND --release; fi
- if [[ $TRAVIS_RUST_VERSION == "nightly" ]]; then cargo +nightly install cbindgen; fi
- if [[ $TRAVIS_RUST_VERSION == "nightly" ]] && [[ $TRAVIS_OS_NAME == "windows" ]]; then
wget -nc -O glfw.zip https://github.com/glfw/glfw/archive/3.3.zip &&
7z x glfw.zip -oglfw &&
cd glfw/glfw-3.3 &&
export GLFW3_INCLUDE_DIR=`pwd`/include &&
export GLFW3_INSTALL_DIR=`pwd`/install &&
cmake . -DCMAKE_INSTALL_PREFIX=$GLFW3_INSTALL_DIR -DCMAKE_GENERATOR_PLATFORM=x64 &&
cmake --build . --target install &&
cd ../.. &&
export CMAKE_PREFIX_PATH=$GLFW3_INSTALL_DIR &&
make example-compute example-triangle VERBOSE=1;
fi
- if [[ $TRAVIS_RUST_VERSION == "nightly" ]] && [[ $TRAVIS_OS_NAME != "windows" ]]; then make VERBOSE=1; fi
- if [[ $TRAVIS_RUST_VERSION == "stable" ]]; then make package; fi
deploy:
provider: releases
api_key:
secure: GcBxH6M6X9UU+5QBR4nEdNbXDfGpCrggZkPaztfK1vGAjmOyvHnK6P3M00C5Pf0nLmyWhGT5P0I4Rpy0z8WyQLOaHNWUuRGlRqlehWiJEmi6MpS2O8noJEfbLut9vYPpl0sdrtFrU5e0F77fWm5UWYQLMaeqXj66xv4lVxZp/JkXwhChTpU0PRJtSBuYiLFzbwz9CEjsvBXjw5ZzxmGTHnbw5p19B63yy3mORV91QQrRfCAHMg9z9zthpoZHEGqXXTIFuvh1DZqC5SHhUbt865MHMJS/2IaPH5zA/fOzZCCk6IvbNKLJ/ghE0zRJjHeVU4vjxNMxrFEBKVFCmQB7CpTqGCLy2qTB0tnSmNzqY82xUehl23jZ0LxnKODzCjx4hgfskWnr5p7Pv1Ql9UcAZXDV8UG+7JL34BQY4yyvknpTxK4MTXN9ZNahKJv+zSB9jDuLnB6uVbNV1hwFOUNm7KyAWA7XjFN7k8p4h678Xfg+EUWYxtV1auOItuXdxvzMWgDUDGmk74FdUWxy+GVzjboAmBMVRW/KMQFp4INIaS0gPRPK/jodLqrrZ+1otgYvMM/CsnOh4GLl86RTewuyid2jNnUeXepHPuU+JsDLLCJfyYoAfSxDCdQEuqNLAvpFPJJrBcWREVoqXWVUlWmwhEIWbLRUi2l5AhHnu+PfVhE=
skip_cleanup: true
overwrite: true
file_glob: true
file: dist/wgpu-*.zip
on:
repo: gfx-rs/wgpu
tags: true
condition: $TRAVIS_RUST_VERSION == "stable" && $TRAVIS_BRANCH == $TRAVIS_TAG && ${TRAVIS_TAG::1} == "v"