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 <[email protected]>
 
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/

Reply via email to