In file included from /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qtlsbackend_openssl.cpp:4: /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:209:22: error: unknown type name 'OPENSSL_STACK' int q_OPENSSL_sk_num(OPENSSL_STACK *a); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:210:28: error: unknown type name 'OPENSSL_STACK' void q_OPENSSL_sk_pop_free(OPENSSL_STACK *a, void (*b)(void *)); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:211:1: error: unknown type name 'OPENSSL_STACK'; did you mean 'OPENSSL_BLOCK'? OPENSSL_STACK *q_OPENSSL_sk_new_null(); ^~~~~~~~~~~~~ OPENSSL_BLOCK /usr/local/include/openssl/safestack.h:132:15: note: 'OPENSSL_BLOCK' declared here typedef void *OPENSSL_BLOCK; ^ In file included from /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qtlsbackend_openssl.cpp:4: /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:212:24: error: unknown type name 'OPENSSL_STACK' void q_OPENSSL_sk_push(OPENSSL_STACK *st, void *data); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:213:24: error: unknown type name 'OPENSSL_STACK' void q_OPENSSL_sk_free(OPENSSL_STACK *a); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:214:27: error: unknown type name 'OPENSSL_STACK' void * q_OPENSSL_sk_value(OPENSSL_STACK *a, int b); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:217:45: error: unknown type name 'OPENSSL_INIT_SETTINGS' int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:250:48: error: unknown type name 'OPENSSL_INIT_SETTINGS' int q_OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:294:29: error: unknown type name 'BIO_ADDR' int q_DTLSv1_listen(SSL *s, BIO_ADDR *client); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:295:1: error: unknown type name 'BIO_ADDR' BIO_ADDR *q_BIO_ADDR_new(); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:296:22: error: unknown type name 'BIO_ADDR' void q_BIO_ADDR_free(BIO_ADDR *ap); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:428:1: error: unknown type name 'SSL_CONF_CTX'; did you mean 'SSL_AEAD_CTX'? SSL_CONF_CTX *q_SSL_CONF_CTX_new(); ^~~~~~~~~~~~ SSL_AEAD_CTX /usr/local/include/openssl/ssl.h:519:32: note: 'SSL_AEAD_CTX' declared here typedef struct ssl_aead_ctx_st SSL_AEAD_CTX; ^ In file included from /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qtlsbackend_openssl.cpp:4: /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:429:26: error: unknown type name 'SSL_CONF_CTX' void q_SSL_CONF_CTX_free(SSL_CONF_CTX *a); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:430:33: error: unknown type name 'SSL_CONF_CTX' void q_SSL_CONF_CTX_set_ssl_ctx(SSL_CONF_CTX *a, SSL_CTX *b); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:431:39: error: unknown type name 'SSL_CONF_CTX' unsigned int q_SSL_CONF_CTX_set_flags(SSL_CONF_CTX *a, unsigned int b); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:432:27: error: unknown type name 'SSL_CONF_CTX' int q_SSL_CONF_CTX_finish(SSL_CONF_CTX *a); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:433:20: error: unknown type name 'SSL_CONF_CTX' int q_SSL_CONF_cmd(SSL_CONF_CTX *a, const char *b, const char *c); ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qtlsbackend_openssl.cpp:44:25: error: use of undeclared identifier 'OPENSSL_STACK' for (int i = 0; i < q_sk_SSL_CIPHER_num(supportedCiphers); ++i) { ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:542:33: note: expanded from macro 'q_sk_SSL_CIPHER_num' #define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num((st)) ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:241:44: note: expanded from macro 'q_SKM_sk_num' #define q_SKM_sk_num(st) q_OPENSSL_sk_num((OPENSSL_STACK *)st) ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qtlsbackend_openssl.cpp:44:25: error: expected expression /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:542:33: note: expanded from macro 'q_sk_SSL_CIPHER_num' #define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num((st)) ^ /wrkdirs/usr/ports/devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h:241:59: note: expanded from macro 'q_SKM_sk_num' #define q_SKM_sk_num(st) q_OPENSSL_sk_num((OPENSSL_STACK *)st) ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. Found this "QSslSocket: OpenSSL >= 1.1.1 is required; %s was found instead" in devel/qt6-base/work/qtbase-everywhere-src-6.4.2/src/plugins/tls/openssl/qopenssl_p.h which is annoying as qt6-base 6.3 actually built with libressl.
Also doesn't work with LibreSSL 3.6.2. Looks like the same errors.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=8efd8ab39b18ee443a41a4c0c780e6663843e9ab commit 8efd8ab39b18ee443a41a4c0c780e6663843e9ab Author: Jason E. Hale <jhale@FreeBSD.org> AuthorDate: 2023-10-24 19:12:16 +0000 Commit: Jason E. Hale <jhale@FreeBSD.org> CommitDate: 2023-10-24 21:26:04 +0000 devel/qt6-base: Enable building with non-base SSL Fix detection of desired SSL provider. Previously, qt6-base was only using OpenSSL from base, but this change allows users to build against whichever SSL provider they have chosen via DEFAULT_VERSIONS. LibreSSL support has also been added and is largely based on patches obtained from the OpenBSD ports tree. Fixes [1]. Subsequently, refresh old patches. PR: 269316 [1] Reported by: <tjlegg@gmail.com> [1] MFH: 2023Q4 (after 1 week) devel/qt6-base/Makefile | 18 ++- devel/qt6-base/files/patch-cmake_QtBuild.cmake | 4 +- .../files/patch-cmake_QtFlagHandlingHelpers.cmake | 4 +- .../files/patch-cmake_QtPkgConfigHelpers.cmake | 4 +- .../files/patch-cmake_QtRpathHelpers.cmake | 6 +- ...t_input_evdevkeyboard_qevdevkeyboardhandler.cpp | 4 +- ...support_input_evdevmouse_qevdevmousehandler.cpp | 4 +- ...pport_input_evdevtablet_qevdevtablethandler.cpp | 4 +- ...support_input_evdevtouch_qevdevtouchhandler.cpp | 4 +- ...tch-src_plugins_tls_openssl_qopenssl__p.h (new) | 16 ++ ...gins_tls_openssl_qsslcontext__openssl.cpp (new) | 62 ++++++++ ..._openssl_qsslsocket__openssl__symbols.cpp (new) | 170 +++++++++++++++++++++ ...openssl_qsslsocket__openssl__symbols__p.h (new) | 146 ++++++++++++++++++ ...src_plugins_tls_openssl_qtls__openssl.cpp (new) | 18 +++ ...rc_plugins_tls_openssl_qx509__openssl.cpp (new) | 68 +++++++++ devel/qt6-base/pkg-plist | 8 +- 16 files changed, 517 insertions(+), 23 deletions(-)
Sorry it took so long to address the issue, but qt6-base 6.5.3 now builds and runs with at least LibreSSL 3.7.3.