[arch-commits] Commit in mysql-workbench/repos (12 files)

Christian Hesse eworm at archlinux.org
Tue Jan 12 17:07:05 UTC 2016


    Date: Tuesday, January 12, 2016 @ 18:07:04
  Author: eworm
Revision: 156179

archrelease: copy trunk to community-testing-i686, community-testing-x86_64

Added:
  mysql-workbench/repos/community-testing-i686/
  mysql-workbench/repos/community-testing-i686/0001-mysql-workbench-no-check-for-updates.patch
    (from rev 156178, mysql-workbench/trunk/0001-mysql-workbench-no-check-for-updates.patch)
  mysql-workbench/repos/community-testing-i686/0002-mysql-connector-c++-json.patch
    (from rev 156178, mysql-workbench/trunk/0002-mysql-connector-c++-json.patch)
  mysql-workbench/repos/community-testing-i686/PKGBUILD
    (from rev 156178, mysql-workbench/trunk/PKGBUILD)
  mysql-workbench/repos/community-testing-i686/arch_linux_profile.xml
    (from rev 156178, mysql-workbench/trunk/arch_linux_profile.xml)
  mysql-workbench/repos/community-testing-i686/mysql-workbench.install
    (from rev 156178, mysql-workbench/trunk/mysql-workbench.install)
  mysql-workbench/repos/community-testing-x86_64/
  mysql-workbench/repos/community-testing-x86_64/0001-mysql-workbench-no-check-for-updates.patch
    (from rev 156178, mysql-workbench/trunk/0001-mysql-workbench-no-check-for-updates.patch)
  mysql-workbench/repos/community-testing-x86_64/0002-mysql-connector-c++-json.patch
    (from rev 156178, mysql-workbench/trunk/0002-mysql-connector-c++-json.patch)
  mysql-workbench/repos/community-testing-x86_64/PKGBUILD
    (from rev 156178, mysql-workbench/trunk/PKGBUILD)
  mysql-workbench/repos/community-testing-x86_64/arch_linux_profile.xml
    (from rev 156178, mysql-workbench/trunk/arch_linux_profile.xml)
  mysql-workbench/repos/community-testing-x86_64/mysql-workbench.install
    (from rev 156178, mysql-workbench/trunk/mysql-workbench.install)

--------------------------------------------------------------------------+
 community-testing-i686/0001-mysql-workbench-no-check-for-updates.patch   |   21 +
 community-testing-i686/0002-mysql-connector-c++-json.patch               |   41 ++
 community-testing-i686/PKGBUILD                                          |  150 ++++++++++
 community-testing-i686/mysql-workbench.install                           |   14 
 community-testing-x86_64/0001-mysql-workbench-no-check-for-updates.patch |   21 +
 community-testing-x86_64/0002-mysql-connector-c++-json.patch             |   41 ++
 community-testing-x86_64/PKGBUILD                                        |  150 ++++++++++
 community-testing-x86_64/mysql-workbench.install                         |   14 
 8 files changed, 452 insertions(+)

Copied: mysql-workbench/repos/community-testing-i686/0001-mysql-workbench-no-check-for-updates.patch (from rev 156178, mysql-workbench/trunk/0001-mysql-workbench-no-check-for-updates.patch)
===================================================================
--- community-testing-i686/0001-mysql-workbench-no-check-for-updates.patch	                        (rev 0)
+++ community-testing-i686/0001-mysql-workbench-no-check-for-updates.patch	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,21 @@
+diff --git a/res/wbdata/main_menu.xml b/res/wbdata/main_menu.xml
+index a32256c..08d9a21 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>

