summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Hesse2018-02-15 17:17:27 +0100
committerChristian Hesse2018-02-15 17:17:27 +0100
commit0ba7488abd6bb0e856061f6c40cc86cc4b9e58be (patch)
tree93eea4a92f288af50726a9f539b8d2f5db5b76fc
parent65f356459a8d69132fa87e57837d3687d1b9fbbf (diff)
downloadaur-0ba7488abd6bb0e856061f6c40cc86cc4b9e58be.tar.gz
commit mysql-workbench-git 6.3.10.r0.g6a5e94ef-1
-rw-r--r--.SRCINFO18
-rw-r--r--0004-fix-build-for-i686.patch140
-rw-r--r--0005-gdal-use-CPLFree.patch62
-rw-r--r--0006-mysql-include-my_dir.patch12
-rw-r--r--0007-gdal-json-c-0-13.patch111
-rw-r--r--PKGBUILD44
6 files changed, 228 insertions, 159 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 2b17e65f152..ed41ec4b3df 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,11 +1,8 @@
-# Generated by mksrcinfo v8
-# Thu Feb 9 09:28:00 UTC 2017
pkgbase = mysql-workbench-git
pkgdesc = A cross-platform, visual database design tool developed by MySQL - git checkout
pkgver = 6.3.9.r0.g1972008
pkgrel = 1
url = https://www.mysql.com/products/workbench/
- arch = i686
arch = x86_64
license = GPL2
makedepends = git
@@ -35,6 +32,8 @@ pkgbase = mysql-workbench-git
depends = tinyxml
depends = unixodbc
depends = vsqlite++
+ depends = proj
+ depends = json-c
optdepends = gnome-keyring: store SSH/MySQL passwords in GNOME password manager
optdepends = python2-pyodbc: database migration
provides = mysql-workbench
@@ -42,24 +41,29 @@ pkgbase = mysql-workbench-git
source = git://github.com/mysql/mysql-workbench.git
source = git://github.com/mysql/mysql-server.git
source = git://github.com/mysql/mysql-connector-cpp.git
- source = http://download.osgeo.org/gdal/2.1.3/gdal-2.1.3.tar.xz
+ source = http://download.osgeo.org/gdal/2.2.3/gdal-2.2.3.tar.xz
source = https://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.bz2
source = http://www.antlr3.org/download/antlr-3.4-complete.jar
source = 0001-mysql-workbench-no-check-for-updates.patch
source = 0002-disable-unsupported-operating-system-warning.patch
source = 0003-add-option-to-hide-nonstandard-server-warning.patch
- source = 0004-fix-build-for-i686.patch
+ source = 0005-gdal-use-CPLFree.patch
+ source = 0006-mysql-include-my_dir.patch
+ source = 0007-gdal-json-c-0-13.patch
source = arch_linux_profile.xml
+ validpgpkeys = A4A9406876FCBD3C456770C88C718D3B5072E1F5
sha256sums = SKIP
sha256sums = SKIP
sha256sums = SKIP
- sha256sums = b489793627e6cb8d2ff8d7737b61daf58382fe189fae4c581ddfd48c04b49005
+ sha256sums = a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b
sha256sums = 727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca
sha256sums = 9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7
sha256sums = b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf
sha256sums = 0d65832bc5a73d4cfecef4b552bb78a30ce6020a5fabe5558dcf2ade8341b593
sha256sums = 3c9097af599f08388c471d6fd02f40ea72e5759eaa89f731e662852a5e67feea
- sha256sums = 68295716c55e5f7b07b3ec1162b512b33a0563952a0eb4ef6fd71d852c61de11
+ sha256sums = 0965b4f12a0ae26bea131f05c7383d4a9b068d556b092ad23e19e1d8f6895531
+ sha256sums = d97a1fec15e0dc4491e79ce380f6f994f1c4b387d960c13e178a18b0299c0436
+ sha256sums = 7000da5a03b7a44b26d86653104558798879ce9a2f6e7e1b929f8f9fcabdf33f
sha256sums = 2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af
pkgname = mysql-workbench-git
diff --git a/0004-fix-build-for-i686.patch b/0004-fix-build-for-i686.patch
deleted file mode 100644
index cf4364f4e55..00000000000
--- a/0004-fix-build-for-i686.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-From af2bff95077b376a21ba815505589f4ad6b62140 Mon Sep 17 00:00:00 2001
-From: Christian Hesse <mail@eworm.de>
-Date: Tue, 7 Feb 2017 23:10:23 +0100
-Subject: [PATCH 1/1] fix build for i686
-
-Signed-off-by: Christian Hesse <mail@eworm.de>
----
- library/base/jsonparser.cpp | 6 ++++--
- library/forms/jsonview.cpp | 12 ++++++++++++
- 2 files changed, 16 insertions(+), 2 deletions(-)
-
-diff --git a/library/base/jsonparser.cpp b/library/base/jsonparser.cpp
-index 6ed4b3f..fb4e055 100644
---- a/library/base/jsonparser.cpp
-+++ b/library/base/jsonparser.cpp
-@@ -343,7 +343,7 @@ namespace JsonParser {
- */
- JsonValue &JsonArray::at(SizeType pos) {
- if (pos > _data.size())
-- throw std::out_of_range(base::strfmt("Index '%lu' is out of range.", pos));
-+ throw std::out_of_range(base::strfmt("Index '%zu' is out of range.", pos));
- return _data.at(pos);
- }
-
-@@ -358,7 +358,7 @@ namespace JsonParser {
- */
- const JsonValue &JsonArray::at(SizeType pos) const {
- if (pos > _data.size())
-- throw std::out_of_range(base::strfmt("Index '%lu' is out of range.", pos));
-+ throw std::out_of_range(base::strfmt("Index '%zu' is out of range.", pos));
- return _data.at(pos);
- }
-
-@@ -1668,12 +1668,14 @@ namespace JsonParser {
- 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 --git a/library/forms/jsonview.cpp b/library/forms/jsonview.cpp
-index 1259427..2d50491 100644
---- a/library/forms/jsonview.cpp
-+++ b/library/forms/jsonview.cpp
-@@ -651,8 +651,10 @@ void JsonTreeBaseView::setCellValue(mforms::TreeNodeRef node, int column, const
- 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 @@ void JsonTreeBaseView::setCellValue(mforms::TreeNodeRef node, int column, const
- storedValue = number;
- setData = true;
- break;
-+#ifdef DEFINE_UINT64_T_FUNCTIONS
- case VInt64:
- if (!base::is_number(value))
- break;
-@@ -680,6 +683,7 @@ void JsonTreeBaseView::setCellValue(mforms::TreeNodeRef node, int column, const
- storedValue = number3;
- setData = true;
- break;
-+#endif
- case VBoolean:
- if (!base::isBool(value))
- break;
-@@ -1073,6 +1077,7 @@ void JsonTreeView::generateNumberInTree(JsonParser::JsonValue &value, int /*colu
- 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 @@ void JsonTreeView::generateNumberInTree(JsonParser::JsonValue &value, int /*colu
- 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 @@ void JsonGridView::setCellValue(mforms::TreeNodeRef node, int column, const std:
- 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:
-@@ -1334,6 +1342,7 @@ void JsonGridView::setCellValue(mforms::TreeNodeRef node, int column, const std:
- storedValue = number;
- node->set_float(column, number);
- _dataChanged(false);
-+#ifdef DEFINE_UINT64_T_FUNCTIONS
- case VInt64:
- if (!base::is_number(value))
- break;
-@@ -1352,6 +1361,7 @@ void JsonGridView::setCellValue(mforms::TreeNodeRef node, int column, const std:
- node->set_float(column, (double)number3);
- _dataChanged(false);
- break;
-+#endif
- case VBoolean:
- if (!base::isBool(value))
- break;
-@@ -1611,12 +1621,14 @@ void JsonGridView::generateNumberInTree(JsonParser::JsonValue &value, int column
- 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;
- }
---
-2.11.1
-
diff --git a/0005-gdal-use-CPLFree.patch b/0005-gdal-use-CPLFree.patch
new file mode 100644
index 00000000000..4893149c1e1
--- /dev/null
+++ b/0005-gdal-use-CPLFree.patch
@@ -0,0 +1,62 @@
+From 97d26e5edfccead3fe3a10b732de51caa427eb60 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Tue, 16 May 2017 09:31:39 +0200
+Subject: [PATCH 1/1] gdal: use CPLFree()
+
+OGRFree() is deprecated as of gdal 2.2.0, so use CPLFree() instead.
+
+Signed-off-by: Christian Hesse <mail@eworm.de>
+---
+ backend/wbpublic/grt/spatial_handler.cpp | 4 ++--
+ backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp | 6 +++---
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/backend/wbpublic/grt/spatial_handler.cpp b/backend/wbpublic/grt/spatial_handler.cpp
+index 9b357603..ee36fa03 100644
+--- a/backend/wbpublic/grt/spatial_handler.cpp
++++ b/backend/wbpublic/grt/spatial_handler.cpp
+@@ -443,7 +443,7 @@ spatial::Importer::Importer() : _geometry(NULL), _interrupt(false), _srid(0) {
+
+ spatial::Importer::~Importer() {
+ if (_geometry != NULL)
+- OGRFree(_geometry);
++ CPLFree(_geometry);
+ }
+
+ OGRGeometry *spatial::Importer::steal_data() {
+@@ -495,7 +495,7 @@ std::string spatial::Importer::as_wkt() {
+ logError("Error exporting data to WKT (%i)\n", err);
+ } else {
+ std::string tmp(data);
+- OGRFree(data);
++ CPLFree(data);
+ return tmp;
+ }
+ }
+diff --git a/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp b/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
+index d2eb8495..7a7948bf 100644
+--- a/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
++++ b/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
+@@ -47,7 +47,7 @@ static grt::StringRef getGeoRepresentation(grt::StringRef data, bool outputAsJso
+ OGRGeometryFactory::createFromWkb((unsigned char *)const_cast<char *>(&(*((*data).begin() + 4))), NULL, &geometry);
+ if (ret_val != OGRERR_NONE) {
+ if (geometry)
+- OGRFree(geometry);
++ CPLFree(geometry);
+ throw std::exception();
+ }
+
+@@ -61,8 +61,8 @@ static grt::StringRef getGeoRepresentation(grt::StringRef data, bool outputAsJso
+
+ if (err == OGRERR_NONE && data != NULL) {
+ grt::StringRef tmp(data);
+- OGRFree(data);
+- OGRFree(geometry);
++ CPLFree(data);
++ CPLFree(geometry);
+ return tmp;
+ } else
+ throw std::runtime_error("Conversion of OGR geometry data failed");
+--
+2.13.0
+
diff --git a/0006-mysql-include-my_dir.patch b/0006-mysql-include-my_dir.patch
new file mode 100644
index 00000000000..3e220f86b46
--- /dev/null
+++ b/0006-mysql-include-my_dir.patch
@@ -0,0 +1,12 @@
+diff --git a/mysys/my_symlink.c b/mysys/my_symlink.c
+index ab0d76e91d0..b96d78e8c17 100644
+--- a/mysys/my_symlink.c
++++ b/mysys/my_symlink.c
+@@ -23,6 +23,7 @@
+ #include <sys/param.h>
+ #include <sys/stat.h>
+ #endif
++#include <my_dir.h>
+
+ /*
+ Reads the content of a symbolic link
diff --git a/0007-gdal-json-c-0-13.patch b/0007-gdal-json-c-0-13.patch
new file mode 100644
index 00000000000..6101b8c0fe5
--- /dev/null
+++ b/0007-gdal-json-c-0-13.patch
@@ -0,0 +1,111 @@
+From 05a1fd773c8f418ee9765465fc4863c1d6472a4c Mon Sep 17 00:00:00 2001
+From: Even Rouault <even.rouault@mines-paris.org>
+Date: Fri, 5 Jan 2018 18:08:49 +0000
+Subject: [PATCH] =?UTF-8?q?Add=20support=20for=20json-c=20v0.13=20(patch?=
+ =?UTF-8?q?=20by=20Bj=C3=B6rn=20Esser,=20fixes=20=E2=80=8Bhttps://github.c?=
+ =?UTF-8?q?om/OSGeo/gdal/pull/277,=20backport=20of=20r41043,=20fixes=20#71?=
+ =?UTF-8?q?95)?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+git-svn-id: https://svn.osgeo.org/gdal/branches/2.2@41200 f0d54148-0727-0410-94bb-9a71ac55c965
+---
+ gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp | 30 +++++++++++++++++------
+ 1 file changed, 22 insertions(+), 8 deletions(-)
+
+diff --git a/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp b/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
+index fdf4b77b459..f8937885c76 100644
+--- a/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
++++ b/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
+@@ -27,12 +27,18 @@
+ * DEALINGS IN THE SOFTWARE.
+ ****************************************************************************/
+
++#define JSON_C_VER_013 (13 << 8)
++
+ #include "ogrgeojsonwriter.h"
+ #include "ogrgeojsonutils.h"
+ #include "ogr_geojson.h"
+ #include "ogrgeojsonreader.h"
+ #include <json.h> // JSON-C
++
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+ #include <json_object_private.h>
++#endif
++
+ #include <printbuf.h>
+ #include <ogr_api.h>
+ #include <ogr_p.h>
+@@ -1381,13 +1387,17 @@ static int OGR_json_double_with_precision_to_string( struct json_object *jso,
+ {
+ // TODO(schwehr): Explain this casting.
+ const int nPrecision =
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+ static_cast<int>(reinterpret_cast<GUIntptr_t>(jso->_userdata));
++#else
++ static_cast<int>(reinterpret_cast<GUIntptr_t>(json_object_get_userdata(jso)));
++#endif
+ char szBuffer[75] = {};
+- OGRFormatDouble( szBuffer, sizeof(szBuffer), jso->o.c_double, '.',
++ OGRFormatDouble( szBuffer, sizeof(szBuffer), json_object_get_double(jso), '.',
+ (nPrecision < 0) ? 15 : nPrecision );
+ if( szBuffer[0] == 't' /*oobig */ )
+ {
+- CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", jso->o.c_double);
++ CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", json_object_get_double(jso));
+ }
+ return printbuf_memappend(pb, szBuffer, static_cast<int>(strlen(szBuffer)));
+ }
+@@ -1417,11 +1427,11 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso,
+ {
+ char szBuffer[75] = {};
+ int nSize = 0;
+- if( CPLIsNan(jso->o.c_double))
++ if( CPLIsNan(json_object_get_double(jso)))
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "NaN");
+- else if( CPLIsInf(jso->o.c_double) )
++ else if( CPLIsInf(json_object_get_double(jso)) )
+ {
+- if( jso->o.c_double > 0 )
++ if( json_object_get_double(jso) > 0 )
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "Infinity");
+ else
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "-Infinity");
+@@ -1429,13 +1439,17 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso,
+ else
+ {
+ char szFormatting[32] = {};
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+ const int nSignificantFigures = (int) (GUIntptr_t) jso->_userdata;
++#else
++ const int nSignificantFigures = (int) (GUIntptr_t) json_object_get_userdata(jso);
++#endif
+ const int nInitialSignificantFigures =
+ nSignificantFigures >= 0 ? nSignificantFigures : 17;
+ CPLsnprintf(szFormatting, sizeof(szFormatting),
+ "%%.%dg", nInitialSignificantFigures);
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+- szFormatting, jso->o.c_double);
++ szFormatting, json_object_get_double(jso));
+ const char* pszDot = NULL;
+ if( nSize+2 < static_cast<int>(sizeof(szBuffer)) &&
+ (pszDot = strchr(szBuffer, '.')) == NULL )
+@@ -1457,7 +1471,7 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso,
+ CPLsnprintf(szFormatting, sizeof(szFormatting),
+ "%%.%dg", nInitialSignificantFigures- i);
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+- szFormatting, jso->o.c_double);
++ szFormatting, json_object_get_double(jso));
+ pszDot = strchr(szBuffer, '.');
+ if( pszDot != NULL &&
+ strstr(pszDot, "999999") == NULL &&
+@@ -1472,7 +1486,7 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso,
+ CPLsnprintf(szFormatting, sizeof(szFormatting),
+ "%%.%dg", nInitialSignificantFigures);
+ nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+- szFormatting, jso->o.c_double);
++ szFormatting, json_object_get_double(jso));
+ if( nSize+2 < static_cast<int>(sizeof(szBuffer)) &&
+ strchr(szBuffer, '.') == NULL )
+ {
diff --git a/PKGBUILD b/PKGBUILD
index 26971b3beef..086864c863f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,16 +8,16 @@ pkgname=mysql-workbench-git
pkgver=6.3.9.r0.g1972008
pkgrel=1
# mysql & mysql-connector-c++ from git
-_gdal_version=2.1.3
+_gdal_version=2.2.3
_boost_version=1.59.0
pkgdesc='A cross-platform, visual database design tool developed by MySQL - git checkout'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='https://www.mysql.com/products/workbench/'
license=('GPL2')
depends=('cairo' 'ctemplate' 'desktop-file-utils' 'freetype2' 'gtkmm3'
'hicolor-icon-theme' 'libgl' 'libgnome-keyring' 'libiodbc' 'libxml2'
'libzip' 'mysql-python' 'pcre' 'python2' 'python2-cairo' 'python2-paramiko'
- 'python2-pexpect' 'tinyxml' 'unixodbc' 'vsqlite++')
+ 'python2-pexpect' 'tinyxml' 'unixodbc' 'vsqlite++' 'proj' 'json-c')
optdepends=('gnome-keyring: store SSH/MySQL passwords in GNOME password manager'
'python2-pyodbc: database migration')
provides=('mysql-workbench')
@@ -33,18 +33,22 @@ source=('git://github.com/mysql/mysql-workbench.git'
'0001-mysql-workbench-no-check-for-updates.patch'
'0002-disable-unsupported-operating-system-warning.patch'
'0003-add-option-to-hide-nonstandard-server-warning.patch'
- '0004-fix-build-for-i686.patch'
+ '0005-gdal-use-CPLFree.patch'
+ '0006-mysql-include-my_dir.patch'
+ '0007-gdal-json-c-0-13.patch'
'arch_linux_profile.xml')
sha256sums=('SKIP'
'SKIP'
'SKIP'
- 'b489793627e6cb8d2ff8d7737b61daf58382fe189fae4c581ddfd48c04b49005'
+ 'a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b'
'727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca'
'9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7'
'b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf'
'0d65832bc5a73d4cfecef4b552bb78a30ce6020a5fabe5558dcf2ade8341b593'
'3c9097af599f08388c471d6fd02f40ea72e5759eaa89f731e662852a5e67feea'
- '68295716c55e5f7b07b3ec1162b512b33a0563952a0eb4ef6fd71d852c61de11'
+ '0965b4f12a0ae26bea131f05c7383d4a9b068d556b092ad23e19e1d8f6895531'
+ 'd97a1fec15e0dc4491e79ce380f6f994f1c4b387d960c13e178a18b0299c0436'
+ '7000da5a03b7a44b26d86653104558798879ce9a2f6e7e1b929f8f9fcabdf33f'
'2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af')
pkgver() {
@@ -63,6 +67,16 @@ pkgver() {
}
prepare() {
+ cd "${srcdir}/mysql-server/"
+
+ # fix build without server
+ patch -Np1 < "${srcdir}"/0006-mysql-include-my_dir.patch
+
+ cd "${srcdir}/gdal-${_gdal_version}"
+
+ # Add support for json-c v0.13
+ patch -Np2 < "${srcdir}"/0007-gdal-json-c-0-13.patch
+
cd "${srcdir}/mysql-workbench/"
# Disable 'Help' -> 'Check for Updates'
@@ -75,8 +89,14 @@ prepare() {
# add option to hide nonstandard server warning
patch -Np1 < "${srcdir}"/0003-add-option-to-hide-nonstandard-server-warning.patch
- # fix build for i686
- patch -Np1 < "${srcdir}"/0004-fix-build-for-i686.patch
+ # gdal: use CPLFree()
+ patch -Np1 < "${srcdir}"/0005-gdal-use-CPLFree.patch
+
+ # GCC 7.x introduced some new warnings, remove '-Werror' for the build to complete
+ sed -i '/^set/s|-Werror -Wall|-Wall|' CMakeLists.txt
+
+ # GCC 7.x complains about unsupported flag
+ sed -i 's|-Wno-deprecated-register||' ext/scintilla/gtk/CMakeLists.txt
# we need python 2.x
sed -i '/^FIND_PROGRAM(PYTHON_EXEC /c FIND_PROGRAM(PYTHON_EXEC "python2")' \
@@ -84,16 +104,16 @@ prepare() {
# put antlr into place
install -D ${srcdir}/antlr-3.4-complete.jar ${srcdir}/linux-res/bin/antlr-3.4-complete.jar
+
+ # make sure to link against bundled libraries
+ sed -i "/target_link_libraries/s|\\$|-L${srcdir}/install-bundle/usr/lib/ \\$|" backend/wbpublic/CMakeLists.txt
}
build() {
- # this uses deprecated auto_ptr...
- # we known that, so do not flood the logs
- CXXFLAGS="${CXXFLAGS} -Wno-deprecated-declarations"
-
# Build mysql
cd "${srcdir}/mysql-server/"
cmake . \
+ -DWITHOUT_SERVER=ON \
-DBUILD_CONFIG=mysql_release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \