Enable OSX builds on travis (GH-227)
[quassel.git] / .travis.yml
index defbb62..70a55f2 100644 (file)
@@ -1,29 +1,55 @@
-before_install:
-  - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
-  - sudo add-apt-repository -y ppa:kalakris/cmake
-  - sudo apt-add-repository -y ppa:beineri/opt-qt521
-  - sudo apt-get -qq update
+os:
+  - linux
+  - osx
 
-install:
-  - sudo apt-get install -q gcc-4.7 g++-4.7
-  - if [ "$CXX" = "clang" ]; then sudo apt-get install -q clang-3.4; fi
-  - sudo apt-get install -q cmake
-  - sudo apt-get install -q qt52base qt52webkit qt52tools qt52script
-  - if [ "$CXX" = "g++" ]; then export CXX="g++-4.7" CC="gcc-4.7"; fi
+sudo: required
+dist: trusty
 
 language: cpp
+cache: ccache
 
 compiler:
-  - gcc 
+  - gcc
   - clang
 
-env: 
+env:
   - QT_VERSION=qt4
   - QT_VERSION=qt5
 
-script:
-  - mkdir build
-  - cd build
-  - if [ "$QT_VERSION" = "qt4" ]; then cmake ..; fi
-  - if [ "$QT_VERSION" = "qt5" ]; then source /opt/qt52/bin/qt52-env.sh && cmake  -DUSE_QT5=ON ..; fi
-  - make
\ No newline at end of file
+matrix:
+  exclude:
+    - compiler: clang
+      env: QT_VERSION=qt4
+    - os: osx
+      compiler: clang
+    - os: osx
+      env: QT_VERSION=qt4
+
+install: |-
+  if [ "$TRAVIS_OS_NAME" == "linux" ]
+  then
+    sudo apt-get -qy install libqt5webkit5-dev qttools5-dev qtscript5-dev
+    sudo apt-get -qy install libdbusmenu-qt-dev libdbusmenu-qt5-dev
+    sudo apt-get -qy install libphonon-dev libphonon4qt5-dev
+    sudo apt-get -qy install libqca2-dev
+    sudo apt-get -qy install qt4-dev-tools qttools5-dev-tools
+    sudo apt-get -qy install libphonon4qt5experimental4 # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=805096
+  elif [ "$TRAVIS_OS_NAME" == "osx" ]
+  then
+    brew update
+    brew install ninja qt5
+  fi
+
+script: |-
+  mkdir build
+  cd build
+  if [ "$TRAVIS_OS_NAME" == "linux" ]
+  then
+    if [ "$QT_VERSION" = "qt4" ]; then cmake ..; fi
+    if [ "$QT_VERSION" = "qt5" ]; then cmake -DUSE_QT5=ON ..; fi
+    make
+  elif [ "$TRAVIS_OS_NAME" == "osx" ]
+  then
+    cmake -G"Ninja" .. -DCMAKE_BUILD_TYPE=Release -DUSE_QT5=ON -DWANT_CORE=ON -DWANT_QTCLIENT=ON -DWANT_MONO=ON -DCMAKE_PREFIX_PATH=/usr/local/opt/qt5
+    ninja install
+  fi