Copied: mysql-workbench/repos/community-testing-i686/0002-mysql-connector-c++-json.patch (from rev 156178, mysql-workbench/trunk/0002-mysql-connector-c++-json.patch)
===================================================================
--- community-testing-i686/0002-mysql-connector-c++-json.patch	                        (rev 0)
+++ community-testing-i686/0002-mysql-connector-c++-json.patch	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,41 @@
+diff --git a/cppconn/datatype.h b/cppconn/datatype.h
+index 7ada3bc..50c71cf 100644
+--- a/cppconn/datatype.h
++++ b/cppconn/datatype.h
+@@ -59,7 +59,8 @@ public:
+ 		GEOMETRY,
+ 		ENUM,
+ 		SET,
+-		SQLNULL
++		SQLNULL,
++		JSON
+ 	};
+ };
+ 
+diff --git a/driver/mysql_metadata.cpp b/driver/mysql_metadata.cpp
+index 8d3ef8b..2faf454 100644
+--- a/driver/mysql_metadata.cpp
++++ b/driver/mysql_metadata.cpp
+@@ -4736,6 +4736,9 @@ MySQL_ConnectionMetaData::supportsConvert(int fromType, int toType)
+ 			}
+ 		}
+ 
++		case sql::DataType::JSON:
++			return false;
++
+ 		// MySQL doesn't support a NULL type
+ 		case sql::DataType::SQLNULL:
+ 			return false;
+diff --git a/driver/mysql_util.cpp b/driver/mysql_util.cpp
+index af5a7f4..3283eca 100644
+--- a/driver/mysql_util.cpp
++++ b/driver/mysql_util.cpp
+@@ -431,6 +431,8 @@ mysql_type_to_datatype(const MYSQL_FIELD * const field)
+ 			return sql::DataType::SET;
+ 		case MYSQL_TYPE_GEOMETRY:
+ 			return sql::DataType::GEOMETRY;
++		case MYSQL_TYPE_JSON:
++			return sql::DataType::JSON;
+ 		default:
+ 			return sql::DataType::UNKNOWN;
+ 	}

Copied: mysql-workbench/repos/community-testing-i686/PKGBUILD (from rev 156178, mysql-workbench/trunk/PKGBUILD)
===================================================================
--- community-testing-i686/PKGBUILD	                        (rev 0)
+++ community-testing-i686/PKGBUILD	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,150 @@
+# $Id$
+# Maintainer: Christian Hesse <mail at eworm.de>
+# Contributor: Alexandre Boily <alexandreboily at gmail.com>
+# Contributor: Illarion Kovalchuk <illarion.kovalchuk at gmail.com>
+# Contributor: totoloco <totoloco at gmail _dot_com>
+# Contributor: Ionut Biru <ibiru at archlinux.org>
+
+pkgname=mysql-workbench
+pkgver=6.3.6
+pkgrel=2
+_mysql_version=5.7.10
+_connector_version=1.1.6
+_gdal_version=2.0.1
+_boost_version=1.59.0
+pkgdesc='A cross-platform, visual database design tool developed by MySQL'
+arch=('i686' 'x86_64')
+url='https://www.mysql.com/products/workbench/'
+license=('GPL2')
+depends=('python2' 'libzip' 'gtkmm' 'ctemplate'
+	'libgnome-keyring' 'libgl' 'python2-paramiko' 'python2-pexpect'
+	'pcre' 'tinyxml' 'libxml2' 'mysql-python' 'cairo'
+	'python2-cairo' 'hicolor-icon-theme' 'desktop-file-utils' 'libiodbc'
+	'vsqlite++' 'unixodbc' 'freetype2'
+	'libantlr3c')
+optdepends=('gnome-keyring: store SSH/MySQL passwords in GNOME password manager'
+	'python2-pyodbc: database migration')
+makedepends=('cmake' 'boost' 'curl' 'mesa' 'swig' 'java-runtime' 'imagemagick')
+install=mysql-workbench.install
+validpgpkeys=('A4A9406876FCBD3C456770C88C718D3B5072E1F5')
+source=("http://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${pkgver}-src.tar.gz"{,.asc}
+	"http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-${_mysql_version}.tar.gz"{,.asc}
+	"http://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${_connector_version}.tar.gz"{,.asc}
+	"http://download.osgeo.org/gdal/${_gdal_version}/gdal-${_gdal_version}.tar.gz"
+	"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-mysql-connector-c++-json.patch'
+	'arch_linux_profile.xml')
+sha256sums=('c51fce1a3fd9425dd9adf4d16e24e84f92e2f8374b43a956f580fd84d03afe62'
+            'SKIP'
+            '1ea1644884d086a23eafd8ccb04d517fbd43da3a6a06036f23c5c3a111e25c74'
+            'SKIP'
+            'ad710b3900cae3be94656825aa70319cf7a96e1ad46bf93e07275f3606f69447'
+            'SKIP'
+            'b55f794768e104a2fd0304eaa61bb8bda3dc7c4e14f2c9d0913baca3e55b83ab'
+            '727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca'
+            '9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7'
+            'b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf'
+            '4beb8b6c92f6b2b2189bfdd2f1a073ad54d501f05ef4686e47c661b40f63b9d3'
+            '2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af')
+
+prepare() {
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+
+	# Disable 'Help' -> 'Check for Updates'
+	# Updates are provided via Arch Linux packages
+	patch -Np1 < "${srcdir}"/0001-mysql-workbench-no-check-for-updates.patch
+
+	# we need python 2.x
+	sed -i '/^FIND_PROGRAM(PYTHON_EXEC /c FIND_PROGRAM(PYTHON_EXEC "python2")' \
+		CMakeLists.txt
+
+	# MySQL connector C++ is lagging behind and misses JSON support
+	cd "${srcdir}/mysql-connector-c++-${_connector_version}/"
+	patch -Np1 < "${srcdir}"/0002-mysql-connector-c++-json.patch
+
+	# put antlr into place
+	install -D ${srcdir}/antlr-3.4-complete.jar ${srcdir}/linux-res/bin/antlr-3.4-complete.jar
+}
+
+build() {
+	# Build mysql
+	cd "${srcdir}/mysql-${_mysql_version}"
+	cmake . \
+		-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//./_}"
+	make
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build mysql-connector-c++
+	cd "${srcdir}/mysql-connector-c++-${_connector_version}/"
+	cmake . \
+		-Wno-dev \
+		-DCMAKE_INSTALL_PREFIX=/usr \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_INSTALL_LIBDIR=lib \
+		-DMYSQLCPPCONN_BUILD_EXAMPLES=OFF \
+		-DMYSQL_DIR="${srcdir}/install-bundle/" \
+		-DMYSQL_CONFIG_EXECUTABLE="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		-DBOOST_ROOT:STRING="${srcdir}/boost_${_boost_version//./_}"
+
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build gdal
+	cd "${srcdir}/gdal-${_gdal_version}/"
+	./configure \
+		--prefix=/usr \
+		--includedir=/usr/include/gdal \
+		--with-sqlite3 \
+		--with-mysql="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		--with-curl
+	make
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build MySQL Workbench itself with bundled libs
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+	cmake . \
+		-DCMAKE_INSTALL_PREFIX:PATH=/usr \
+		-DCMAKE_CXX_FLAGS="-std=c++11" \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DMySQL_CONFIG_PATH="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		-DMYSQLCPPCONN_LIBRARY="-L${srcdir}/install-bundle/usr/lib -lmysqlcppconn" \
+		-DMYSQLCPPCONN_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+		-DGDAL_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+		-DGDAL_LIBRARY="${srcdir}/install-bundle/usr/lib/libgdal.so" \
+		-DUSE_BUNDLED_MYSQLDUMP=1
+	make
+}
+
+package() {
+	# install bundled libraries files and files
+	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}")"
+	done
+	install -m0755 "${srcdir}/install-bundle/usr/bin/mysql"{,dump} "${pkgdir}"/usr/lib/mysql-workbench/
+
+	# install MySQL Workbench itself
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+
+	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"
+	done
+
+	install -D -m 0644 "${srcdir}"/arch_linux_profile.xml \
+		"${pkgdir}"/usr/share/mysql-workbench/mysql.profiles/Arch_Linux_\(MariaDB\).xml
+}
+

