commit: 417210dd07702225c5999562aea96fdfa9a38e23 Author: orbea <orbea <AT> riseup <DOT> net> AuthorDate: Wed Jan 28 16:06:09 2026 +0000 Commit: orbea <orbea <AT> riseup <DOT> net> CommitDate: Wed Jan 28 16:06:09 2026 +0000 URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=417210dd
dev-qt/qtbase: drop 6.9.3 Signed-off-by: orbea <orbea <AT> riseup.net> dev-qt/qtbase/Manifest | 1 - .../qtbase/files/qtbase-6.10.0-QTBUG-141099.patch | 31 -- dev-qt/qtbase/files/qtbase-6.6.0-libressl.patch | 353 ----------------- dev-qt/qtbase/qtbase-6.9.3.ebuild | 417 --------------------- 4 files changed, 802 deletions(-) diff --git a/dev-qt/qtbase/Manifest b/dev-qt/qtbase/Manifest index 98b89d2..610056e 100644 --- a/dev-qt/qtbase/Manifest +++ b/dev-qt/qtbase/Manifest @@ -1,3 +1,2 @@ DIST qtbase-everywhere-src-6.10.1.tar.xz 50234516 BLAKE2B bf4f79725d817b681f302d95827e425aa578302feaa8980b1263fbb3ef12480ce0d573b36b25738b9b673294a9d7227c8869ccef3b22a176c7655fe501767f58 SHA512 fd5dcdc59ec3b39e48563513ae438eb4540a28e72c46961295de2ccb08609289d477ef7e91aac0b8983f2d5b05b901b4f5be10eaca4ac4c6aa8cd598f37a228e DIST qtbase-everywhere-src-6.10.2.tar.xz 50374380 BLAKE2B cc02accc0387e57d7ec7f094963d9d0b1010720233a99979da5df35a589028bbe080677317486cc52d941256f758b6e977ced3922398b4b7da8b669b2d16e361 SHA512 69e7317aa3114d8ca14e0067a001e42f0d2b9208070bdd1a2391cc1b1ccbb7fc3f90c8adcb0742d3c0b4ec7b3a6b770dbb411265458330d05d45f306cfae95c2 -DIST qtbase-everywhere-src-6.9.3.tar.xz 49856272 BLAKE2B c25fdd711061ae7521f8f0838e40db2b800062e469bef946ee57959846667450a33d817c84e5ae733d00b86f3daac25ecafa66aaf6fff76c68525718ad20a44c SHA512 d49b6356869830b7421e8bb94354884c132dcb37b9b2d56c88671bff0fe60e51a4ee961a7db3f248da84d0eda64af1636f1bdf59fdc0bbf8e50147c370e901de diff --git a/dev-qt/qtbase/files/qtbase-6.10.0-QTBUG-141099.patch b/dev-qt/qtbase/files/qtbase-6.10.0-QTBUG-141099.patch deleted file mode 100644 index d4edaeb..0000000 --- a/dev-qt/qtbase/files/qtbase-6.10.0-QTBUG-141099.patch +++ /dev/null @@ -1,31 +0,0 @@ -https://bugreports.qt.io/browse/QTBUG-141099 -https://codereview.qt-project.org/c/qt/qtbase/+/685911 ---- a/src/gui/kernel/qguiapplication.cpp -+++ b/src/gui/kernel/qguiapplication.cpp -@@ -3418,4 +3418,13 @@ - QWindowPrivate *p = qt_window_private(window); - -+ if (e->isExposed) { -+ // If the window has been automatically positioned or resized by the -+ // window manager, we now assume those have taken effect, even for -+ // asynchronous window managers. From this point on we want the window -+ // to keep its geometry, even when recreated. -+ p->positionAutomatic = false; -+ p->resizeAutomatic = false; -+ } -+ - if (!p->receivedExpose) { - if (p->resizeEventPending) { ---- a/src/gui/kernel/qwindow.cpp -+++ b/src/gui/kernel/qwindow.cpp -@@ -587,10 +587,4 @@ - platformWindow->initialize(); - -- // Now that the window is created and initialized the platform has had -- // a chance to position and size it automatically. From this point on -- // we want the window to keep its geometry, even when recreated. -- positionAutomatic = false; -- resizeAutomatic = false; -- - QObjectList childObjects = q->children(); - for (int i = 0; i < childObjects.size(); i ++) { diff --git a/dev-qt/qtbase/files/qtbase-6.6.0-libressl.patch b/dev-qt/qtbase/files/qtbase-6.6.0-libressl.patch deleted file mode 100644 index 5531519..0000000 --- a/dev-qt/qtbase/files/qtbase-6.6.0-libressl.patch +++ /dev/null @@ -1,353 +0,0 @@ -Fixes Qt6 build on LibreSSL. - -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_network_ssl_qsslsocket_openssl_symbols_cpp?rev=1.8 -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_plugins_tls_openssl_qopenssl_p_h?rev=1.2 -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_plugins_tls_openssl_qsslcontext_openssl_cpp?rev=1.2 -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_plugins_tls_openssl_qsslsocket_openssl_symbols_p_h?rev=1.2 -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_plugins_tls_openssl_qtls_openssl_cpp?rev=1.2 -http://cvsweb.openbsd.org/ports/x11/qt6/qtbase/patches/patch-src_plugins_tls_openssl_qx509_openssl_cpp?rev=1.3 - ---- a/src/plugins/tls/openssl/qopenssl_p.h -+++ b/src/plugins/tls/openssl/qopenssl_p.h -@@ -70,6 +70,13 @@ - - QT_BEGIN_NAMESPACE - -+#ifndef DTLS_ANY_VERSION -+#define DTLS_ANY_VERSION 0x1FFFF -+#endif -+#ifndef TLS_ANY_VERSION -+#define TLS_ANY_VERSION 0x10000 -+#endif -+ - struct QSslErrorEntry { - int code = 0; - int depth = 0; ---- a/src/plugins/tls/openssl/qsslcontext_openssl.cpp -+++ b/src/plugins/tls/openssl/qsslcontext_openssl.cpp -@@ -49,9 +49,9 @@ extern "C" int q_verify_cookie_callback(SSL *ssl, const unsigned char *cookie, - } - #endif // dtls - --#ifdef TLS1_3_VERSION -+#if defined(TLS1_3_VERSION) && !defined(LIBRESSL_VERSION_NUMBER) - extern "C" int q_ssl_sess_set_new_cb(SSL *context, SSL_SESSION *session); --#endif // TLS1_3_VERSION -+#endif // TLS1_3_VERSION && LIBRESSL_VERSION_NUMBE - - static inline QString msgErrorSettingBackendConfig(const QString &why) - { -@@ -370,9 +370,11 @@ QT_WARNING_POP - return; - } - -+#ifndef LIBRESSL_VERSION_NUMBER - // A nasty hacked OpenSSL using a level that will make our auto-tests fail: - if (q_SSL_CTX_get_security_level(sslContext->ctx) > 1 && *forceSecurityLevel()) - q_SSL_CTX_set_security_level(sslContext->ctx, 1); -+#endif // LIBRESSL_VERSION_NUMBER - - const long anyVersion = - #if QT_CONFIG(dtls) -@@ -663,14 +665,14 @@ QT_WARNING_POP - q_SSL_CTX_set_verify(sslContext->ctx, verificationMode, verificationCallback); - } - --#ifdef TLS1_3_VERSION -+#if defined(TLS1_3_VERSION) && !defined(LIBRESSL_VERSION_NUMBER) - // NewSessionTicket callback: - if (mode == QSslSocket::SslClientMode && !isDtls) { - q_SSL_CTX_sess_set_new_cb(sslContext->ctx, q_ssl_sess_set_new_cb); - q_SSL_CTX_set_session_cache_mode(sslContext->ctx, SSL_SESS_CACHE_CLIENT); - } - --#endif // TLS1_3_VERSION -+#endif // TLS1_3_VERSION && LIBRESSL_VERSION_NUMBER - - #if QT_CONFIG(dtls) - // DTLS cookies: -@@ -758,6 +760,7 @@ void QSslContext::applyBackendConfig(QSslContext *sslContext) - } - #endif // ocsp - -+#ifndef LIBRESSL_VERSION_NUMBER - QSharedPointer<SSL_CONF_CTX> cctx(q_SSL_CONF_CTX_new(), &q_SSL_CONF_CTX_free); - if (cctx) { - q_SSL_CONF_CTX_set_ssl_ctx(cctx.data(), sslContext->ctx); -@@ -804,7 +807,9 @@ void QSslContext::applyBackendConfig(QSslContext *sslContext) - sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_finish() failed")); - sslContext->errorCode = QSslError::UnspecifiedError; - } -- } else { -+ } else -+#endif // LIBRESSL_VERSION_NUMBER -+ { - sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_CTX_new() failed")); - sslContext->errorCode = QSslError::UnspecifiedError; - } ---- a/src/plugins/tls/openssl/qsslsocket_openssl_symbols.cpp -+++ b/src/plugins/tls/openssl/qsslsocket_openssl_symbols.cpp -@@ -113,14 +113,25 @@ DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return) - DEFINEFUNC(int, EVP_CIPHER_CTX_reset, EVP_CIPHER_CTX *c, c, return 0, return) - DEFINEFUNC(int, EVP_PKEY_up_ref, EVP_PKEY *a, a, return 0, return) - DEFINEFUNC2(EVP_PKEY_CTX *, EVP_PKEY_CTX_new, EVP_PKEY *pkey, pkey, ENGINE *e, e, return nullptr, return) -+#ifndef LIBRESSL_VERSION_NUMBER - DEFINEFUNC(int, EVP_PKEY_param_check, EVP_PKEY_CTX *ctx, ctx, return 0, return) -+#endif - DEFINEFUNC(void, EVP_PKEY_CTX_free, EVP_PKEY_CTX *ctx, ctx, return, return) -+#ifndef LIBRESSL_VERSION_NUMBER - DEFINEFUNC(int, OPENSSL_sk_num, OPENSSL_STACK *a, a, return -1, return) - DEFINEFUNC2(void, OPENSSL_sk_pop_free, OPENSSL_STACK *a, a, void (*b)(void*), b, return, DUMMYARG) - DEFINEFUNC(OPENSSL_STACK *, OPENSSL_sk_new_null, DUMMYARG, DUMMYARG, return nullptr, return) - DEFINEFUNC2(void, OPENSSL_sk_push, OPENSSL_STACK *a, a, void *b, b, return, DUMMYARG) - DEFINEFUNC(void, OPENSSL_sk_free, OPENSSL_STACK *a, a, return, DUMMYARG) - DEFINEFUNC2(void *, OPENSSL_sk_value, OPENSSL_STACK *a, a, int b, b, return nullptr, return) -+#else -+DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return) -+DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG) -+DEFINEFUNC(_STACK *, sk_new_null, DUMMYARG, DUMMYARG, return nullptr, return) -+DEFINEFUNC2(void, sk_push, _STACK *a, a, void *b, b, return, DUMMYARG) -+DEFINEFUNC(void, sk_free, _STACK *a, a, return, DUMMYARG) -+DEFINEFUNC2(void *, sk_value, STACK *a, a, int b, b, return nullptr, return) -+#endif // LIBRESSL_VERSION_NUMBER - DEFINEFUNC(int, SSL_session_reused, SSL *a, a, return 0, return) - DEFINEFUNC2(qssloptions, SSL_CTX_set_options, SSL_CTX *ctx, ctx, qssloptions op, op, return 0, return) - using info_callback = void (*) (const SSL *ssl, int type, int val); -@@ -154,7 +165,11 @@ DEFINEFUNC2(void, X509_STORE_set_verify_cb, X509_STORE *a, a, X509_STORE_CTX_ver - DEFINEFUNC3(int, X509_STORE_set_ex_data, X509_STORE *a, a, int idx, idx, void *data, data, return 0, return) - DEFINEFUNC2(void *, X509_STORE_get_ex_data, X509_STORE *r, r, int idx, idx, return nullptr, return) - DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get0_chain, X509_STORE_CTX *a, a, return nullptr, return) -+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3090000fL) - DEFINEFUNC3(void, CRYPTO_free, void *str, str, const char *file, file, int line, line, return, DUMMYARG) -+#else -+DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG) -+#endif - DEFINEFUNC3(int, CRYPTO_memcmp, const void * in_a, in_a, const void * in_b, in_b, size_t len, len, return 1, return); - DEFINEFUNC(long, OpenSSL_version_num, void, DUMMYARG, return 0, return) - DEFINEFUNC(const char *, OpenSSL_version, int a, a, return nullptr, return) -@@ -289,12 +304,14 @@ DEFINEFUNC3(int, SSL_CTX_use_certificate_file, SSL_CTX *a, a, const char *b, b, - DEFINEFUNC2(int, SSL_CTX_use_PrivateKey, SSL_CTX *a, a, EVP_PKEY *b, b, return -1, return) - DEFINEFUNC3(int, SSL_CTX_use_PrivateKey_file, SSL_CTX *a, a, const char *b, b, int c, c, return -1, return) - DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *a, a, return nullptr, return) -+#ifndef LIBRESSL_VERSION_NUMBER - DEFINEFUNC(SSL_CONF_CTX *, SSL_CONF_CTX_new, DUMMYARG, DUMMYARG, return nullptr, return); - DEFINEFUNC(void, SSL_CONF_CTX_free, SSL_CONF_CTX *a, a, return ,return); - DEFINEFUNC2(void, SSL_CONF_CTX_set_ssl_ctx, SSL_CONF_CTX *a, a, SSL_CTX *b, b, return, return); - DEFINEFUNC2(unsigned int, SSL_CONF_CTX_set_flags, SSL_CONF_CTX *a, a, unsigned int b, b, return 0, return); - DEFINEFUNC(int, SSL_CONF_CTX_finish, SSL_CONF_CTX *a, a, return 0, return); - DEFINEFUNC3(int, SSL_CONF_cmd, SSL_CONF_CTX *a, a, const char *b, b, const char *c, c, return 0, return); -+#endif - DEFINEFUNC(void, SSL_free, SSL *a, a, return, DUMMYARG) - DEFINEFUNC(STACK_OF(SSL_CIPHER) *, SSL_get_ciphers, const SSL *a, a, return nullptr, return) - DEFINEFUNC(const SSL_CIPHER *, SSL_get_current_cipher, SSL *a, a, return nullptr, return) -@@ -866,14 +883,25 @@ bool q_resolveOpenSslSymbols() - RESOLVEFUNC(AUTHORITY_INFO_ACCESS_free) - RESOLVEFUNC(EVP_PKEY_up_ref) - RESOLVEFUNC(EVP_PKEY_CTX_new) -+#ifndef LIBRESSL_VERSION_NUMBER - RESOLVEFUNC(EVP_PKEY_param_check) -+#endif - RESOLVEFUNC(EVP_PKEY_CTX_free) -+#ifndef LIBRESSL_VERSION_NUMBER - RESOLVEFUNC(OPENSSL_sk_new_null) - RESOLVEFUNC(OPENSSL_sk_push) - RESOLVEFUNC(OPENSSL_sk_free) - RESOLVEFUNC(OPENSSL_sk_num) - RESOLVEFUNC(OPENSSL_sk_pop_free) - RESOLVEFUNC(OPENSSL_sk_value) -+#else -+ RESOLVEFUNC(sk_new_null) -+ RESOLVEFUNC(sk_push) -+ RESOLVEFUNC(sk_free) -+ RESOLVEFUNC(sk_num) -+ RESOLVEFUNC(sk_pop_free) -+ RESOLVEFUNC(sk_value) -+#endif - RESOLVEFUNC(SSL_CTX_set_options) - RESOLVEFUNC(SSL_set_info_callback) - RESOLVEFUNC(SSL_alert_type_string) -@@ -1056,12 +1084,14 @@ bool q_resolveOpenSslSymbols() - RESOLVEFUNC(SSL_CTX_use_PrivateKey) - RESOLVEFUNC(SSL_CTX_use_PrivateKey_file) - RESOLVEFUNC(SSL_CTX_get_cert_store); -+#ifndef LIBRESSL_VERSION_NUMBER - RESOLVEFUNC(SSL_CONF_CTX_new); - RESOLVEFUNC(SSL_CONF_CTX_free); - RESOLVEFUNC(SSL_CONF_CTX_set_ssl_ctx); - RESOLVEFUNC(SSL_CONF_CTX_set_flags); - RESOLVEFUNC(SSL_CONF_CTX_finish); - RESOLVEFUNC(SSL_CONF_cmd); -+#endif - RESOLVEFUNC(SSL_accept) - RESOLVEFUNC(SSL_clear) - RESOLVEFUNC(SSL_connect) ---- a/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h -+++ b/src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h -@@ -46,6 +46,12 @@ QT_BEGIN_NAMESPACE - - #define DUMMYARG - -+#ifdef LIBRESSL_VERSION_NUMBER -+typedef _STACK STACK; -+typedef STACK OPENSSL_STACK; -+typedef void OPENSSL_INIT_SETTINGS; -+#endif -+ - #if !defined QT_LINKED_OPENSSL - // **************** Shared declarations ****************** - // ret func(arg) -@@ -205,6 +211,7 @@ int q_EVP_CIPHER_CTX_reset(EVP_CIPHER_CTX *c); - int q_EVP_PKEY_up_ref(EVP_PKEY *a); - EVP_PKEY_CTX *q_EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e); - void q_EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx); -+#ifndef LIBRESSL_VERSION_NUMBER - int q_EVP_PKEY_param_check(EVP_PKEY_CTX *ctx); - int q_OPENSSL_sk_num(OPENSSL_STACK *a); - void q_OPENSSL_sk_pop_free(OPENSSL_STACK *a, void (*b)(void *)); -@@ -212,6 +219,20 @@ OPENSSL_STACK *q_OPENSSL_sk_new_null(); - void q_OPENSSL_sk_push(OPENSSL_STACK *st, void *data); - void q_OPENSSL_sk_free(OPENSSL_STACK *a); - void * q_OPENSSL_sk_value(OPENSSL_STACK *a, int b); -+#else // LIBRESSL_VERSION_NUMBER -+int q_sk_num(STACK *a); -+#define q_OPENSSL_sk_num(a) q_sk_num(a) -+void q_sk_pop_free(STACK *a, void (*b)(void *)); -+#define q_OPENSSL_sk_pop_free(a, b) q_sk_pop_free(a, b) -+STACK *q_sk_new_null(); -+#define q_OPENSSL_sk_new_null() q_sk_new_null() -+void q_sk_push(STACK *st, void *data); -+#define q_OPENSSL_sk_push(st, data) q_sk_push(st, data) -+void q_sk_free(STACK *a); -+#define q_OPENSSL_sk_free q_sk_free -+void * q_sk_value(STACK *a, int b); -+#define q_OPENSSL_sk_value(a, b) q_sk_value(a, b) -+#endif // LIBRESSL_VERSION_NUMBER - int q_SSL_session_reused(SSL *a); - qssloptions q_SSL_CTX_set_options(SSL_CTX *ctx, qssloptions op); - int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings); -@@ -237,8 +258,13 @@ STACK_OF(X509) *q_X509_STORE_CTX_get0_chain(X509_STORE_CTX *ctx); - # define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS \ - | OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL) - -+#ifndef LIBRESSL_VERSION_NUMBER - #define q_SKM_sk_num(st) q_OPENSSL_sk_num((OPENSSL_STACK *)st) - #define q_SKM_sk_value(type, st,i) (type *)q_OPENSSL_sk_value((OPENSSL_STACK *)st, i) -+#else // LIBRESSL_VERSION_NUMBER -+#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st) -+#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i) -+#endif // LIBRESSL_VERSION_NUMBER - - #define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \ - | OPENSSL_INIT_ADD_ALL_DIGESTS \ -@@ -423,12 +449,14 @@ int q_SSL_CTX_use_certificate_file(SSL_CTX *a, const char *b, int c); - int q_SSL_CTX_use_PrivateKey(SSL_CTX *a, EVP_PKEY *b); - int q_SSL_CTX_use_PrivateKey_file(SSL_CTX *a, const char *b, int c); - X509_STORE *q_SSL_CTX_get_cert_store(const SSL_CTX *a); -+#ifndef LIBRESSL_VERSION_NUMBER - SSL_CONF_CTX *q_SSL_CONF_CTX_new(); - void q_SSL_CONF_CTX_free(SSL_CONF_CTX *a); - void q_SSL_CONF_CTX_set_ssl_ctx(SSL_CONF_CTX *a, SSL_CTX *b); - unsigned int q_SSL_CONF_CTX_set_flags(SSL_CONF_CTX *a, unsigned int b); - int q_SSL_CONF_CTX_finish(SSL_CONF_CTX *a); - int q_SSL_CONF_cmd(SSL_CONF_CTX *a, const char *b, const char *c); -+#endif // LIBRESSL_VERSION_NUMBER - void q_SSL_free(SSL *a); - STACK_OF(SSL_CIPHER) *q_SSL_get_ciphers(const SSL *a); - const SSL_CIPHER *q_SSL_get_current_cipher(SSL *a); -@@ -536,14 +564,26 @@ void q_PKCS12_free(PKCS12 *pkcs12); - #define q_BIO_get_mem_data(b, pp) (int)q_BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp) - #define q_BIO_pending(b) (int)q_BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL) - #define q_SSL_CTX_set_mode(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_MODE,(op),NULL) -+#ifndef LIBRESSL_VERSION_NUMBER - #define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num((st)) -+#else -+#define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st)) -+#endif - #define q_sk_GENERAL_NAME_value(st, i) q_SKM_sk_value(GENERAL_NAME, (st), (i)) - - void q_GENERAL_NAME_free(GENERAL_NAME *a); - -+#ifndef LIBRESSL_VERSION_NUMBER - #define q_sk_X509_num(st) q_SKM_sk_num((st)) -+#else -+#define q_sk_X509_num(st) q_SKM_sk_num(X509, (st)) -+#endif - #define q_sk_X509_value(st, i) q_SKM_sk_value(X509, (st), (i)) -+#ifndef LIBRESSL_VERSION_NUMBER - #define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num((st)) -+#else -+#define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num(SSL_CIPHER, (st)) -+#endif - #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i)) - #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \ - q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509) -@@ -664,8 +704,13 @@ int q_OCSP_id_cmp(OCSP_CERTID *a, OCSP_CERTID *b); - - void *q_CRYPTO_malloc(size_t num, const char *file, int line); - #define q_OPENSSL_malloc(num) q_CRYPTO_malloc(num, "", 0) -+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3090000fL) - void q_CRYPTO_free(void *str, const char *file, int line); - # define q_OPENSSL_free(addr) q_CRYPTO_free(addr, "", 0) -+#else -+void q_CRYPTO_free(void *a); -+# define q_OPENSSL_free(addr) q_CRYPTO_free(addr) -+#endif - int q_CRYPTO_memcmp(const void * in_a, const void * in_b, size_t len); - - void q_SSL_set_info_callback(SSL *ssl, void (*cb) (const SSL *ssl, int type, int val)); ---- a/src/plugins/tls/openssl/qtls_openssl.cpp -+++ b/src/plugins/tls/openssl/qtls_openssl.cpp -@@ -1438,13 +1438,13 @@ bool TlsCryptographOpenSSL::initSslContext() - else if (mode == QSslSocket::SslServerMode) - q_SSL_set_psk_server_callback(ssl, &q_ssl_psk_server_callback); - --#if OPENSSL_VERSION_NUMBER >= 0x10101006L -+#if OPENSSL_VERSION_NUMBER >= 0x10101006L && !defined(LIBRESSL_VERSION_NUMBER) - // Set the client callback for TLSv1.3 PSK - if (mode == QSslSocket::SslClientMode - && QSslSocket::sslLibraryBuildVersionNumber() >= 0x10101006L) { - q_SSL_set_psk_use_session_callback(ssl, &q_ssl_psk_use_session_callback); - } --#endif // openssl version >= 0x10101006L -+#endif // OPENSSL_VERSION_NUMBER >= 0x10101006L && !defined(LIBRESSL_VERSION_NUMBER) - - #endif // OPENSSL_NO_PSK - ---- a/src/plugins/tls/openssl/qx509_openssl.cpp -+++ b/src/plugins/tls/openssl/qx509_openssl.cpp -@@ -64,7 +64,11 @@ QMultiMap<QByteArray, QString> mapFromX509Name(X509_NAME *name) - unsigned char *data = nullptr; - int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e)); - info.insert(name, QString::fromUtf8((char*)data, size)); -+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3090000fL) - q_CRYPTO_free(data, nullptr, 0); -+#else -+ q_CRYPTO_free(data); -+#endif - } - - return info; -@@ -190,7 +194,11 @@ QVariant x509UnknownExtensionToValue(X509_EXTENSION *ext) - QVariantList list; - bool isMap = false; - -+#if defined(LIBRESSL_VERSION_NUMBER) -+ for (int j = 0; j < q_SKM_sk_num(CONF_VALUE, val); j++) { -+#else - for (int j = 0; j < q_SKM_sk_num(val); j++) { -+#endif - CONF_VALUE *nval = q_SKM_sk_value(CONF_VALUE, val, j); - if (nval->name && nval->value) { - isMap = true; -@@ -286,7 +294,11 @@ QVariant x509ExtensionToValue(X509_EXTENSION *ext) - if (!info) - return {}; - QVariantMap result; -+#if defined(LIBRESSL_VERSION_NUMBER) -+ for (int i=0; i < q_SKM_sk_num(ACCESS_DESCRIPTION, info); i++) { -+#else - for (int i=0; i < q_SKM_sk_num(info); i++) { -+#endif - ACCESS_DESCRIPTION *ad = q_SKM_sk_value(ACCESS_DESCRIPTION, info, i); - - GENERAL_NAME *name = ad->location; diff --git a/dev-qt/qtbase/qtbase-6.9.3.ebuild b/dev-qt/qtbase/qtbase-6.9.3.ebuild deleted file mode 100644 index 9a96de1..0000000 --- a/dev-qt/qtbase/qtbase-6.9.3.ebuild +++ /dev/null @@ -1,417 +0,0 @@ -# Copyright 2021-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -QT6_HAS_STATIC_LIBS=1 -inherit flag-o-matic qt6-build toolchain-funcs - -DESCRIPTION="Cross-platform application development framework" - -if [[ ${QT6_BUILD_TYPE} == release ]]; then - KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86" -fi - -declare -A QT6_IUSE=( - [global]="+ssl +udev zstd" - [core]="icu journald syslog" - [modules]="+concurrent +dbus +gui +network +sql +xml" - - [gui]=" - +X accessibility eglfs evdev gles2-only +libinput - opengl renderdoc tslib vulkan wayland +widgets - " - [network]="brotli gssapi libproxy sctp" - [sql]="mysql oci8 odbc postgres +sqlite" - [widgets]="cups gtk" - - [optfeature]="nls" #810802 -) -IUSE="${QT6_IUSE[*]}" -REQUIRED_USE=" - ?? ( journald syslog ) - $( - printf '%s? ( gui ) ' ${QT6_IUSE[gui]//+/} - printf '%s? ( network ) ' ${QT6_IUSE[network]//+/} - printf '%s? ( sql ) ' ${QT6_IUSE[sql]//+/} - printf '%s? ( gui widgets ) ' ${QT6_IUSE[widgets]//+/} - ) - accessibility? ( dbus ) - eglfs? ( opengl ) - gles2-only? ( opengl ) - gui? ( || ( X eglfs wayland ) ) - libinput? ( udev ) - sql? ( || ( ${QT6_IUSE[sql]//+/} ) ) - test? ( icu sql? ( sqlite ) ) -" - -# groups: -# - global (configure.cmake) -# - qtcore (src/corelib/configure.cmake) -# - qtgui (src/gui/configure.cmake) -# - qtnetwork (src/network/configure.cmake) -# - qtprintsupport (src/printsupport/configure.cmake) [gui+widgets] -# - qtsql (src/plugins/sqldrivers/configure.cmake) -# nolink: renderdoc, systemd -COMMON_DEPEND=" - virtual/zlib:= - ssl? ( dev-libs/openssl:= ) - udev? ( virtual/libudev:= ) - zstd? ( app-arch/zstd:= ) - - app-crypt/libb2 - dev-libs/double-conversion:= - dev-libs/glib:2 - dev-libs/libpcre2:=[pcre16,unicode(+)] - icu? ( dev-libs/icu:= ) - journald? ( sys-apps/systemd ) - - dbus? ( sys-apps/dbus ) - gui? ( - dev-libs/md4c - media-libs/fontconfig - >=media-libs/freetype-2.13.1:2 - media-libs/harfbuzz:= - media-libs/libjpeg-turbo:= - media-libs/libpng:= - x11-libs/libdrm - x11-libs/libxkbcommon[X?] - X? ( - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libxcb:= - x11-libs/xcb-util-cursor - x11-libs/xcb-util-image - x11-libs/xcb-util-keysyms - x11-libs/xcb-util-renderutil - x11-libs/xcb-util-wm - ) - accessibility? ( app-accessibility/at-spi2-core:2 ) - eglfs? ( media-libs/mesa[gbm(+)] ) - evdev? ( sys-libs/mtdev ) - libinput? ( dev-libs/libinput:= ) - opengl? ( - gles2-only? ( media-libs/libglvnd ) - !gles2-only? ( media-libs/libglvnd[X?] ) - ) - renderdoc? ( media-gfx/renderdoc ) - tslib? ( x11-libs/tslib ) - widgets? ( - cups? ( net-print/cups ) - gtk? ( - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-3.24.41-r1:3[X?,wayland?] - x11-libs/pango - ) - ) - ) - network? ( - brotli? ( app-arch/brotli:= ) - gssapi? ( virtual/krb5 ) - libproxy? ( net-libs/libproxy ) - ) - sql? ( - mysql? ( dev-db/mysql-connector-c:= ) - oci8? ( dev-db/oracle-instantclient:=[sdk] ) - odbc? ( dev-db/unixODBC ) - postgres? ( dev-db/postgresql:* ) - sqlite? ( dev-db/sqlite:3 ) - ) -" -# wrt blockers: users do not always depclean regularly and outdated -# dev-qt packages sometime cause runtime issues (update this when new -# Qt libraries/plugins are added, and keep old for 2y+ if removed) -RDEPEND=" - ${COMMON_DEPEND} - !<dev-qt/qt3d-${PV}:6 - !<dev-qt/qt5compat-${PV}:6 - !<dev-qt/qtcharts-${PV}:6 - !<dev-qt/qtconnectivity-${PV}:6 - !<dev-qt/qtdeclarative-${PV}:6 - !<dev-qt/qtgraphs-${PV}:6 - !<dev-qt/qthttpserver-${PV}:6 - !<dev-qt/qtimageformats-${PV}:6 - !<dev-qt/qtlanguageserver-${PV}:6 - !<dev-qt/qtlocation-${PV}:6 - !<dev-qt/qtmultimedia-${PV}:6 - !<dev-qt/qtnetworkauth-${PV}:6 - !<dev-qt/qtpositioning-${PV}:6 - !<dev-qt/qtquick3d-${PV}:6 - !<dev-qt/qtquicktimeline-${PV}:6 - !<dev-qt/qtremoteobjects-${PV}:6 - !<dev-qt/qtscxml-${PV}:6 - !<dev-qt/qtsensors-${PV}:6 - !<dev-qt/qtserialbus-${PV}:6 - !<dev-qt/qtserialport-${PV}:6 - !<dev-qt/qtshadertools-${PV}:6 - !<dev-qt/qtspeech-${PV}:6 - !<dev-qt/qtsvg-${PV}:6 - !<dev-qt/qttools-${PV}:6 - !<dev-qt/qtvirtualkeyboard-${PV}:6 - !<dev-qt/qtwayland-${PV}:6 - !<dev-qt/qtwebchannel-${PV}:6 - !<dev-qt/qtwebengine-${PV}:6 - !<dev-qt/qtwebsockets-${PV}:6 - !<dev-qt/qtwebview-${PV}:6 - syslog? ( virtual/logger ) -" -DEPEND=" - ${COMMON_DEPEND} - X? ( x11-base/xorg-proto ) - gui? ( - vulkan? ( dev-util/vulkan-headers ) - ) - network? ( - sctp? ( net-misc/lksctp-tools ) - ) - test? ( - elibc_musl? ( sys-libs/timezone-data ) - ) -" -BDEPEND="zstd? ( app-arch/libarchive[zstd] )" #910392 -PDEPEND=" - nls? ( ~dev-qt/qttranslations-${PV}:6 ) - wayland? ( ~dev-qt/qtwayland-${PV}:6 ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-6.6.0-libressl.patch - "${FILESDIR}"/${PN}-6.5.2-hppa-forkfd-grow-stack.patch - "${FILESDIR}"/${PN}-6.5.2-no-symlink-check.patch - "${FILESDIR}"/${PN}-6.6.1-forkfd-childstack-size.patch - "${FILESDIR}"/${PN}-6.6.3-gcc14-avx512fp16.patch - "${FILESDIR}"/${PN}-6.8.2-cross.patch - "${FILESDIR}"/${PN}-6.9.0-no-direct-extern-access.patch -) - -src_prepare() { - qt6-build_src_prepare - - if use test; then - # test itself has -Werror=strict-aliasing issues, drop for simplicity - sed -e '/add_subdirectory(qsharedpointer)/d' \ - -i tests/auto/corelib/tools/CMakeLists.txt || die - - # workaround for __extendhfxf2 being used for tst_qfloat16.cpp - # which is unavailable with compiler-rt (assume used if clang) - if tc-is-clang; then - sed -e '/add_subdirectory(qfloat16)/d' \ - -i tests/auto/corelib/global/CMakeLists.txt || die - fi - fi -} - -src_configure() { - if use gtk; then - # defang automagic dependencies (bug #624960) - use X || append-cxxflags -DGENTOO_GTK_HIDE_X11 - use wayland || append-cxxflags -DGENTOO_GTK_HIDE_WAYLAND - fi - - local mycmakeargs=( - -DBUILD_WITH_PCH=OFF - - -DINSTALL_ARCHDATADIR="${QT6_ARCHDATADIR}" - -DINSTALL_BINDIR="${QT6_BINDIR}" - -DINSTALL_DATADIR="${QT6_DATADIR}" - -DINSTALL_DOCDIR="${QT6_DOCDIR}" - -DINSTALL_EXAMPLESDIR="${QT6_EXAMPLESDIR}" - -DINSTALL_INCLUDEDIR="${QT6_HEADERDIR}" - -DINSTALL_LIBDIR="${QT6_LIBDIR}" - -DINSTALL_LIBEXECDIR="${QT6_LIBEXECDIR}" - -DINSTALL_MKSPECSDIR="${QT6_MKSPECSDIR}" - -DINSTALL_PLUGINSDIR="${QT6_PLUGINDIR}" - -DINSTALL_QMLDIR="${QT6_QMLDIR}" - -DINSTALL_SYSCONFDIR="${QT6_SYSCONFDIR}" - -DINSTALL_TRANSLATIONSDIR="${QT6_TRANSLATIONDIR}" - - -DQT_UNITY_BUILD=ON # ~30% faster build, affects other dev-qt/* too - - -DQT_FEATURE_force_system_libs=ON - -DQT_FEATURE_relocatable=OFF #927691 - $(qt_feature ssl openssl) - $(qt_feature ssl openssl_linked) - $(qt_feature udev libudev) - $(qt_feature zstd) - - # qtcore - $(qt_feature icu) - $(qt_feature journald) - $(qt_feature syslog) - - # tools - -DQT_FEATURE_androiddeployqt=OFF - - # modules - $(qt_feature concurrent) - $(qt_feature dbus) - $(qt_feature gui) - $(qt_feature network) - $(qt_feature sql) - # trivial, and is often needed (sometimes even when not building tests) - -DQT_FEATURE_testlib=ON - $(qt_feature xml) - - # let gentoo's defaults and/or users control security *FLAGS - -DQT_FEATURE_glibc_fortify_source=OFF - -DQT_FEATURE_intelcet=OFF - -DQT_FEATURE_libcpp_hardening=OFF - -DQT_FEATURE_libstdcpp_assertions=OFF - -DQT_FEATURE_relro_now_linker=OFF - -DQT_FEATURE_stack_clash_protection=OFF - -DQT_FEATURE_stack_protector=OFF - -DQT_FEATURE_trivial_auto_var_init_pattern=OFF - - -DQT_INTERNAL_AVOID_OVERRIDING_SYNCQT_CONFIG=ON # would force -O3 - ) - - use gui && mycmakeargs+=( - $(qt_feature X xcb) - $(qt_feature X system_xcb_xinput) - $(qt_feature X xkbcommon_x11) - $(cmake_use_find_package X X11) # needed for truly no automagic - $(qt_feature accessibility accessibility_atspi_bridge) - $(qt_feature eglfs) - $(qt_feature evdev) - $(qt_feature evdev mtdev) - $(qt_feature libinput) - $(qt_feature renderdoc graphicsframecapture) - $(qt_feature tslib) - $(qt_feature vulkan) - $(qt_feature wayland) - $(qt_feature widgets) - -DINPUT_opengl=$(usex opengl $(usex gles2-only es2 desktop) no) - ) && use widgets && mycmakeargs+=( - # note: qtprintsupport is enabled w/ gui+widgets regardless of USE=cups - $(qt_feature cups) - $(qt_feature gtk gtk3) - ) - - use network && mycmakeargs+=( - $(qt_feature brotli) - $(qt_feature gssapi) - $(qt_feature libproxy) - $(qt_feature sctp) - $(usev test -DQT_SKIP_DOCKER_COMPOSE=ON) - -DQT_FEATURE_dtls=OFF # Required for LibreSSL - ) - - use sql && mycmakeargs+=( - -DQT_FEATURE_sql_db2=OFF # unpackaged - -DQT_FEATURE_sql_ibase=OFF # unpackaged - -DQT_FEATURE_sql_mimer=OFF # unpackaged - $(qt_feature mysql sql_mysql) - $(qt_feature oci8 sql_oci) - $(usev oci8 -DOracle_ROOT="${ESYSROOT}"/usr/$(get_libdir)/oracle/client) - $(qt_feature odbc sql_odbc) - $(qt_feature postgres sql_psql) - $(qt_feature sqlite sql_sqlite) - $(qt_feature sqlite system_sqlite) - ) - - tc-is-cross-compiler && mycmakeargs+=( - -DQT_HOST_PATH="${BROOT}"/usr - -DQT_FORCE_BUILD_TOOLS=ON - -DQT_NO_GENERATE_QMAKE_WRAPPER_FOR_TARGET=ON - ) - - qt6-build_src_configure -} - -src_test() { - local -x TZ=UTC - local -x LC_TIME=C - - local CMAKE_SKIP_TESTS=( - # broken with out-of-source + if qtbase is not already installed - tst_moc - tst_qmake - # similarly broken when relocatable=OFF (bug #927691) - tst_qapplication - tst_qt_cmake_create - tst_uic - # needs x11/opengl, we *could* run these but tend to be flaky - # when opengl rendering is involved (even if software-only) - tst_qopengl{,config,widget,window} - tst_qgraphicsview - tst_qx11info - # fails with network sandbox - tst_qdnslookup - # fails with sandbox - tst_qsharedmemory - # typical to lack SCTP support on non-generic kernels - tst_qsctpsocket - # randomly fails without -j1, and not worth it over this (bug #916181) - tst_qfiledialog{,2} - # may randomly hang+timeout, perhaps related to -j as well - tst_qprocess #936484 - tst_qtimer - # haystacksWithMoreThan4GiBWork can easily OOM (16GB ram not enough) - tst_qlatin1stringmatcher - # these can be flaky depending on the environment/toolchain - tst_qlogging # backtrace log test can easily vary - tst_q{,raw}font # affected by available fonts / settings (bug #914737) - tst_qprinter # checks system's printers (bug #916216) - tst_qhighdpi # may detect users' settings and fail (bug #935364) - tst_qstorageinfo # checks mounted filesystems - # flaky due to using different test framework and fails with USE=-gui - tst_selftests - # known failing when using clang+glibc+stdc++, needs looking into - tst_qthread - # partially failing on x86 chroots and seemingly(?) harmless (dev-qt - # revdeps tests pass), skip globally to avoid keywording flakiness - tst_json - tst_qcolorspace - tst_qdoublevalidator - tst_qglobal - tst_qglyphrun - tst_qvectornd - tst_rcc - # similarly, but on armv7 and potentially others (bug #914028) - tst_qlineedit - tst_qpainter - # likewise, known failing on BE arches (bug #914033,914371,918878) - tst_qimagereader - tst_qimagewriter - tst_qpluginloader - tst_quuid # >=6.6.2 had related fixes, needs retesting - # partially broken on llvm-musl, needs looking into but skip to have - # a baseline for regressions (rest of dev-qt still passes with musl) - $(usev elibc_musl ' - tst_qicoimageformat - tst_qimagereader - tst_qimage - ') - # fails due to hppa's NaN handling, needs looking into (bug #914371) - $(usev hppa ' - tst_qcborvalue - tst_qnumeric - ') - # note: for linux, upstream only really runs+maintains tests for amd64 - # https://doc.qt.io/qt-6/supported-platforms.html - ) - - qt6-build_src_test -} - -src_install() { - qt6-build_src_install - - if use test; then - local delete_bins=( # need a better way to handle this - apphelper clientserver copier crashingServer desktopsettingsaware_helper - echo fileWriterProcess modal_helper nospace 'one space' - paster qcommandlineparser_test_helper qfileopeneventexternal - socketprocess syslocaleapp tst_qhashseed_helper 'two space s' - write-read-write - ) - local delete=( # sigh - "${D}${QT6_BINDIR}"/test* - "${D}${QT6_LIBDIR}/objects-${CMAKE_BUILD_TYPE}"/*test* - "${delete_bins[@]/#/${D}${QT6_BINDIR}/}" - ) - # using -f given not tracking which tests may be skipped or not - rm -rf -- "${delete[@]}" || die - fi -}
