[arch-commits] Commit in mysql-workbench/trunk (0003-include-list.patch PKGBUILD)

Christian Hesse eworm at gemini.archlinux.org
Wed Apr 20 22:25:03 UTC 2022


    Date: Wednesday, April 20, 2022 @ 22:25:02
  Author: eworm
Revision: 1187202

upgpkg: mysql-workbench 8.0.28-2: bundle antlr4 for now...

... as the new antlr4 4.10.1-2 packages bump the soname, and
break the build at the same time.

Added:
  mysql-workbench/trunk/0003-include-list.patch
Modified:
  mysql-workbench/trunk/PKGBUILD

-------------------------+
 0003-include-list.patch |   12 ++++++++++++
 PKGBUILD                |   35 ++++++++++++++++++++++++++++++++---
 2 files changed, 44 insertions(+), 3 deletions(-)

Added: 0003-include-list.patch
===================================================================
--- 0003-include-list.patch	                        (rev 0)
+++ 0003-include-list.patch	2022-04-20 22:25:02 UTC (rev 1187202)
@@ -0,0 +1,12 @@
+diff --git a/library/parsers/mysql/MySQLBaseLexer.h b/library/parsers/mysql/MySQLBaseLexer.h
+index 1a8b9ac..8bd3d57 100644
+--- a/library/parsers/mysql/MySQLBaseLexer.h
++++ b/library/parsers/mysql/MySQLBaseLexer.h
+@@ -26,6 +26,7 @@
+ #include "Lexer.h"
+ #include "MySQLRecognizerCommon.h"
+ #include "mysql-recognition-types.h"
++#include <list>
+ 
+ namespace antlr4 {
+   class PARSERS_PUBLIC_TYPE Lexer;

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2022-04-20 22:04:55 UTC (rev 1187201)
+++ PKGBUILD	2022-04-20 22:25:02 UTC (rev 1187202)
@@ -6,11 +6,12 @@
 
 pkgname=mysql-workbench
 pkgver=8.0.28
-pkgrel=1
+pkgrel=2
 _mysql_version=${pkgver}
 _connector_version=${pkgver}
 _gdal_version=3.4.1
 _boost_version=1.73.0
+# bump the antlr4 version as required, this is to match the jar file name
 _antlr4_version=4.9.3
 pkgdesc='A cross-platform, visual database design tool developed by MySQL'
 arch=('x86_64')
@@ -20,7 +21,11 @@
          'gtkmm3' 'hicolor-icon-theme' 'json-c' 'libgl' 'libsecret' 'libssh'
          'libxml2' 'libzip' 'pcre' 'proj' 'python' 'rapidjson' 'unixodbc'
          'vsqlite++' 'zstd')