Copied: mysql-workbench/repos/community-testing-i686/arch_linux_profile.xml (from rev 156178, mysql-workbench/trunk/arch_linux_profile.xml)
===================================================================
(Binary files differ)

Copied: mysql-workbench/repos/community-testing-i686/mysql-workbench.install (from rev 156178, mysql-workbench/trunk/mysql-workbench.install)
===================================================================
--- community-testing-i686/mysql-workbench.install	                        (rev 0)
+++ community-testing-i686/mysql-workbench.install	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,14 @@
+post_install() {
+	gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+	update-desktop-database -q
+	update-mime-database usr/share/mime
+}
+
+post_upgrade() {
+	post_install
+}
+
+post_remove() {
+	post_install
+}
+

Copied: mysql-workbench/repos/community-testing-x86_64/0001-mysql-workbench-no-check-for-updates.patch (from rev 156178, mysql-workbench/trunk/0001-mysql-workbench-no-check-for-updates.patch)
===================================================================
--- community-testing-x86_64/0001-mysql-workbench-no-check-for-updates.patch	                        (rev 0)
+++ community-testing-x86_64/0001-mysql-workbench-no-check-for-updates.patch	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,21 @@
+diff --git a/res/wbdata/main_menu.xml b/res/wbdata/main_menu.xml
+index a32256c..08d9a21 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>

