From e4d9fa98da1cb6697ee61b345be040157fd5d6fd Mon Sep 17 00:00:00 2001 From: phil Date: Thu, 13 Jan 2022 12:47:24 +0100 Subject: [PATCH] AppVeyor: install and include OpenSSL Qt5 does not include OpenSSL libraries it was build against. See https://forum.qt.io/topic/95700/qsslsocket-tls-initialization-failed/18 As a result we have to make sure a compatible libssl.dll and libcrypto.dll is included in PATH when the software is loaded. It seems not to be detected by our Python dependency script. So, I added it manually like the JACK library. Important: when upgrading/downgrading the Qt version a different version of OpenSSL might be required. One has to manually check the version it was build against https://wiki.qt.io/Qt_5.15_Tools_and_Versions#windows_10_x86_64_7. But this can also be abstracted by a unit test as soon as the GUI can also be covered (I think we have to build a dedicated library as in https://github.com/hydrogen-music/hydrogen/pull/1329 first). --- .appveyor.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.appveyor.yml b/.appveyor.yml index aad1a2f102..b705ee7c82 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -19,6 +19,9 @@ environment: CMAKE_FLAGS: "-DWANT_DEBUG:BOOL=OFF -DWIN64:BOOL=ON" appveyor_build_worker_image: Visual Studio 2019 LIBJACK: libjack64.dll + OPENSSL_DIR: OpenSSL-Win64 + LIBSSL: libssl-1_1-x64.dll + LIBCRYPTO: libcrypto-1_1-x64.dll CHOCO_ARCH: PROGRAM_FILES: "Program Files" @@ -30,6 +33,9 @@ environment: CMAKE_FLAGS: "-DWANT_DEBUG:BOOL=OFF -DWIN64:BOOL=OFF" appveyor_build_worker_image: Visual Studio 2019 LIBJACK: libjack.dll + OPENSSL_DIR: OpenSSL-Win32 + LIBSSL: libssl-1_1.dll + LIBCRYPTO: libcrypto-1_1.dll CHOCO_ARCH: --x86 PROGRAM_FILES: "Program Files (x86)" @@ -123,6 +129,10 @@ for: dir "c:\%PROGRAM_FILES%\JACK2" dir "c:\%PROGRAM_FILES%\JACK2\lib" + choco install %CHOCO_ARCH% -y openssl --version=1.1.1.1300 + + dir "c:\%PROGRAM_FILES%\%OPENSSL_DIR%" + REM *** Install dependencies *** c:\msys64\usr\bin\pacman --noconfirm -S -q %MSYS_REPO%-libarchive c:\msys64\usr\bin\pacman --noconfirm -S -q %MSYS_REPO%-libsndfile @@ -175,7 +185,9 @@ for: REM copy_third_party_libs.py thinks it's a system lib and REM won't copy it. copy c:\Windows\%LIBJACK% %APPVEYOR_BUILD_FOLDER%\build\windows\extralibs - + copy c:\%PROGRAM_FILES%\%OPENSSL_DIR%\%LIBSSL% %APPVEYOR_BUILD_FOLDER%\build\windows\extralibs + copy c:\%PROGRAM_FILES%\%OPENSSL_DIR%\%LIBCRYPTO% %APPVEYOR_BUILD_FOLDER%\build\windows\extralibs + REM *** Build installer *** cpack -G NSIS -v