language: cpp matrix: include: - os: linux dist: trusty sudo: required compiler: gcc env: - QT_BASE=48 - os: linux dist: trusty sudo: required compiler: gcc env: - QT_BASE=57 - os: osx compiler: clang env: - QT_BASE=57 before_install: - if [[ "$QT_BASE" = "48" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt487-trusty -y; fi - if [[ "$QT_BASE" = "51" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt511-trusty -y; fi - if [[ "$QT_BASE" = "52" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt521-trusty -y; fi - if [[ "$QT_BASE" = "53" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt532-trusty -y; fi - if [[ "$QT_BASE" = "54" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt542-trusty -y; fi - if [[ "$QT_BASE" = "55" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt551-trusty -y; fi - if [[ "$QT_BASE" = "56" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt562-trusty -y; fi - if [[ "$QT_BASE" = "57" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt571-trusty -y; fi - if [[ "$QT_BASE" = "58" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt58-trusty -y; fi - if [[ "$QT_BASE" = "59" && "$TRAVIS_OS_NAME" = "linux" ]]; then sudo add-apt-repository ppa:beineri/opt-qt59-trusty -y; fi - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get update -qq; else brew update; fi install: - if [ "$QT_BASE" = "48" ]; then sudo apt-get install -qq opt-qt4-qmake opt-qt4-dev-tools; source /opt/qt-4.8/bin/qt-4.8-env.sh; fi - if [ "$QT_BASE" = "51" ]; then sudo apt-get install -qq qt51base; source /opt/qt51/bin/qt51-env.sh; fi - if [ "$QT_BASE" = "52" ]; then sudo apt-get install -qq qt52base; source /opt/qt52/bin/qt52-env.sh; fi - if [ "$QT_BASE" = "53" ]; then sudo apt-get install -qq qt53base; source /opt/qt53/bin/qt53-env.sh; fi - if [ "$QT_BASE" = "54" ]; then sudo apt-get install -qq qt54base; source /opt/qt54/bin/qt54-env.sh; fi - if [ "$QT_BASE" = "55" ]; then if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get install -qq qt55base; source /opt/qt55/bin/qt55-env.sh; else brew install qt55; brew link --force qt55; fi fi - if [ "$QT_BASE" = "56" ]; then sudo apt-get install -qq qt56base; source /opt/qt56/bin/qt56-env.sh; fi - if [ "$QT_BASE" = "57" ]; then if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get install -qq qt57base libqt5opengl5-dev; source /opt/qt57/bin/qt57-env.sh; else brew install qt5; brew link --force qt5; fi fi - if [ "$QT_BASE" = "58" ]; then sudo apt-get install -qq qt58base; source /opt/qt58/bin/qt58-env.sh; fi - if [ "$QT_BASE" = "59" ]; then sudo apt-get install -qq qt59base; source /opt/qt59/bin/qt59-env.sh; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then wget https://github.com/leozide/leocad/releases/download/v0.83.2/Library-Linux-9306.zip -O library.bin; fi script: - qmake PREFIX=/usr -v - qmake PREFIX=/usr -r - make -j4 - if [ "$TRAVIS_OS_NAME" != "linux" ] ; then exit 0 ; fi - sudo apt-get -y install checkinstall - rm ./*.spec # Otherwise the next line fails - sudo checkinstall --pkgname=app --pkgversion="1" --pkgrelease="1" --backup=no --fstrans=no --default --deldoc - mkdir appdir ; cd appdir - dpkg -x ../app_1-1_amd64.deb . ; find . - cp ../qt/leocad.desktop . - sed -i -e 's|\.svg||g' leocad.desktop # Workaround - cp ../resources/leocad.png . - cd .. - wget -c "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage" - chmod a+x linuxdeployqt*.AppImage - unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH - ./linuxdeployqt*.AppImage ./appdir/usr/bin/leocad -bundle-non-qt-libs - ./linuxdeployqt*.AppImage ./appdir/usr/bin/leocad -appimage - curl --upload-file ./LeoCAD-*.AppImage https://transfer.sh/LeoCAD-git.$(git rev-parse --short HEAD).qt$QT_BASE-x86_64.AppImage