diff options
author | Cameron Gutman <aicommander@gmail.com> | 2020-12-21 12:32:38 -0600 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2021-01-20 14:41:49 +0000 |
commit | 7d0cbfc257ac18d14140f5516a0269a4d8ac320a (patch) | |
tree | c2f7d04e9e427dab5fc14c0d7a9fc7225fceff85 /src | |
parent | b2af6332ea37e45ab230a7a5d2d278f86d961b83 (diff) |
QSsl: fix OpenSSL DLL names for Windows on ARM
OpenSSL adds an '-arm'/'-arm64' suffix to the DLL names when building
for VC-WIN32-ARM or VC-WIN64-ARM. This needs to be accounted for in Qt
to find the OpenSSL DLLs correctly.
Fixes: QTBUG-89647
Change-Id: Ibc9b81e06f8e64c0676f335e13024fa7fe3a4fa3
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
(cherry picked from commit c111aad270f1d51c2e870ee25e9a6bba64b3cecc)
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/network/ssl/qsslsocket_openssl_symbols.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp index 9396516670..1683c9c3aa 100644 --- a/src/network/ssl/qsslsocket_openssl_symbols.cpp +++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp @@ -677,14 +677,18 @@ static LoadedOpenSsl loadOpenSsl() { LoadedOpenSsl result; - // With OpenSSL 1.1 the names have changed to libssl-1_1(-x64) and libcrypto-1_1(-x64), for builds using - // MSVC and GCC, (-x64 suffix for 64-bit builds). + // With OpenSSL 1.1 the names have changed to libssl-1_1 and libcrypto-1_1 for builds using + // MSVC and GCC, with architecture suffixes for non-x86 builds. -#ifdef Q_PROCESSOR_X86_64 +#if defined(Q_PROCESSOR_X86_64) #define QT_SSL_SUFFIX "-x64" -#else // !Q_PROCESSOFR_X86_64 +#elif defined(Q_PROCESSOR_ARM_64) +#define QT_SSL_SUFFIX "-arm64" +#elif defined(Q_PROCESSOR_ARM_32) +#define QT_SSL_SUFFIX "-arm" +#else #define QT_SSL_SUFFIX -#endif // !Q_PROCESSOR_x86_64 +#endif tryToLoadOpenSslWin32Library(QLatin1String("libssl-1_1" QT_SSL_SUFFIX), QLatin1String("libcrypto-1_1" QT_SSL_SUFFIX), result); |