mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
f24b6d461d
The Qt binaries that we use for the continues build of the AppImage reference libcrypto.so.1.0.1e, but we bundle libcrypto.so.1.0.0. On distros that have libcrypto.so.1.0.1e that gets loaded in addition to the one that we bundle which causes a conflict. More details are explained in the issue below. Fixes #779 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
93 lines
4.5 KiB
YAML
93 lines
4.5 KiB
YAML
language: c++
|
|
sudo: true # for FUSE
|
|
dist: trusty
|
|
|
|
# cache:
|
|
# directories:
|
|
# - Qt
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- git
|
|
- g++
|
|
- make
|
|
- autoconf
|
|
- automake
|
|
- libtool
|
|
- cmake
|
|
- pkg-config
|
|
- libxml2-dev
|
|
- libxslt1-dev
|
|
- libzip-dev
|
|
- libsqlite3-dev
|
|
- libusb-1.0-0-dev
|
|
- libssl-dev
|
|
- libssh2-1-dev
|
|
- libcurl4-openssl-dev
|
|
# Not a subsurface dependency, but a Qt dependency
|
|
- mesa-common-dev
|
|
# Not a subsurface dependency, but a QtMultimedia/libdeclarative_multimedia.so dependency
|
|
- libpulse-mainloop-glib0
|
|
# Not a subsurface dependency, but a QtWebKit dependency
|
|
- libhyphen-dev
|
|
- libicu52
|
|
|
|
before_install:
|
|
- if [ ! -e Qt/5.9.1 ] ; then
|
|
rm -rf Qt ; mkdir -p Qt/5.9.1 ;
|
|
wget http://subsurface-divelog.org/downloads/Qt-5.9.1.tar.xz ; tar -xJ -C Qt/5.9.1 -f Qt-5.9.1.tar.xz ;
|
|
cd Qt/5.9.1 ; ln -s . gcc_64 ; cd .. ; ln -s 5.9.1/* . ; cd .. ;
|
|
sed -i -e 's|1.0.1e|1.0.0\x00|g' Qt/lib/libQt5Network.so.5
|
|
fi
|
|
# TestPreferences uses gui calls, so run a xvfb so it has something to talk to
|
|
- "export DISPLAY=:99.0"
|
|
- "sh -e /etc/init.d/xvfb start"
|
|
|
|
script:
|
|
- export QT_ROOT=$PWD/Qt
|
|
- export PATH=$QT_ROOT/5.9.1/bin:$PATH # Make sure correct qmake is found on the $PATH for linuxdeployqt
|
|
- export CMAKE_PREFIX_PATH=$QT_ROOT/5.9.1/lib/cmake ;
|
|
cd .. ;
|
|
bash -e ./subsurface/scripts/build.sh -desktop -create-appdir -build-with-webkit
|
|
- export QT_PLUGIN_PATH=$QT_ROOT/5.9.1/plugins
|
|
- export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/5.9.1/plugins
|
|
- export QT_DEBUG_PLUGINS=1
|
|
- find $QT_ROOT/5.9.1/plugins
|
|
- env CTEST_OUTPUT_ON_FAILURE=1 make -C subsurface/build check
|
|
- # env CTEST_OUTPUT_ON_FAILURE=1 make -C subsurface/build-mobile check
|
|
- mkdir -p appdir/usr/plugins/ ; mv appdir/usr/home/travis/build/*/subsurface/Qt/5.9.1/plugins/* appdir/usr/plugins/
|
|
- mv appdir/usr/lib/grantlee/ appdir/usr/plugins/
|
|
- sudo mv appdir/usr/lib/* /usr/local/lib/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/160
|
|
- rm -rf appdir/usr/home/ appdir/usr/include/ appdir/usr/share/man/ # No need to ship developer and man files as part of the AppImage
|
|
- 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
|
|
- export LD_LIBRARY_PATH=/usr/local/lib/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/160
|
|
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -bundle-non-qt-libs -qmldir=./subsurface/map-widget/ -verbose=2
|
|
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -appimage -qmldir=./subsurface/map-widget/ -verbose=2
|
|
- find ./appdir -executable -type f -exec ldd {} \; | grep " => /usr" | cut -d " " -f 2-3 | sort | uniq
|
|
- curl --upload-file ./Subsurface*.AppImage https://transfer.sh/Subsurface-git.$(cd subsurface/ ; git rev-parse --short HEAD)-x86_64.AppImage
|
|
- ls -lh ./Subsurface*.AppImage
|
|
- export APPIMAGE=Subsurface-$(cd subsurface/ ; git rev-parse --short HEAD)-x86_64.AppImage
|
|
- cp ./Subsurface*.AppImage $APPIMAGE
|
|
|
|
after_success:
|
|
- ls -lh $APPIMAGE
|
|
- wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
|
|
- bash -x ./upload.sh $APPIMAGE
|
|
|
|
deploy:
|
|
provider: releases
|
|
api_key:
|
|
secure: X/bD9kamMgbQsjdMY+198l/JK5RELLI04z57y0LP8nQyzFm9aa06pByZeIzNHl/u1MZHfE/abyI5CtZRXO29KF300Bx6nlkynhIaNED3JLZwKIN2/EuNavy4RitBIldeyAg0SqeHYGXoiM6BqvqG/dOW6e9UEC2pIr7DmxnKYdHV4P/RgrVYpYkvbcThUQPsAs0sXu6+gTMLibmUrHcOHOXTjdvpn8cYXJ/ctnKYRMqGadwiX3uBJIiKwG/0myHPe8ZncfEDWyWp+ZBcz+H3d/g2Psgn1eo8yJERLH9EpVrMAsCoJGC61cf+X+zJeK8SFiWCoghrzYRvQbRR3H3j1Qne2lS3FZGmxAMDbsacavcqqGK8YcuH1LZtXy1P7WkwprqZfaJi/tFKFD5m8IVygyFRTvKSOQkduzH/iup4+BJ98+BsgEP4Q1sJ5vvTfQQwT2K06uy2yjImPvTqnHKYpIh50nJx7DcZ0/sO1eHANMNFNBJzS7RNjoT87O8NvXjufdZBPGhosR4JZnL4Ji3Rj2JGPlw3xzXCp3UK+EBcYKJdJCYFn+WqQoxkhROdAgOXfRHBrv4VrfJOvgKAWq8UJ8sLTnkhkMVo8Y/Yl77JC2hk7rE9I6SlLtxHIfDFyybHVMUjrsK/SpBqeWithkohnYSnsqQx7xsDFY8+/HSJGZ8=
|
|
file: $APPIMAGE
|
|
skip_cleanup: true
|
|
on:
|
|
repo: Subsurface-divelog/subsurface
|
|
tags: true
|
|
|
|
branches:
|
|
except:
|
|
- # Do not build tags that we create when we upload to GitHub Releases
|
|
- /^(?i:continuous)$/
|