Copied: mysql-workbench/repos/community-testing-x86_64/0002-mysql-connector-c++-json.patch (from rev 156178, mysql-workbench/trunk/0002-mysql-connector-c++-json.patch)
===================================================================
--- community-testing-x86_64/0002-mysql-connector-c++-json.patch	                        (rev 0)
+++ community-testing-x86_64/0002-mysql-connector-c++-json.patch	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,41 @@
+diff --git a/cppconn/datatype.h b/cppconn/datatype.h
+index 7ada3bc..50c71cf 100644
+--- a/cppconn/datatype.h
++++ b/cppconn/datatype.h
+@@ -59,7 +59,8 @@ public:
+ 		GEOMETRY,
+ 		ENUM,
+ 		SET,
+-		SQLNULL
++		SQLNULL,
++		JSON
+ 	};
+ };
+ 
+diff --git a/driver/mysql_metadata.cpp b/driver/mysql_metadata.cpp
+index 8d3ef8b..2faf454 100644
+--- a/driver/mysql_metadata.cpp
++++ b/driver/mysql_metadata.cpp
+@@ -4736,6 +4736,9 @@ MySQL_ConnectionMetaData::supportsConvert(int fromType, int toType)
+ 			}
+ 		}
+ 
++		case sql::DataType::JSON:
++			return false;
++
+ 		// MySQL doesn't support a NULL type
+ 		case sql::DataType::SQLNULL:
+ 			return false;
+diff --git a/driver/mysql_util.cpp b/driver/mysql_util.cpp
+index af5a7f4..3283eca 100644
+--- a/driver/mysql_util.cpp
++++ b/driver/mysql_util.cpp
+@@ -431,6 +431,8 @@ mysql_type_to_datatype(const MYSQL_FIELD * const field)
+ 			return sql::DataType::SET;
+ 		case MYSQL_TYPE_GEOMETRY:
+ 			return sql::DataType::GEOMETRY;
++		case MYSQL_TYPE_JSON:
++			return sql::DataType::JSON;
+ 		default:
+ 			return sql::DataType::UNKNOWN;
+ 	}

