subsurface/.travis.yml
Dirk Hohndel 7a0e26609b Travis: use homebrew addon instead of doing it manually
This should make our mac builds on Travis faster.

This also switches to the latest xcode / VM image which helps speed things up
(less to update for Homebrew). It turned out that that app directories that we
were creating here didn't run for people, anyway, so why even bother with an
old image.

We still create / upload that image (simply in order to be able to peek into it
in case something goes wrong).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-22 23:13:44 -08:00

175 lines
4.2 KiB
YAML

matrix:
include:
- env: SUBSURFACE_PLATFORM='ios'
os: osx
osx_image: xcode9.3
language: c++
- env: SUBSURFACE_PLATFORM='mac'
os: osx
osx_image: xcode10.1
language: c++
addons:
homebrew:
packages:
- xz
- hidapi
- libusb
- libxml2
- libxslt
- libzip
- openssl
- pkg-config
- libgit2
- libssh2
update: true
- env: SUBSURFACE_PLATFORM='windows'
os: linux
dist: trusty
sudo: required
language: c++
- env: SUBSURFACE_PLATFORM='windows-container'
os: linux
filter_secrets: false
language: c++
services:
- docker
- 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
sudo: required
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'
- ubuntu-toolchain-r-test
packages:
- qt510base
- qt510connectivity
- qt510declarative
- qt510location
- qt510quickcontrols
- qt510quickcontrols2
- qt510script
- qt510translations
- qt510svg
- qt510tools
- git
- gcc-5
- g++-5
- 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"
os: linux
language: c++
filter_secrets: false
services:
- docker
- env: SUBSURFACE_PLATFORM="qt56"
os: linux
language: c++
filter_secrets: false
services:
- docker
- env: SUBSURFACE_PLATFORM="qt57"
os: linux
language: c++
filter_secrets: false
services:
- docker
- env: SUBSURFACE_PLATFORM="qt59"
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)/