summaryrefslogtreecommitdiffstats
path: root/.travis.yml
diff options
context:
space:
mode:
authorFerran Pujol Camins <ferranpujolcamins@gmail.com>2019-10-23 20:04:55 +0200
committerFerran Pujol Camins <ferranpujolcamins@gmail.com>2019-10-23 20:04:55 +0200
commit2c4936a974c53429bd38645c3f6c99b4c3c514b7 (patch)
treeb07c416510aa6264bf89afb7168b7698a6cb5612 /.travis.yml
parenteb6236304ae00c5dd3fd544d4cbca4b792dc727c (diff)
parent3c1bdfaae3f9d96173921ff98532c27fd67a93da (diff)
Merge branch 'master' into migrate-to-QJSEngine
# Conflicts: # build/depends.py # res/controllers/mixco/maudio_xponent.mixco.litcoffee
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml94
1 files changed, 60 insertions, 34 deletions
diff --git a/.travis.yml b/.travis.yml
index 1172955be0..70b9f9a34a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,35 +1,44 @@
language: c++
+
matrix:
include:
- # - os: linux
- # dist: trusty
- # sudo: required
- # compiler: gcc
-
+ - os: linux
+ dist: xenial
+ sudo: required
+ compiler: gcc
- os: osx
compiler: clang
-# install dependencies
+
+git:
+ depth: 1
+
+services:
+ # Virtual X is needed for analyzer waveform tests
+ - xvfb
+
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- - gdb
- libavformat-dev
- libchromaprint-dev
- libfaad-dev
- libflac-dev
- libid3tag0-dev
+ - liblilv-dev
- libmad0-dev
- libmodplug-dev
- libmp3lame-dev
- libmp4v2-dev
+ - libopus-dev
- libopusfile-dev
- libportmidi-dev
- libprotobuf-dev
- libqt5opengl5-dev
- libqt5sql5-sqlite
- libqt5svg5-dev
+ - libqt5x11extras5-dev
- librubberband-dev
- libshout3-dev
- libsndfile1-dev
@@ -44,57 +53,74 @@ addons:
- qt5-default
- qtdeclarative5-dev
- qtscript5-dev
- - libqt5x11extras5-dev
+ - qt5keychain-dev
- scons
- - qtkeychain-dev
- - liblilv-dev
-before_install:
- # Virtual X, needed for analyzer waveform tests
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then export DISPLAY=:99.0 ; fi
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sh -e /etc/init.d/xvfb start ; fi
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install scons portaudio libsndfile libogg libvorbis portmidi taglib libshout protobuf flac ffmpeg qt chromaprint rubberband libmodplug libid3tag libmad mp4v2 faad2 wavpack opusfile lilv lame sound-touch; fi
+ homebrew:
+ update: true
+ packages:
+ - chromaprint
+ - faad2
+ - ffmpeg
+ - flac
+ - lame
+ - libsndfile
+ - libogg
+ - libvorbis
+ - libshout
+ - libmodplug
+ - libid3tag
+ - libmad
+ - lilv
+ - mp4v2
+ - opusfile
+ - portaudio
+ - portmidi
+ - protobuf
+ - qt5
+ - rubberband
+ - scons
+ - sound-touch
+ - taglib
+ - wavpack
install:
- ####
- # Common
-
# Build flags common to OS X and Linux.
# Parallel builds are important for avoiding OSX build timeouts.
# We turn off verbose output to avoid going over the 4MB output limit.
- - export COMMON="-j4 test=1 mad=1 faad=1 ffmpeg=1 opus=1 modplug=1 wv=1 hss1394=0 virtualize=0 debug_assertions_fatal=1 verbose=0"
-
- #####
- # Ubuntu Trusty Build
+ # TODO(2019-07-21): Add "ffmpeg=1" if FFmpeg 4.x becomes available in Ubuntu
+ - export COMMON_FLAGS="-j4 test=1 mad=1 faad=1 opus=1 modplug=1 wv=1 hss1394=0 virtualize=0 debug_assertions_fatal=1 verbose=0"
- ####
- # OS X Build
+ # Ubuntu Xenial build prerequisites
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then export EXTRA_FLAGS="localecompare=1"; fi
# Define QTDIR.
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export QTDIR=$(find /usr/local/Cellar/qt -d 1 | tail -n 1) ; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then export QTDIR=$(find /usr/local/Cellar/qt -d 1 | tail -n 1); fi
# Workaround for bug in libopus's opus.h including <opus_multistream.h>
# instead of <opus/opus_multistream.h>.
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export CXXFLAGS="-isystem /usr/local/include/opus" ; fi
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export CFLAGS="-isystem /usr/local/include/opus" ; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then export CXXFLAGS="-isystem /usr/local/include/opus"; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then export CFLAGS="-isystem /usr/local/include/opus"; fi
# NOTE(rryan): 2016-11-15 we are experiencing Travis timeouts for the OSX
# build. Turning off optimizations to see if that speeds up compile times.
# TODO(rryan): localecompare doesn't work on Travis with qt5 for some reason.
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export EXTRA_FLAGS="optimize=none asan=0 localecompare=0" ; fi
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then export EXTRA_FLAGS="localecompare=1" ; fi
+ # TODO(2019-07-21): Move "ffmpeg=1" into COMMON_FLAGS if FFmpeg 4.x becomes available in Ubuntu
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then export EXTRA_FLAGS="ffmpeg=1 optimize=none asan=0 localecompare=0"; fi
+
+ - scons $COMMON_FLAGS $EXTRA_FLAGS
- ####
- # Common Build
- - scons $COMMON $EXTRA_FLAGS
+before_script:
+ # Virtual X (Xvfb) is needed for analyzer waveform tests
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then export DISPLAY=:99.0; fi
script:
# NOTE(sblaisot): 2018-01-02 removing gdb wrapper on linux due to a bug in
# return code in order to avoid having a successful build when a test fail.
# https://bugs.launchpad.net/mixxx/+bug/1699689
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ./mixxx-test ; fi
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then ./mixxx-test; fi
# lldb doesn't provide an easy way to exit 1 on error:
# https://bugs.llvm.org/show_bug.cgi?id=27326
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then lldb ./mixxx-test --batch -o run -o quit -k 'thread backtrace all' -k "script import os; os._exit(1)" ; fi
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then lldb ./mixxx-test --batch -o run -o quit -k 'thread backtrace all' -k "script import os; os._exit(1)"; fi
notifications:
webhooks: