subsurface/.travis.yml
Dirk Hohndel 14d18276e4 Travis: add secondary Linux build target
The goal is to reduce the overall wall clock time of our test builds.

This secondary Linux target uses the no-sudo container setup with a Qt
5.10.1 backport and tests the build without BT support as well as the
mobile build (but not the full desktop build and doesn't create an
AppImage as the pre-built Qt5.10.1 is missing QtWebKit).

In exchange we remove the no-bt and mobile build from the existing linux
target.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-19 21:21:46 -07:00

131 lines
3.3 KiB
YAML

matrix:
include:
- env: SUBSURFACE_PLATFORM='ios'
os: osx
osx_image: xcode9.3
language: c++
- env: SUBSURFACE_PLATFORM='mac'
os: osx
osx_image: xcode6.4
language: c++ ruby
- env: SUBSURFACE_PLATFORM='windows'
os: linux
dist: trusty
sudo: required
language: c++
- env: SUBSURFACE_PLATFORM='linux'
os: linux
dist: trusty
sudo: required
language: c++
addons:
apt:
packages:
- git
- g++
- make
- autoconf
- automake
- libtool
- cmake
- pkg-config
- libxml2-dev
- libxslt1-dev
- libzip-dev
- libsqlite3-dev
- libusb-1.0-0-dev
- libssl-dev
- libssh2-1-dev
- libcurl4-openssl-dev
# Not a subsurface dependency, but a Qt dependency
- mesa-common-dev
- libqt5gui5
- libxcb-xinerama0
# Not a subsurface dependency, but a QtMultimedia/libdeclarative_multimedia.so dependency
- libpulse-mainloop-glib0
# Not a subsurface dependency, but a QtWebKit dependency
- libhyphen-dev
- libicu52
# For SmartTrak import
- libglib2.0-dev
- mdbtools-dev
- env: SUBSURFACE_PLATFORM='linux2'
os: linux
dist: trusty
language: c++
addons:
apt:
sources:
- sourceline: 'ppa:beineri/opt-qt-5.10.1-trusty'
key_url: 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x10C56D0DE9977759'
packages:
- qt510base
- qt510connectivity
- qt510declarative
- qt510location
- qt510quickcontrols
- qt510quickcontrols2
- qt510script
- qt510translations
- qt510svg
- qt510tools
- git
- g++
- make
- autoconf
- automake
- libtool
- cmake
- pkg-config
- libxml2-dev
- libxslt1-dev
- libzip-dev
- libsqlite3-dev
- libusb-1.0-0-dev
- libssl-dev
- libssh2-1-dev
- libcurl4-openssl-dev
# Not a subsurface dependency, but a Qt dependency
- mesa-common-dev
- libxcb-xinerama0
- env: SUBSURFACE_PLATFORM="android"
# Currently hard coded to arm
os: linux
language: c++
filter_secrets: false
services:
- docker
# TODO: caching
# cache:
# timeout: 300
# directories:
# - 3pp
- env: SUBSURFACE_PLATFORM="qt55"
# Currently hard coded to arm
os: linux
language: c++
filter_secrets: false
services:
- docker
before_install:
- source ${TRAVIS_BUILD_DIR}/scripts/${SUBSURFACE_PLATFORM}/before_install.sh
script:
- source ${TRAVIS_BUILD_DIR}/scripts/${SUBSURFACE_PLATFORM}/travisbuild.sh
after_success:
- source ${TRAVIS_BUILD_DIR}/scripts/${SUBSURFACE_PLATFORM}/after_success.sh
branches:
except:
- # Do not build tags that we create when we upload to GitHub Releases
- /^(?i:continuous)/