summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO35
-rw-r--r--0001-mysql-workbench-no-check-for-updates.patch45
-rw-r--r--0002-disable-unsupported-operating-system-warning.patch17
-rw-r--r--0003-add-option-to-hide-nonstandard-server-warning.patch36
-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--PKGBUILD140
8 files changed, 113 insertions, 345 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ed41ec4b3df..9532eb1fda2 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = mysql-workbench-git
pkgdesc = A cross-platform, visual database design tool developed by MySQL - git checkout
- pkgver = 6.3.9.r0.g1972008
+ pkgver = 8.0.12.r0.g7d05cc5df
pkgrel = 1
url = https://www.mysql.com/products/workbench/
arch = x86_64
@@ -12,6 +12,7 @@ pkgbase = mysql-workbench-git
makedepends = swig
makedepends = java-runtime
makedepends = imagemagick
+ makedepends = antlr4
depends = cairo
depends = ctemplate
depends = desktop-file-utils
@@ -19,7 +20,7 @@ pkgbase = mysql-workbench-git
depends = gtkmm3
depends = hicolor-icon-theme
depends = libgl
- depends = libgnome-keyring
+ depends = libsecret
depends = libiodbc
depends = libxml2
depends = libzip
@@ -27,43 +28,35 @@ pkgbase = mysql-workbench-git
depends = pcre
depends = python2
depends = python2-cairo
- depends = python2-paramiko
+ depends = libssh
depends = python2-pexpect
depends = tinyxml
depends = unixodbc
depends = vsqlite++
depends = proj
depends = json-c
- optdepends = gnome-keyring: store SSH/MySQL passwords in GNOME password manager
+ depends = antlr4-runtime
optdepends = python2-pyodbc: database migration
provides = mysql-workbench
conflicts = mysql-workbench
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.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 = https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-8.0.12-src.tar.gz
+ source = https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-8.0.12-src.tar.gz.asc
+ source = http://download.osgeo.org/gdal/2.3.1/gdal-2.3.1.tar.xz
+ source = https://downloads.sourceforge.net/project/boost/boost/1.67.0/boost_1_67_0.tar.bz2
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 = 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 = 47d9f152988fe205350a6d31d032692a6777f838a886c3b3dc7af3b0652fdd50
sha256sums = SKIP
- sha256sums = a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b
- sha256sums = 727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca
- sha256sums = 9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7
- sha256sums = b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf
- sha256sums = 0d65832bc5a73d4cfecef4b552bb78a30ce6020a5fabe5558dcf2ade8341b593
- sha256sums = 3c9097af599f08388c471d6fd02f40ea72e5759eaa89f731e662852a5e67feea
- sha256sums = 0965b4f12a0ae26bea131f05c7383d4a9b068d556b092ad23e19e1d8f6895531
- sha256sums = d97a1fec15e0dc4491e79ce380f6f994f1c4b387d960c13e178a18b0299c0436
- sha256sums = 7000da5a03b7a44b26d86653104558798879ce9a2f6e7e1b929f8f9fcabdf33f
+ sha256sums = 9c4625c45a3ee7e49a604ef221778983dd9fd8104922a87f20b99d9bedb7725a
+ sha256sums = 2684c972994ee57fc5632e03bf044746f6eb45d4920c343937a465fd67a5adba
+ sha256sums = cdf687f23bc6e8d52dbee9fa02b23d755e80f88476f0fc2e7c4c71cdfed3792f
+ sha256sums = 2d0f6dcf38f22e49ef7ab9de0230484f1ffac41b7ac40feaf5ef4538ae2f7a18
sha256sums = 2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af
pkgname = mysql-workbench-git
diff --git a/0001-mysql-workbench-no-check-for-updates.patch b/0001-mysql-workbench-no-check-for-updates.patch
index 129b63b18ff..825d4de5894 100644
--- a/0001-mysql-workbench-no-check-for-updates.patch
+++ b/0001-mysql-workbench-no-check-for-updates.patch
@@ -1,21 +1,30 @@
+From d15e588be02e44b1317bf90ff7be1714267281c8 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Mon, 23 Jul 2018 11:03:19 +0200
+Subject: [PATCH 1/4] mysql-workbench-no-check-for-updates
+
+Signed-off-by: Christian Hesse <mail@eworm.de>
+---
+ res/wbdata/main_menu.xml | 2 ++
+ 1 file changed, 2 insertions(+)
+
diff --git a/res/wbdata/main_menu.xml b/res/wbdata/main_menu.xml
-index a32256c..08d9a21 100644
+index bfa63ef..957f809 100644
--- a/res/wbdata/main_menu.xml
+++ b/res/wbdata/main_menu.xml
-@@ -2900,6 +2900,7 @@ value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.view.fkhili
- <value type="string" key="itemType">action</value>
- </value>
-
-+ <!-- We build a package that should be updated via pacman, so disable this check.
- <value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.separator.help.checkver">
- <value type="string" key="itemType">separator</value>
- </value>
-@@ -2910,7 +2911,7 @@ value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.view.fkhili
- <value type="string" key="name">checkUpdate</value>
- <value type="string" key="command">plugin:wb.tools.checkForUpdates</value>
- <value type="string" key="itemType">action</value>
-- </value>
-+ </value> //-->
-
- <value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.separator.help.report_a_bug">
- <value type="string" key="itemType">separator</value>
+@@ -2277,6 +2277,7 @@
+ <value type="string" key="command">builtin:show_log_file</value>
+ <value type="string" key="itemType">action</value>
+ </value>
++ <!-- We build a package that should be updated via pacman, so disable this check.
+ <value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.separator.help.checkver">
+ <value type="string" key="itemType">separator</value>
+ </value>
+@@ -2287,6 +2288,7 @@
+ <value type="string" key="command">plugin:wb.tools.checkForUpdates</value>
+ <value type="string" key="itemType">action</value>
+ </value>
++ </value> //-->
+ <value type="object" struct-name="app.MenuItem" id="com.mysql.wb.menu.separator.help.report_a_bug">
+ <value type="string" key="itemType">separator</value>
+ <value type="string" key="platform">windows,linux</value>
diff --git a/0002-disable-unsupported-operating-system-warning.patch b/0002-disable-unsupported-operating-system-warning.patch
index 56aef14132b..785d65482be 100644
--- a/0002-disable-unsupported-operating-system-warning.patch
+++ b/0002-disable-unsupported-operating-system-warning.patch
@@ -1,7 +1,7 @@
-From 784599e99ee97574798512f6daf987cab8fd4cdf Mon Sep 17 00:00:00 2001
+From 98a9974f550dfb5c8f66213774e4ef95848127e1 Mon Sep 17 00:00:00 2001
From: Christian Hesse <mail@eworm.de>
-Date: Wed, 8 Feb 2017 09:12:24 +0100
-Subject: [PATCH 1/1] disable unsupported operating system warning
+Date: Mon, 23 Jul 2018 11:04:55 +0200
+Subject: [PATCH 2/4] disable-unsupported-operating-system-warning
Signed-off-by: Christian Hesse <mail@eworm.de>
---
@@ -9,21 +9,18 @@ Signed-off-by: Christian Hesse <mail@eworm.de>
1 file changed, 2 insertions(+)
diff --git a/backend/wbprivate/workbench/wb_context.cpp b/backend/wbprivate/workbench/wb_context.cpp
-index 82c0fa6..f06ff99 100644
+index e80501a..a4047b1 100644
--- a/backend/wbprivate/workbench/wb_context.cpp
+++ b/backend/wbprivate/workbench/wb_context.cpp
-@@ -1009,9 +1009,11 @@ void WBContext::init_finish_(WBOptions *options) {
+@@ -1011,9 +1011,11 @@ void WBContext::init_finish_(WBOptions *options) {
_frontendCallbacks->show_status_text(_("Ready."));
+#if 0
- if (options->open_at_startup_type !=
- "run-script") // <--- so that our runtime tests don't lock up when a modal warning dialog is displayed
+ // Avoid our runtime tests to lock up when a modal warning dialog is displayed.
+ if (options->open_at_startup_type != "run-script")
warnIfRunningOnUnsupportedOS();
+#endif
try {
// execute action requested from command line
---
-2.11.1
-
diff --git a/0003-add-option-to-hide-nonstandard-server-warning.patch b/0003-add-option-to-hide-nonstandard-server-warning.patch
deleted file mode 100644
index 31471fa9c6c..00000000000
--- a/0003-add-option-to-hide-nonstandard-server-warning.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From cca769c75b9421f8ef5090848cea6162ccd85ba7 Mon Sep 17 00:00:00 2001
-From: Christian Hesse <mail@eworm.de>
-Date: Wed, 8 Feb 2017 09:42:29 +0100
-Subject: [PATCH 1/1] add option to hide nonstandard server warning
-
-Signed-off-by: Christian Hesse <mail@eworm.de>
----
- backend/wbprivate/workbench/wb_context.cpp | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/backend/wbprivate/workbench/wb_context.cpp b/backend/wbprivate/workbench/wb_context.cpp
-index f06ff99..f89006b 100644
---- a/backend/wbprivate/workbench/wb_context.cpp
-+++ b/backend/wbprivate/workbench/wb_context.cpp
-@@ -3038,7 +3038,7 @@ std::shared_ptr<SqlEditorForm> WBContext::add_new_query_window(const db_mgmt_Con
- logError("Unsupported server version: %s %s\n", form->connection_details()["dbmsProductName"].c_str(),
- form->connection_details()["dbmsProductVersion"].c_str());
-
-- if (mforms::Utilities::show_warning(
-+ if (mforms::Utilities::show_message_and_remember(
- base::strfmt("Connection Warning (%s)", targetConnection->name().c_str()),
- base::strfmt(
- "Incompatible/nonstandard server version or connection protocol detected (%s).\n\n"
-@@ -3046,7 +3046,8 @@ std::shared_ptr<SqlEditorForm> WBContext::add_new_query_window(const db_mgmt_Con
- "properly since the database is not fully compatible with the supported versions of MySQL.\n\n"
- "MySQL Workbench is developed and tested for MySQL Server versions 5.1, 5.5, 5.6 and 5.7",
- bec::sanitize_server_version_number(form->connection_details()["dbmsProductVersion"]).c_str()),
-- "Continue Anyway", "Cancel") != mforms::ResultOk) {
-+ "Continue Anyway", "Cancel", "", "wb.supported_server_check.suppress_warning",
-+ "Don't show this message again") != mforms::ResultOk) {
- _frontendCallbacks->show_status_text(_("Unsupported server"));
- return SqlEditorForm::Ref();
- }
---
-2.11.1
-
diff --git a/0005-gdal-use-CPLFree.patch b/0005-gdal-use-CPLFree.patch
deleted file mode 100644
index 4893149c1e1..00000000000
--- a/0005-gdal-use-CPLFree.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-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
deleted file mode 100644
index 3e220f86b46..00000000000
--- a/0006-mysql-include-my_dir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-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
deleted file mode 100644
index 6101b8c0fe5..00000000000
--- a/0007-gdal-json-c-0-13.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-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 086864c863f..4e685887fc7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,50 +5,42 @@
# Contributor: Ionut Biru <ibiru@archlinux.org>
pkgname=mysql-workbench-git
-pkgver=6.3.9.r0.g1972008
+pkgver=8.0.12.r0.g7d05cc5df
pkgrel=1
-# mysql & mysql-connector-c++ from git
-_gdal_version=2.2.3
-_boost_version=1.59.0
+# mysql from git
+_connector_version=8.0.12
+_gdal_version=2.3.1
+_boost_version=1.67.0
pkgdesc='A cross-platform, visual database design tool developed by MySQL - git checkout'
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++' 'proj' 'json-c')
-optdepends=('gnome-keyring: store SSH/MySQL passwords in GNOME password manager'
- 'python2-pyodbc: database migration')
+ 'hicolor-icon-theme' 'libgl' 'libsecret' 'libiodbc' 'libxml2'
+ 'libzip' 'mysql-python' 'pcre' 'python2' 'python2-cairo' 'libssh'
+ 'python2-pexpect' 'tinyxml' 'unixodbc' 'vsqlite++' 'proj' 'json-c'
+ 'antlr4-runtime')
+optdepends=('python2-pyodbc: database migration')
provides=('mysql-workbench')
conflicts=('mysql-workbench')
-makedepends=('git' 'cmake' 'boost' 'mesa' 'swig' 'java-runtime' 'imagemagick')
-validpgpkeys=('A4A9406876FCBD3C456770C88C718D3B5072E1F5')
+makedepends=('git' 'cmake' 'boost' 'mesa' 'swig' 'java-runtime' 'imagemagick' 'antlr4')
+validpgpkeys=('A4A9406876FCBD3C456770C88C718D3B5072E1F5') # MySQL Release Engineering <mysql-build@oss.oracle.com>
source=('git://github.com/mysql/mysql-workbench.git'
'git://github.com/mysql/mysql-server.git'
- 'git://github.com/mysql/mysql-connector-cpp.git'
+ "https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${_connector_version}-src.tar.gz"{,.asc}
"http://download.osgeo.org/gdal/${_gdal_version}/gdal-${_gdal_version}.tar.xz"
"https://downloads.sourceforge.net/project/boost/boost/${_boost_version}/boost_${_boost_version//./_}.tar.bz2"
- 'http://www.antlr3.org/download/antlr-3.4-complete.jar'
'0001-mysql-workbench-no-check-for-updates.patch'
'0002-disable-unsupported-operating-system-warning.patch'
- '0003-add-option-to-hide-nonstandard-server-warning.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'
+ '47d9f152988fe205350a6d31d032692a6777f838a886c3b3dc7af3b0652fdd50'
'SKIP'
- 'a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b'
- '727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca'
- '9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7'
- 'b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf'
- '0d65832bc5a73d4cfecef4b552bb78a30ce6020a5fabe5558dcf2ade8341b593'
- '3c9097af599f08388c471d6fd02f40ea72e5759eaa89f731e662852a5e67feea'
- '0965b4f12a0ae26bea131f05c7383d4a9b068d556b092ad23e19e1d8f6895531'
- 'd97a1fec15e0dc4491e79ce380f6f994f1c4b387d960c13e178a18b0299c0436'
- '7000da5a03b7a44b26d86653104558798879ce9a2f6e7e1b929f8f9fcabdf33f'
+ '9c4625c45a3ee7e49a604ef221778983dd9fd8104922a87f20b99d9bedb7725a'
+ '2684c972994ee57fc5632e03bf044746f6eb45d4920c343937a465fd67a5adba'
+ 'cdf687f23bc6e8d52dbee9fa02b23d755e80f88476f0fc2e7c4c71cdfed3792f'
+ '2d0f6dcf38f22e49ef7ab9de0230484f1ffac41b7ac40feaf5ef4538ae2f7a18'
'2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af')
pkgver() {
@@ -58,25 +50,15 @@ pkgver() {
printf '%s.r%s.g%s' \
"$(sed -e "s/^${pkgname%%-git}//" -e 's/^[-_/a-zA-Z]\+//' -e 's/[-_+]/./g' <<< ${GITTAG})" \
"$(git rev-list --count ${GITTAG}..)" \
- "$(git log -1 --format='%h')"
+ "$(git rev-parse --short HEAD)"
else
printf '0.r%s.g%s' \
"$(git rev-list --count master)" \
- "$(git log -1 --format='%h')"
+ "$(git rev-parse --short HEAD)"
fi
}
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'
@@ -86,24 +68,14 @@ prepare() {
# disable unsupported operating system warning
patch -Np1 < "${srcdir}"/0002-disable-unsupported-operating-system-warning.patch
- # add option to hide nonstandard server warning
- patch -Np1 < "${srcdir}"/0003-add-option-to-hide-nonstandard-server-warning.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")' \
- CMakeLists.txt
-
- # put antlr into place
- install -D ${srcdir}/antlr-3.4-complete.jar ${srcdir}/linux-res/bin/antlr-3.4-complete.jar
+ # disable stringop-truncation for GCC 8.x
+ sed -i '/^set/s|-Wall|-Wall -Wno-stringop-truncation|' CMakeLists.txt
# make sure to link against bundled libraries
sed -i "/target_link_libraries/s|\\$|-L${srcdir}/install-bundle/usr/lib/ \\$|" backend/wbpublic/CMakeLists.txt
@@ -111,34 +83,41 @@ prepare() {
build() {
# Build mysql
- cd "${srcdir}/mysql-server/"
- cmake . \
+ mkdir "${srcdir}/mysql-build"
+ cd "${srcdir}/mysql-build"
+ msg "Configure mysql"
+ cmake "${srcdir}/mysql-server" \
-DWITHOUT_SERVER=ON \
-DBUILD_CONFIG=mysql_release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
-DSYSCONFDIR=/etc/mysql \
-DMYSQL_DATADIR=/var/lib/mysql \
-DWITH_BOOST="${srcdir}/boost_${_boost_version//./_}"
+ msg "Build mysql"
make
+ msg "Install mysql"
make DESTDIR="${srcdir}/install-bundle/" install
# Build mysql-connector-c++
- cd "${srcdir}/mysql-connector-cpp/"
- cmake . \
+ mkdir "${srcdir}/mysql-connector-c++-${_connector_version}-src-build"
+ cd "${srcdir}/mysql-connector-c++-${_connector_version}-src-build"
+ msg "Configure mysql-connector-c++"
+ cmake "${srcdir}/mysql-connector-c++-${_connector_version}-src" \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DMYSQLCPPCONN_BUILD_EXAMPLES=OFF \
+ -DINSTALL_LIB_DIR=lib \
-DMYSQL_DIR="${srcdir}/install-bundle/" \
-DMYSQL_CONFIG_EXECUTABLE="${srcdir}/install-bundle/usr/bin/mysql_config" \
- -DBOOST_ROOT:STRING="${srcdir}/boost_${_boost_version//./_}"
-
+ -DWITH_JDBC=ON
+ msg "Build mysql-connector-c++"
+ make
+ msg "Install mysql-connector-c++"
make DESTDIR="${srcdir}/install-bundle/" install
# Build gdal
- cd "${srcdir}/gdal-${_gdal_version}/"
+ cd "${srcdir}/gdal-${_gdal_version}"
+ msg "Configure gdal"
./configure \
--prefix=/usr \
--includedir=/usr/include/gdal \
@@ -146,45 +125,56 @@ build() {
--with-mysql="${srcdir}/install-bundle/usr/bin/mysql_config" \
--with-curl \
--without-jasper
- make
- make DESTDIR="${srcdir}/install-bundle/" install
+ msg "Build gdal"
+ make LD_LIBRARY_PATH="${srcdir}/install-bundle/usr/lib/"
+ msg "Install gdal"
+ make LD_LIBRARY_PATH="${srcdir}/install-bundle/usr/lib/" DESTDIR="${srcdir}/install-bundle/" install
# Build MySQL Workbench itself with bundled libs
- cd "${srcdir}/mysql-workbench/"
- cmake . \
+ mkdir "${srcdir}/mysql-workbench-build"
+ cd "${srcdir}/mysql-workbench-build"
+ msg "Configure mysql-workbench"
+ cmake "${srcdir}/mysql-workbench" \
+ -Wno-dev \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -DCMAKE_CXX_FLAGS="-std=c++11" \
+ -DCMAKE_CXX_FLAGS="-std=c++14" \
-DCMAKE_BUILD_TYPE=Release \
-DMySQL_CONFIG_PATH="${srcdir}/install-bundle/usr/bin/mysql_config" \
-DMySQLCppConn_LIBRARY="${srcdir}/install-bundle/usr/lib/libmysqlcppconn.so" \
- -DMySQLCppConn_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+ -DMySQLCppConn_INCLUDE_DIR="${srcdir}/install-bundle/usr/include/jdbc" \
-DGDAL_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
-DGDAL_LIBRARY="${srcdir}/install-bundle/usr/lib/libgdal.so" \
+ -DWITH_ANTLR_JAR='/usr/share/java/antlr-complete.jar' \
-DUSE_BUNDLED_MYSQLDUMP=1
+ msg "Build mysql-workbench"
make
}
package() {
- # install bundled libraries files and files
+ # install bundled libraries
for LIBRARY in $(find "${srcdir}/install-bundle/usr/lib/" -type f -regex '.*/lib\(gdal\|mysql\(client\|cppconn\)\)\.so\..*'); do
- install -D -m0755 "${LIBRARY}" "${pkgdir}"/usr/lib/mysql-workbench/"$(basename "${LIBRARY}")"
- done
- for SYMLINK in $(find "${srcdir}/install-bundle/usr/lib/" -type l -regex '.*/lib\(gdal\|mysql\(client\|cppconn\)\)\.so\..*'); do
- ln -s "$(readlink "${SYMLINK}")" "${pkgdir}"/usr/lib/mysql-workbench/"$(basename "${SYMLINK}")"
+ BASENAME="$(basename "${LIBRARY}")"
+ SONAME="$(readelf -d "${LIBRARY}" | grep -Po '(?<=(Library soname: \[)).*(?=\])')"
+ install -D -m0755 "${LIBRARY}" "${pkgdir}"/usr/lib/mysql-workbench/"${BASENAME}"
+ ln -s "${BASENAME}" "${pkgdir}"/usr/lib/mysql-workbench/"${SONAME}"
done
+
+ # install bundled mysql and mysqldump
install -m0755 "${srcdir}/install-bundle/usr/bin/mysql"{,dump} "${pkgdir}"/usr/lib/mysql-workbench/
# install MySQL Workbench itself
- cd "${srcdir}/mysql-workbench/"
+ cd "${srcdir}/mysql-workbench-build/"
+ # where should these file be generated!?
+ touch "${srcdir}"/mysql-workbench/build/mysql-workbench-commercial.{mime,sharedmimeinfo}
make DESTDIR="${pkgdir}" install
# icons
for SIZE in 16 24 32 48 64 96 128; do
convert -scale ${SIZE} \
- images/icons/linux/128x128/apps/mysql-workbench.png \
- ${srcdir}/mysql-workbench.png
- install -D -m0644 ${srcdir}/mysql-workbench.png "${pkgdir}/usr/share/icons/hicolor/${SIZE}x${SIZE}/apps/mysql-workbench.png"
+ "${srcdir}/mysql-workbench/images/icons/MySQLWorkbench-128.png" \
+ "${srcdir}/mysql-workbench.png"
+ install -D -m0644 "${srcdir}/mysql-workbench.png" "${pkgdir}/usr/share/icons/hicolor/${SIZE}x${SIZE}/apps/mysql-workbench.png"
done
install -D -m 0644 "${srcdir}"/arch_linux_profile.xml \