kdb rebuild

This commit is contained in:
Rmys
2025-01-26 13:40:14 +03:00
parent eb6be99f7b
commit 67856e67f7
4 changed files with 147 additions and 273 deletions
@@ -0,0 +1,36 @@
From 40cdaea4d7824cc1b0d26e6ad2dcb61fa2077911 Mon Sep 17 00:00:00 2001
From: Pino Toscano <pino@kde.org>
Date: Tue, 29 Oct 2019 07:52:32 +0100
Subject: [PATCH] PgSQL driver: fix build with PostgreSQL 12+
ABSTIMEOID and RELTIMEOID were removed, as their data types were dropped.
---
src/drivers/postgresql/PostgresqlTypes.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/drivers/postgresql/PostgresqlTypes.cpp b/src/drivers/postgresql/PostgresqlTypes.cpp
index ea576d69..0697129e 100644
--- a/src/drivers/postgresql/PostgresqlTypes.cpp
+++ b/src/drivers/postgresql/PostgresqlTypes.cpp
@@ -36,6 +36,7 @@
#endif
#include <libpq-fe.h>
#include <catalog/pg_type.h> // needed for BOOLOID, etc.
+#include <pg_config.h> // needed for PG_VERSION_NUM
#ifdef _MSC_VER
#pragma warning( pop )
@@ -70,8 +71,10 @@ void PostgresqlDriver::initPgsqlToKDbMap()
//! @todo POLYGONOID geometric polygon '(pt1,...)'
m_pgsqlToKDbTypes.insert(FLOAT4OID, KDbField::Double);
m_pgsqlToKDbTypes.insert(FLOAT8OID, KDbField::Double);
+#if PG_VERSION_NUM < 120000
m_pgsqlToKDbTypes.insert(ABSTIMEOID, KDbField::Date);
m_pgsqlToKDbTypes.insert(RELTIMEOID, KDbField::Date);
+#endif
//! @todo TINTERVALOID (abstime,abstime), time interval
//! @todo CIRCLEOID geometric circle '(center,radius)'
//! @todo CASHOID monetary amounts, $d,ddd.cc
--
GitLab
@@ -0,0 +1,33 @@
From 4fc65f4fea459f8ab1f99c5ceb575fc8f4ea651a Mon Sep 17 00:00:00 2001
From: Bhushan Shah <bhush94@gmail.com>
Date: Sun, 13 Dec 2020 19:16:30 +0530
Subject: [PATCH] include KDEInstallDirs as first thing
Otherwise ECMGeneratePriFile won't get correct paths and will install
pri file in wrong place and things wanting to use kdb with qmake won't
work.
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3219e967..e3f98b43 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,12 +13,12 @@ kdb_add_tests(OFF)
kdb_add_examples(OFF)
# ECM
+include(KDEInstallDirs)
include(ECMGeneratePriFile)
include(ECMInstallIcons)
include(ECMOptionalAddSubdirectory)
include(ECMPoQmTools)
include(ECMSetupVersion)
-include(KDEInstallDirs)
include(KDECMakeSettings NO_POLICY_SCOPE)
include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
include(ECMSetupQtPluginMacroNames)
--
GitLab
@@ -0,0 +1,67 @@
From b36d74f13a1421437a725fb74502c993c359392a Mon Sep 17 00:00:00 2001
From: Nicolas Fella <nicolas.fella@gmx.de>
Date: Mon, 16 Nov 2020 16:41:27 +0100
Subject: [PATCH] Fix build with newer Qt
---
src/KDb.cpp | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/src/KDb.cpp b/src/KDb.cpp
index 5c3b601f..ee92c2ee 100644
--- a/src/KDb.cpp
+++ b/src/KDb.cpp
@@ -1635,33 +1635,33 @@ QString KDb::escapeBLOB(const QByteArray& array, BLOBEscapingType type)
for (int i = 0; i < size; i++) {
const unsigned char val = array[i];
if (val < 32 || val >= 127 || val == 39 || val == 92) {
- str[new_length++] = '\\';
- str[new_length++] = '\\';
- str[new_length++] = '0' + val / 64;
- str[new_length++] = '0' + (val % 64) / 8;
- str[new_length++] = '0' + val % 8;
+ str[new_length++] = QLatin1Char('\\');
+ str[new_length++] = QLatin1Char('\\');
+ str[new_length++] = QChar::fromLatin1('0' + val / 64);
+ str[new_length++] = QChar::fromLatin1('0' + (val % 64) / 8);
+ str[new_length++] = QChar::fromLatin1('0' + val % 8);
} else {
- str[new_length++] = val;
+ str[new_length++] = QChar::fromLatin1(val);
}
}
} else {
for (int i = 0; i < size; i++) {
const unsigned char val = array[i];
- str[new_length++] = intToHexDigit(val / 16);
- str[new_length++] = intToHexDigit(val % 16);
+ str[new_length++] = QChar::fromLatin1(intToHexDigit(val / 16));
+ str[new_length++] = QChar::fromLatin1(intToHexDigit(val % 16));
}
}
if (type == BLOBEscapingType::XHex || type == BLOBEscapingType::Octal) {
- str[new_length++] = '\'';
+ str[new_length++] = QLatin1Char('\'');
} else if (type == BLOBEscapingType::ByteaHex) {
- str[new_length++] = '\'';
- str[new_length++] = ':';
- str[new_length++] = ':';
- str[new_length++] = 'b';
- str[new_length++] = 'y';
- str[new_length++] = 't';
- str[new_length++] = 'e';
- str[new_length++] = 'a';
+ str[new_length++] = QLatin1Char('\'');
+ str[new_length++] = QLatin1Char(':');
+ str[new_length++] = QLatin1Char(':');
+ str[new_length++] = QLatin1Char('b');
+ str[new_length++] = QLatin1Char('y');
+ str[new_length++] = QLatin1Char('t');
+ str[new_length++] = QLatin1Char('e');
+ str[new_length++] = QLatin1Char('a');
}
return str;
}
--
GitLab