X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=.travis.yml;h=42fae1f52f485930ddf667f500d9152625096d8d;hp=3eac5a59bf7473ad8f0fb78d54b48dd25de11331;hb=48dda5f3e963e13e36300ddaef262660bf169672;hpb=722a0ccfedb9868acfefcf26700e48391d9b9efd diff --git a/.travis.yml b/.travis.yml index 3eac5a59..42fae1f5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,11 +1,73 @@ +os: + - linux + +sudo: required +dist: trusty + language: cpp +cache: ccache + compiler: - gcc - clang -before_install: - - echo "yes" | sudo add-apt-repository ppa:kalakris/cmake - - sudo apt-get update -qq - - sudo apt-get install cmake +env: + - QT_VERSION=qt4 + - QT_VERSION=qt5 + +matrix: + include: + - os: osx + compiler: gcc + env: QT_VERSION=qt5 + exclude: + - compiler: clang + 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 -DUSE_QT4=ON ..; fi + if [ "$QT_VERSION" = "qt5" ]; then cmake ..; fi + make + elif [ "$TRAVIS_OS_NAME" == "osx" ] + then + PATH=$PATH:/usr/local/opt/qt5/bin + if [[ "$TRAVIS_TAG" != "" && "$GH_TOKEN" != "" ]] + then + cmake -G"Ninja" .. -DCMAKE_BUILD_TYPE=Release -DDEPLOY=ON + else + cmake -G"Ninja" .. -DCMAKE_BUILD_TYPE=Release + fi + ninja install + fi -script: mkdir build && cd build && cmake ../ && make +deploy: + provider: releases + api_key: "${GH_TOKEN}" + file_glob: true + file: + - "QuasselClient_MacOSX-x86_64_*.dmg" + - "QuasselCore_MacOSX-x86_64_*.dmg" + - "QuasselMono_MacOSX-x86_64_*.dmg" + skip_cleanup: true + on: + tags: true + condition: "$TRAVIS_OS_NAME == 'osx' && $GH_TOKEN != ''"