summaryrefslogtreecommitdiffstats
path: root/.travis.yml
diff options
context:
space:
mode:
authorRJ Skerry-Ryan <rryan@mixxx.org>2018-10-15 21:42:01 -0700
committerRJ Skerry-Ryan <rryan@mixxx.org>2018-10-15 21:42:01 -0700
commit7e4d9f9f03816ed2d3a85d098d5da251340949ec (patch)
tree1a6decfb5a977301fe1366d8c76dd6ea409b2bcf /.travis.yml
parentdb8cc6a441e39e4307040649f7816331241c8c3b (diff)
parent9c12473b8edfbf3c814faa38c05e82c20babbca3 (diff)
Merge branch 'master' into remove-vamp
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml45
1 files changed, 35 insertions, 10 deletions
diff --git a/.travis.yml b/.travis.yml
index a4eb82cbbf..9495808007 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,7 +7,7 @@ matrix:
compiler: gcc
- os: osx
- osx_image: xcode7.2
+ osx_image: xcode7.3
compiler: clang
# install dependencies
addons:
@@ -15,6 +15,8 @@ addons:
sources:
- ubuntu-toolchain-r-test
packages:
+ - gdb
+ - libavformat-dev
- libchromaprint-dev
- libfaad-dev
- libfftw3-dev
@@ -22,12 +24,14 @@ addons:
- libid3tag0-dev
- libmad0-dev
- libmodplug-dev
+ - libmp3lame-dev
- libmp4v2-dev
- libopusfile-dev
- libportmidi-dev
- libprotobuf-dev
- - libqt4-dev
- - libqt4-sql-sqlite
+ - libqt5opengl5-dev
+ - libqt5sql5-sqlite
+ - libqt5svg5-dev
- librubberband-dev
- libshout3-dev
- libsndfile1-dev
@@ -38,20 +42,29 @@ addons:
- libwavpack-dev
- portaudio19-dev
- protobuf-compiler
+ - qt5-default
+ - qtscript5-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 update ; fi
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install scons portaudio libsndfile libogg libvorbis portmidi taglib libshout protobuf flac libjpeg qt chromaprint rubberband fftw libmodplug libid3tag libmad mp4v2 faad2 wavpack opusfile; fi
+ # Homebrew uses Python 3 now, and portmidi depends on Python 2 which triggers this bug:
+ # https://github.com/Homebrew/homebrew-core/issues/26358
+ - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew upgrade python ; fi
+ - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install scons portaudio libsndfile libogg libvorbis portmidi taglib libshout protobuf flac ffmpeg qt chromaprint rubberband fftw libmodplug libid3tag libmad mp4v2 faad2 wavpack opusfile lilv lame; fi
install:
####
# Common
# Build flags common to OS X and Linux.
- - export COMMON="test=1 localecompare=1 mad=1 faad=1 opus=1 modplug=1 wv=1 hss1394=0 virtualize=0"
+ # 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 qt5=1 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
@@ -67,13 +80,25 @@ install:
- 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
- # We support OS X 10.7 by default.
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export ARCH_FLAGS="osx_sdk_version_min=10.7" ; 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
####
# Common Build
-
- - scons $COMMON $ARCH_FLAGS
+ - scons $COMMON $EXTRA_FLAGS
script:
- - ./mixxx-test
+ # 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
+ # 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
+
+notifications:
+ webhooks:
+ - https://mixxx.zulipchat.com/api/v1/external/travis?stream=travis&topic=build-status&api_key=$ZULIP_API_KEY