index : packages | |
Archlinux32 package modifications | gitolite user |
summaryrefslogtreecommitdiff |
author | Erich Eckner <git@eckner.net> | 2023-05-22 20:18:50 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2023-05-22 20:18:50 +0200 |
commit | e74cde76c104df82b120a7b13964cb786da8f565 (patch) | |
tree | 39967e24037929c04aaf79922aa260b437a60a5e /extra/mysql-workbench | |
parent | 73e1d3b448cc583ab38cae4d61a26f313fad946b (diff) |
-rw-r--r-- | extra/mysql-workbench/PKGBUILD | 16 | ||||
-rw-r--r-- | extra/mysql-workbench/mysql-workbench-community-6.3.10-32bit.patch | 123 |
diff --git a/extra/mysql-workbench/PKGBUILD b/extra/mysql-workbench/PKGBUILD new file mode 100644 index 00000000..8d8cf3b3 --- /dev/null +++ b/extra/mysql-workbench/PKGBUILD @@ -0,0 +1,16 @@ +# see https://github.com/mysql/mysql-workbench/pull/14/files + +source+=('mysql-workbench-community-6.3.10-32bit.patch') +sha256sums+=('285dd5899c625a5d9091f8f178a6a58c86508dacd033435ba2dab4938cb238f9') + +eval "$( + declare -f prepare | \ + sed ' + /0005-gdal-use-CPLFree.patch/ { + a \ + \ + # 32-bit compilation bug in jsonview \ + patch -Np1 < "${srcdir}"/mysql-workbench-community-6.3.10-32bit.patch + } + ' +)" diff --git a/extra/mysql-workbench/mysql-workbench-community-6.3.10-32bit.patch b/extra/mysql-workbench/mysql-workbench-community-6.3.10-32bit.patch new file mode 100644 index 00000000..5aadcff8 --- /dev/null +++ b/extra/mysql-workbench/mysql-workbench-community-6.3.10-32bit.patch @@ -0,0 +1,123 @@ +diff -rauN mysql-workbench-community-6.3.10-src/library/base/jsonparser.cpp mysql-workbench-community-6.3.10-src-32bit-patch/library/base/jsonparser.cpp +--- mysql-workbench-community-6.3.10-src/library/base/jsonparser.cpp 2017-11-09 17:11:42.000000000 +0100 ++++ mysql-workbench-community-6.3.10-src-32bit-patch/library/base/jsonparser.cpp 2017-11-20 19:27:01.973630756 +0100 +@@ -912,6 +912,8 @@ + return _uinteger64; + } + ++#ifdef DEFINE_UINT64_T_FUNCTIONS ++ + //-------------------------------------------------------------------------------------------------- + + int64_t JsonValue::operator=(int64_t other) { +@@ -929,6 +931,7 @@ + _uinteger64 = other; + return other; + } ++#endif // DEFINE_UINT64_T_FUNCTIONS + + #endif + +@@ -1668,12 +1671,14 @@ + case VDouble: + _output += std::to_string((double)value); + break; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + case VInt64: + _output += std::to_string((int64_t)value); + break; + case VUint64: + _output += std::to_string((uint64_t)value); + break; ++#endif + case VObject: + write((JsonObject)value); + break; +diff -rauN mysql-workbench-community-6.3.10-src/library/forms/jsonview.cpp mysql-workbench-community-6.3.10-src-32bit-patch/library/forms/jsonview.cpp +--- mysql-workbench-community-6.3.10-src/library/forms/jsonview.cpp 2017-11-09 17:11:42.000000000 +0100 ++++ mysql-workbench-community-6.3.10-src-32bit-patch/library/forms/jsonview.cpp 2017-11-20 19:26:16.963100986 +0100 +@@ -651,8 +651,10 @@ + if (data != nullptr) { + std::stringstream buffer; + double number = 0; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + int64_t number2 = 0; + uint64_t number3 = 0; ++#endif + bool retBool = false; + auto &storedValue = data->getData(); + switch (storedValue.getType()) { +@@ -664,6 +666,7 @@ + storedValue = number; + setData = true; + break; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + case VInt64: + if (!base::is_number(value)) + break; +@@ -680,6 +683,7 @@ + storedValue = number3; + setData = true; + break; ++#endif + case VBoolean: + if (!base::isBool(value)) + break; +@@ -1073,6 +1077,7 @@ + node->set_string(1, std::to_string((double)value)); + node->set_string(2, "Double"); + break; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + case VInt64: + node->set_string(1, std::to_string((int64_t)value)); + node->set_string(2, "Long Integer"); +@@ -1081,6 +1086,7 @@ + node->set_string(1, std::to_string((uint64_t)value)); + node->set_string(2, "Unsigned Long Integer"); + break; ++#endif + default: + break; + } +@@ -1322,8 +1328,10 @@ + if (data != NULL) { + std::stringstream buffer; + double number = 0; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + int64_t number2 = 0; + uint64_t number3 = 0; ++#endif + bool retBool = false; + switch (storedValue.getType()) { + case VDouble: +@@ -1335,6 +1343,7 @@ + node->set_float(column, number); + _dataChanged(false); + break; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + case VInt64: + if (!base::is_number(value)) + break; +@@ -1353,6 +1362,7 @@ + node->set_float(column, (double)number3); + _dataChanged(false); + break; ++#endif + case VBoolean: + if (!base::isBool(value)) + break; +@@ -1612,12 +1622,14 @@ + case VDouble: + node->set_float(columnId, (double)value); + break; ++#ifdef DEFINE_UINT64_T_FUNCTIONS + case VInt64: + node->set_long(columnId, (int64_t)value); + break; + case VUint64: + node->set_long(columnId, (uint64_t)value); + break; ++#endif + default: + break; + } |