From 5f34284e7c01f03ee6735e7fcd3ec5783ab11777 Mon Sep 17 00:00:00 2001 From: "Tobias C. Berner" Date: Mon, 6 Jul 2020 06:43:37 +0000 Subject: Update Qt5 to 5.15 This is a major upgrade of the Qt libraries [1], [2]. * People that use upgrading mechanisms with incomplete dependency handling (portmaster & Co) should make sure to manually remove the existing Qt packages to guarantee a safe upgrade. Keep in mind, that Qt does not like if you have an incomplete upgrade. * This version of Qt drops support for OpenSSL 1.0 -- this means that there won't be any binary packages for Qt5 provided by the FreeBSD package builders for FreeBSD 11.x anymore -- and the same for *all* the ports depending on net/qt5-network [3]. If you cannot upgrade to a more recent FreeBSD version (12.x, 13.x), you will need to build Qt5 from ports while switching to an SSL implementation from ports. Big thanks are due for * kai@ for updating webengine (also mikael@) * Felix Palmen for providing LibreSSL support patches * adridg@ and lbartoletti@ for helping me fix the fallout [1] https://www.qt.io/blog/qt-5.15-released [2] https://wiki.qt.io/New_Features_in_Qt_5.15 [3] https://www.freshports.org/net/qt5-network PR: 247010 Exp-run by: antoine --- ...ch-src_plugins_sqldrivers_mysql_qsql__mysql.cpp | 48 +++++++--------------- 1 file changed, 15 insertions(+), 33 deletions(-) (limited to 'databases/qt5-sqldrivers-mysql/files') diff --git a/databases/qt5-sqldrivers-mysql/files/patch-src_plugins_sqldrivers_mysql_qsql__mysql.cpp b/databases/qt5-sqldrivers-mysql/files/patch-src_plugins_sqldrivers_mysql_qsql__mysql.cpp index 4add3e998f28..00e133f9195f 100644 --- a/databases/qt5-sqldrivers-mysql/files/patch-src_plugins_sqldrivers_mysql_qsql__mysql.cpp +++ b/databases/qt5-sqldrivers-mysql/files/patch-src_plugins_sqldrivers_mysql_qsql__mysql.cpp @@ -17,12 +17,12 @@ This does not apply to the Qt4 port, which allows older compilers and the less-fragile approach would therefore break on old-gcc-in-base architectures. ---- src/plugins/sqldrivers/mysql/qsql_mysql.cpp.orig 2018-04-29 07:25:09 UTC +--- src/plugins/sqldrivers/mysql/qsql_mysql.cpp.orig 2020-03-11 15:29:12 UTC +++ src/plugins/sqldrivers/mysql/qsql_mysql.cpp -@@ -74,6 +74,14 @@ Q_DECLARE_METATYPE(MYSQL_STMT*) - # define Q_CLIENT_MULTI_STATEMENTS 0 - #endif - +@@ -71,6 +71,14 @@ Q_DECLARE_METATYPE(MYSQL_STMT*) + // by redefining it we can regain source compatibility. + using my_bool = decltype(mysql_stmt_bind_result(nullptr, nullptr)); + +// MYSQL 8.0.1 no longer uses the my_bool type: +// https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-1.html +#if (MYSQL_VERSION_ID >= 80001) && !defined(MARIADB_BASE_VERSION) @@ -32,50 +32,32 @@ architectures. +#endif + QT_BEGIN_NAMESPACE - + class QMYSQLDriverPrivate : public QSqlDriverPrivate -@@ -232,7 +240,7 @@ class QMYSQLResultPrivate: public QSqlResultPrivate (p - myField(0), type(QVariant::Invalid) - {} - char *outField; -- my_bool nullIndicator; -+ mysql_bool nullIndicator; - ulong bufLength; - MYSQL_FIELD *myField; - QVariant::Type type; -@@ -983,7 +991,7 @@ bool QMYSQLResult::exec() +@@ -930,7 +938,7 @@ bool QMYSQLResult::exec() MYSQL_BIND* currBind; QVector timeVector; QVector stringVector; - QVector nullVector; + QVector nullVector; - + const QVector values = boundValues(); - -@@ -1004,7 +1012,7 @@ bool QMYSQLResult::exec() - + +@@ -951,7 +959,7 @@ bool QMYSQLResult::exec() + currBind = &d->outBinds[i]; - + - nullVector[i] = static_cast(val.isNull()); + nullVector[i] = static_cast(val.isNull()); currBind->is_null = &nullVector[i]; currBind->length = 0; currBind->is_unsigned = 0; -@@ -1101,7 +1109,7 @@ bool QMYSQLResult::exec() +@@ -1048,7 +1056,7 @@ bool QMYSQLResult::exec() d->rowsAffected = mysql_stmt_affected_rows(d->stmt); - + if (isSelect()) { - my_bool update_max_length = true; + mysql_bool update_max_length = true; - + r = mysql_stmt_bind_result(d->stmt, d->inBinds); if (r != 0) { -@@ -1312,7 +1320,7 @@ bool QMYSQLDriver::open(const QString& db, - QString sslCAPath; - QString sslCipher; - #if MYSQL_VERSION_ID >= 50000 -- my_bool reconnect=false; -+ mysql_bool reconnect=false; - uint connectTimeout = 0; - uint readTimeout = 0; - uint writeTimeout = 0; -- cgit v1.2.3