78 lines
2.6 KiB
YAML
78 lines
2.6 KiB
YAML
# Make Travis use docker (for faster builds, in theory).
|
|
|
|
language: cpp
|
|
os:
|
|
- linux
|
|
|
|
dist: bionic
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
- llvm-toolchain-9
|
|
packages:
|
|
- clang-9
|
|
- clang-format-9
|
|
- llvm-9-dev
|
|
- g++-8
|
|
- python3
|
|
- libc++-dev
|
|
- libc++abi-dev
|
|
- libgtk-3-dev
|
|
- libpthread-stubs0-dev
|
|
- libsdl2-dev
|
|
#- libvulkan1
|
|
#- libvulkan-dev
|
|
- libx11-dev
|
|
- liblz4-dev
|
|
|
|
jobs:
|
|
include:
|
|
- env: C_COMPILER=clang-9 CXX_COMPILER=clang++-9 LINT=true
|
|
- env: C_COMPILER=clang-9 CXX_COMPILER=clang++-9 BUILD=true CONFIG=Debug
|
|
- env: C_COMPILER=clang-9 CXX_COMPILER=clang++-9 BUILD=true CONFIG=Release
|
|
|
|
git:
|
|
# We handle submodules ourselves in xenia-build setup.
|
|
submodules: false
|
|
|
|
before_install:
|
|
# Qt
|
|
- sudo add-apt-repository -y ppa:ubuntu-sdk-team/ppa
|
|
- sudo apt-get update -yq
|
|
- sudo apt-get install qt5-default
|
|
before_script:
|
|
- export LIBVULKAN_VERSION=1.1.70
|
|
- export CXX=$CXX_COMPILER
|
|
- export CC=$C_COMPILER
|
|
- export QT_DIR=/usr
|
|
# Dump useful info.
|
|
- $CXX --version
|
|
- python3 --version
|
|
- clang-format-9 --version
|
|
- clang-format-9 -style=file -dump-config
|
|
# Add Vulkan dependencies.
|
|
- travis_retry wget http://mirrors.kernel.org/ubuntu/pool/universe/v/vulkan/libvulkan1_$LIBVULKAN_VERSION+dfsg1-1_amd64.deb
|
|
- travis_retry wget http://mirrors.kernel.org/ubuntu/pool/universe/v/vulkan/libvulkan-dev_$LIBVULKAN_VERSION+dfsg1-1_amd64.deb
|
|
- if [[ $BUILD == true ]]; then sudo dpkg -i libvulkan1_$LIBVULKAN_VERSION+dfsg1-1_amd64.deb libvulkan-dev_$LIBVULKAN_VERSION+dfsg1-1_amd64.deb; fi
|
|
# Prepare environment (pull dependencies, build tools).
|
|
- travis_retry ./xenia-build setup
|
|
|
|
script:
|
|
# Run linter.
|
|
- if [[ $LINT == true ]]; then ./xenia-build lint --all; fi
|
|
|
|
# Build and run base tests.
|
|
- if [[ $BUILD == true ]]; then ./xenia-build build --config=$CONFIG --target=xenia-base-tests; fi
|
|
- if [[ $BUILD == true ]]; then ./build/bin/Linux/$CONFIG/xenia-base-tests; fi
|
|
# Build and run ppc tests.
|
|
- if [[ $BUILD == true ]]; then ./xenia-build build --config=$CONFIG --target=xenia-cpu-ppc-tests; fi
|
|
# - if [[ $BUILD == true ]]; then ./build/bin/Linux/$CONFIG/xenia-cpu-ppc-tests --log_file=stdout; fi
|
|
|
|
# Build all of xenia.
|
|
- if [[ $BUILD == true ]]; then ./xenia-build build --config=$CONFIG; fi
|
|
# All tests (without haswell support).
|
|
#- ./xenia-build test --config=debug --no-build -- --enable_haswell_instructions=false
|
|
# All tests (with haswell support).
|
|
#- ./xenia-build test --config=debug --no-build -- --enable_haswell_instructions=true
|