Copied: mysql-workbench/repos/community-testing-x86_64/PKGBUILD (from rev 156178, mysql-workbench/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,150 @@
+# $Id$
+# Maintainer: Christian Hesse <mail at eworm.de>
+# Contributor: Alexandre Boily <alexandreboily at gmail.com>
+# Contributor: Illarion Kovalchuk <illarion.kovalchuk at gmail.com>
+# Contributor: totoloco <totoloco at gmail _dot_com>
+# Contributor: Ionut Biru <ibiru at archlinux.org>
+
+pkgname=mysql-workbench
+pkgver=6.3.6
+pkgrel=2
+_mysql_version=5.7.10
+_connector_version=1.1.6
+_gdal_version=2.0.1
+_boost_version=1.59.0
+pkgdesc='A cross-platform, visual database design tool developed by MySQL'
+arch=('i686' 'x86_64')
+url='https://www.mysql.com/products/workbench/'
+license=('GPL2')
+depends=('python2' 'libzip' 'gtkmm' 'ctemplate'
+	'libgnome-keyring' 'libgl' 'python2-paramiko' 'python2-pexpect'
+	'pcre' 'tinyxml' 'libxml2' 'mysql-python' 'cairo'
+	'python2-cairo' 'hicolor-icon-theme' 'desktop-file-utils' 'libiodbc'
+	'vsqlite++' 'unixodbc' 'freetype2'
+	'libantlr3c')
+optdepends=('gnome-keyring: store SSH/MySQL passwords in GNOME password manager'
+	'python2-pyodbc: database migration')
+makedepends=('cmake' 'boost' 'curl' 'mesa' 'swig' 'java-runtime' 'imagemagick')
+install=mysql-workbench.install
+validpgpkeys=('A4A9406876FCBD3C456770C88C718D3B5072E1F5')
+source=("http://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${pkgver}-src.tar.gz"{,.asc}
+	"http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-${_mysql_version}.tar.gz"{,.asc}
+	"http://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${_connector_version}.tar.gz"{,.asc}
+	"http://download.osgeo.org/gdal/${_gdal_version}/gdal-${_gdal_version}.tar.gz"
+	"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-mysql-connector-c++-json.patch'
+	'arch_linux_profile.xml')
+sha256sums=('c51fce1a3fd9425dd9adf4d16e24e84f92e2f8374b43a956f580fd84d03afe62'
+            'SKIP'
+            '1ea1644884d086a23eafd8ccb04d517fbd43da3a6a06036f23c5c3a111e25c74'
+            'SKIP'
+            'ad710b3900cae3be94656825aa70319cf7a96e1ad46bf93e07275f3606f69447'
+            'SKIP'
+            'b55f794768e104a2fd0304eaa61bb8bda3dc7c4e14f2c9d0913baca3e55b83ab'
+            '727a932322d94287b62abb1bd2d41723eec4356a7728909e38adb65ca25241ca'
+            '9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7'
+            'b189e15c6b6f5a707357d9a9297f39ee3a33264fd28b44d5de6f537f851f82cf'
+            '4beb8b6c92f6b2b2189bfdd2f1a073ad54d501f05ef4686e47c661b40f63b9d3'
+            '2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af')
+
+prepare() {
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+
+	# Disable 'Help' -> 'Check for Updates'
+	# Updates are provided via Arch Linux packages
+	patch -Np1 < "${srcdir}"/0001-mysql-workbench-no-check-for-updates.patch
+
+	# we need python 2.x
+	sed -i '/^FIND_PROGRAM(PYTHON_EXEC /c FIND_PROGRAM(PYTHON_EXEC "python2")' \
+		CMakeLists.txt
+
+	# MySQL connector C++ is lagging behind and misses JSON support
+	cd "${srcdir}/mysql-connector-c++-${_connector_version}/"
+	patch -Np1 < "${srcdir}"/0002-mysql-connector-c++-json.patch
+
+	# put antlr into place
+	install -D ${srcdir}/antlr-3.4-complete.jar ${srcdir}/linux-res/bin/antlr-3.4-complete.jar
+}
+
+build() {
+	# Build mysql
+	cd "${srcdir}/mysql-${_mysql_version}"
+	cmake . \
+		-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//./_}"
+	make
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build mysql-connector-c++
+	cd "${srcdir}/mysql-connector-c++-${_connector_version}/"
+	cmake . \
+		-Wno-dev \
+		-DCMAKE_INSTALL_PREFIX=/usr \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_INSTALL_LIBDIR=lib \
+		-DMYSQLCPPCONN_BUILD_EXAMPLES=OFF \
+		-DMYSQL_DIR="${srcdir}/install-bundle/" \
+		-DMYSQL_CONFIG_EXECUTABLE="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		-DBOOST_ROOT:STRING="${srcdir}/boost_${_boost_version//./_}"
+
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build gdal
+	cd "${srcdir}/gdal-${_gdal_version}/"
+	./configure \
+		--prefix=/usr \
+		--includedir=/usr/include/gdal \
+		--with-sqlite3 \
+		--with-mysql="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		--with-curl
+	make
+	make DESTDIR="${srcdir}/install-bundle/" install
+
+	# Build MySQL Workbench itself with bundled libs
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+	cmake . \
+		-DCMAKE_INSTALL_PREFIX:PATH=/usr \
+		-DCMAKE_CXX_FLAGS="-std=c++11" \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DMySQL_CONFIG_PATH="${srcdir}/install-bundle/usr/bin/mysql_config" \
+		-DMYSQLCPPCONN_LIBRARY="-L${srcdir}/install-bundle/usr/lib -lmysqlcppconn" \
+		-DMYSQLCPPCONN_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+		-DGDAL_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+		-DGDAL_LIBRARY="${srcdir}/install-bundle/usr/lib/libgdal.so" \
+		-DUSE_BUNDLED_MYSQLDUMP=1
+	make
+}
+
+package() {
+	# install bundled libraries files and files
+	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}")"
+	done
+	install -m0755 "${srcdir}/install-bundle/usr/bin/mysql"{,dump} "${pkgdir}"/usr/lib/mysql-workbench/
+
+	# install MySQL Workbench itself
+	cd "${srcdir}/mysql-workbench-community-${pkgver}-src/"
+
+	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"
+	done
+
+	install -D -m 0644 "${srcdir}"/arch_linux_profile.xml \
+		"${pkgdir}"/usr/share/mysql-workbench/mysql.profiles/Arch_Linux_\(MariaDB\).xml
+}
+

Copied: mysql-workbench/repos/community-testing-x86_64/arch_linux_profile.xml (from rev 156178, mysql-workbench/trunk/arch_linux_profile.xml)
===================================================================
(Binary files differ)

Copied: mysql-workbench/repos/community-testing-x86_64/mysql-workbench.install (from rev 156178, mysql-workbench/trunk/mysql-workbench.install)
===================================================================
--- community-testing-x86_64/mysql-workbench.install	                        (rev 0)
+++ community-testing-x86_64/mysql-workbench.install	2016-01-12 17:07:04 UTC (rev 156179)
@@ -0,0 +1,14 @@
+post_install() {
+	gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+	update-desktop-database -q
+	update-mime-database usr/share/mime
+}
+
+post_upgrade() {
+	post_install
+}
+
+post_remove() {
+	post_install
+}
+



More information about the arch-commits mailing list