From 4b391c448dadb33b01505b7356108a02cf0a80d4 Mon Sep 17 00:00:00 2001
From: Paul Buxton <paubuxton.mail@googlemail.com>
Date: Sun, 22 Sep 2019 13:32:55 +0100
Subject: AppImage: Fix missing libssl1.1

Add ssl to the AppImage build.
Add helper script to fetch required dependancies.
Update docker build container used.

Signed-off-by: Paul Buxton <paubuxton.mail@googlemail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
---
 scripts/docker/trusty-qt512/Dockerfile           | 7 ++++++-
 scripts/docker/trusty-qt512/getpackages.sh       | 6 ++++++
 scripts/linux-trusty-qt512/before_install.sh     | 2 +-
 scripts/linux-trusty-qt512/in-container-build.sh | 2 ++
 4 files changed, 15 insertions(+), 2 deletions(-)
 create mode 100644 scripts/docker/trusty-qt512/getpackages.sh

(limited to 'scripts')

diff --git a/scripts/docker/trusty-qt512/Dockerfile b/scripts/docker/trusty-qt512/Dockerfile
index f116bbb20..0c1914a03 100644
--- a/scripts/docker/trusty-qt512/Dockerfile
+++ b/scripts/docker/trusty-qt512/Dockerfile
@@ -59,6 +59,11 @@ RUN mkdir dbus-1.12.16/build && \
     make install && \
     ldconfig
 
+ADD OpenSSL_1_1_1.tar.gz .
+RUN cd /openssl-OpenSSL_1_1_1   && \
+    ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib && \
+    make && mkdir -p /ssllibs && cp *.so /ssllibs && cd / && rm -rf openssl-OpenSSL_1_1_1
+
 # try to remove some of the packages we no longer need
 RUN apt-get remove -y libqt5core5a libqt5dbus5 libqt5gui5 ruby openssh-client
 
@@ -68,4 +73,4 @@ RUN git clone git://github.com/Subsurface-divelog/subsurface
 RUN bash -e -x ./subsurface/scripts/build.sh -desktop -create-appdir -build-with-webkit
 
 # remove the source, but keep the install-root
-RUN rm -rf subsurface libgit2 googlemaps grantlee
+RUN rm -rf subsurface libgit2 googlemaps grantlee
\ No newline at end of file
diff --git a/scripts/docker/trusty-qt512/getpackages.sh b/scripts/docker/trusty-qt512/getpackages.sh
new file mode 100644
index 000000000..9b0e0fbe3
--- /dev/null
+++ b/scripts/docker/trusty-qt512/getpackages.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+wget https://github.com/Kitware/CMake/releases/download/v3.13.2/cmake-3.13.2-Linux-x86_64.sh
+wget http://download.qt.io/official_releases/qt/5.12/5.12.4/qt-opensource-linux-x64-5.12.4.run
+curl -O https://dbus.freedesktop.org/releases/dbus/dbus-1.12.16.tar.gz
+wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1.tar.gz
diff --git a/scripts/linux-trusty-qt512/before_install.sh b/scripts/linux-trusty-qt512/before_install.sh
index 1d1e057cc..cd119c774 100644
--- a/scripts/linux-trusty-qt512/before_install.sh
+++ b/scripts/linux-trusty-qt512/before_install.sh
@@ -28,4 +28,4 @@ export QT_ROOT=/usr/local/Qt/5.12.4
 cd ${TRAVIS_BUILD_DIR}/..
 
 # start the container and keep it running
-docker run -v $PWD/subsurface:/subsurface --name=trusty-qt512 -w / -d dirkhh/trusty-qt512:0.6 /bin/sleep 60m
+docker run -v $PWD/subsurface:/subsurface --name=trusty-qt512 -w / -d dirkhh/trusty-qt512:0.7 /bin/sleep 60m
diff --git a/scripts/linux-trusty-qt512/in-container-build.sh b/scripts/linux-trusty-qt512/in-container-build.sh
index 226170f93..c8c21bc31 100644
--- a/scripts/linux-trusty-qt512/in-container-build.sh
+++ b/scripts/linux-trusty-qt512/in-container-build.sh
@@ -23,6 +23,8 @@ mv appdir/usr/usr/local/Qt/5.12.4/gcc_64/plugins/* appdir/usr/plugins  # the usr
 mv appdir/usr/lib/grantlee/ appdir/usr/plugins/
 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
 rm -rf appdir/usr/usr appdir/usr/lib/cmake appdir/usr/lib/pkgconfig
+cp /ssllibs/libssl.so appdir/usr/lib/libssl.so.1.1
+cp /ssllibs/libcrypto.so appdir/usr/lib/libcrypto.so.1.1
 
 # get the linuxdeployqt tool and run it to collect the libraries
 curl -L -O "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
-- 
cgit v1.2.3-70-g09d2