-makedepends=('cmake' 'boost' 'mesa' 'swig' 'java-runtime' 'imagemagick' "antlr4=${_antlr4_version}")
+makedepends=('cmake' 'boost' 'mesa' 'swig' 'java-runtime' 'imagemagick'
+	# tmporary fix for antlr4...
+	#"antlr4=${_antlr4_version}"
+	'git'
+)
 validpgpkeys=('859BE8D7C586F538430B19C2467B942D3A79BD29') # MySQL Release Engineering <mysql-build at oss.oracle.com>
 source=("https://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${pkgver}-src.tar.gz"{,.asc}
 	"https://cdn.mysql.com/Downloads/MySQL-${_mysql_version%.*}/mysql-${_mysql_version}.tar.gz"{,.asc}
@@ -27,8 +32,11 @@
 	"https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${_connector_version}-src.tar.gz"{,.asc}
 	"https://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"
+	'https://www.antlr.org/download/antlr-4.9.3-complete.jar'
+	'https://www.antlr.org/download/antlr4-cpp-runtime-4.9.3-source.zip'
 	'0001-mysql-workbench-no-check-for-updates.patch'
 	'0002-disable-unsupported-operating-system-warning.patch'
+	'0003-include-list.patch'
 	'arch_linux_profile.xml')
 sha256sums=('a6753b08be1157cd6d67fea7cf6a195ea0af46c7bfa2a6462e102375cba864c8'
             'SKIP'
@@ -38,8 +46,11 @@
             'SKIP'
             '332f053516ca45101ef0f7fa96309b64242688a8024780a5d93be0230e42173d'
             '4eb3b8d442b426dc35346235c8733b5ae35ba431690e38c6a8263dce9fcbb402'
+            'afcd40946d3de4d81e28d7c88d467289e0587285d27adb172aecc5494a17df36'
+            '5f0af6efd81f476c3e775c486eb0a71c25d6bbc14373e88a64690e2738d68e03'
             'cdf687f23bc6e8d52dbee9fa02b23d755e80f88476f0fc2e7c4c71cdfed3792f'
             '2d0f6dcf38f22e49ef7ab9de0230484f1ffac41b7ac40feaf5ef4538ae2f7a18'
+            'e7e66ba68a21a0da87f0513f2b9550359c923a94aa7d16afe6ead063322e3d53'
             'd816164098c90c432b4fe590708c14f95ab137abfe16ad1b7d498b2e83c0e265')
 
 prepare() {
@@ -52,6 +63,9 @@
 	# disable unsupported operating system warning
 	patch -Np1 < "${srcdir}"/0002-disable-unsupported-operating-system-warning.patch
 
+	# add missing include
+	patch -Np1 < "${srcdir}"/0003-include-list.patch
+
 	# remove '-Werror'
 	sed -i '/^\s*set/s| -Werror||' CMakeLists.txt
 
@@ -111,6 +125,18 @@
 	echo "Install gdal..."
 	make LD_LIBRARY_PATH="${srcdir}/install-bundle/usr/lib/" DESTDIR="${srcdir}/install-bundle/" install
 
+	# temporary fix until wb builds against antlr4-runtime 4.10.x...
+	mkdir "${srcdir}/antlr4-build"
+	cd "${srcdir}/antlr4-build"
+	cmake ../ \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_INSTALL_PREFIX=/usr \
+		-DCMAKE_CXX_STANDARD=17 \
+		-DANTLR4_INSTALL=ON \
+		-DINSTALL_GTEST=OFF
+	make
+	make DESTDIR="${srcdir}/install-bundle/" install
+
 	# Build MySQL Workbench itself with bundled libs
 	mkdir "${srcdir}/mysql-workbench-community-${pkgver}-src-build"
 	cd "${srcdir}/mysql-workbench-community-${pkgver}-src-build"
@@ -125,7 +151,9 @@
 		-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' \
+		-DANTLR4_INCLUDE_DIR="${srcdir}/install-bundle/usr/include" \
+		-DANTLR4_LIBRARY="${srcdir}/install-bundle/usr/lib/libantlr4-runtime.so" \
+		-DWITH_ANTLR_JAR="${srcdir}/antlr-4.9.3-complete.jar" \
 		-DUSE_BUNDLED_MYSQLDUMP=1
 	echo "Build mysql-workbench..."
 	make
@@ -139,6 +167,7 @@
 		install -D -m0755 "${LIBRARY}" "${pkgdir}"/usr/lib/mysql-workbench/"${BASENAME}"
 		ln -s "${BASENAME}" "${pkgdir}"/usr/lib/mysql-workbench/"${SONAME}"
 	done
+	install -D -m0755 "${srcdir}/install-bundle/usr/lib/libantlr4-runtime.so.4.9.3" "${pkgdir}/usr/lib/mysql-workbench/libantlr4-runtime.so.4.9.3"
 
 	# install bundled mysql and mysqldump
 	install -m0755 "${srcdir}/install-bundle/usr/bin/mysql"{,dump} "${pkgdir}"/usr/lib/mysql-workbench/



More information about the arch-commits mailing list