summaryrefslogtreecommitdiff
path: root/dev-db
diff options
context:
space:
mode:
Diffstat (limited to 'dev-db')
-rw-r--r--dev-db/mysql-workbench/Manifest2
-rw-r--r--dev-db/mysql-workbench/files/mysql-workbench-6.2.5-wbcopytables.patch12
-rw-r--r--dev-db/mysql-workbench/files/mysql-workbench-8.0.19-mysql-connector-8.patch12
-rw-r--r--dev-db/mysql-workbench/files/mysql-workbench-8.0.23-findlibssh.patch11
-rw-r--r--dev-db/mysql-workbench/metadata.xml10
-rw-r--r--dev-db/mysql-workbench/mysql-workbench-8.0.23.ebuild112
6 files changed, 159 insertions, 0 deletions
diff --git a/dev-db/mysql-workbench/Manifest b/dev-db/mysql-workbench/Manifest
new file mode 100644
index 000000000000..d96880fdbf1f
--- /dev/null
+++ b/dev-db/mysql-workbench/Manifest
@@ -0,0 +1,2 @@
+DIST antlr-4.7.1-complete.jar 2240116 BLAKE2B 3acf99b3701b2092cad2fb6e91f27791cbedd82f26888d7329e481be29fce4ec644eb57f663e515b92dea46c24222d4fb090aae5cae30c57c412a38932ea72ed SHA512 de1c230d7294e05ac7b451cbc639bab9d416a674b281e21092fb4a9329ca8b6d4b92b9ad78a9771cff475a1610f1d0419819c4619bdff36c683019da67ef13b1
+DIST mysql-workbench-community-8.0.23-src.tar.gz 20719770 BLAKE2B 4e1e44428a9e8a00c23f8f9f6e1519f8d13c205fac110168da67fb462d2a13204d41f1d0e109a3dde8ad2dbd3de31fee09ae4ccea97f9de04d0bc4fb2fad180e SHA512 f50d71bd196d5e5446cd14a228e52c4e74506cc2dd95d1601cc5e99b00db0d82dbcb28fd2ed404ee77ca63c6854d47c46773938e09ab601c10009c0ca99e4d54
diff --git a/dev-db/mysql-workbench/files/mysql-workbench-6.2.5-wbcopytables.patch b/dev-db/mysql-workbench/files/mysql-workbench-6.2.5-wbcopytables.patch
new file mode 100644
index 000000000000..2d3d8db243f8
--- /dev/null
+++ b/dev-db/mysql-workbench/files/mysql-workbench-6.2.5-wbcopytables.patch
@@ -0,0 +1,12 @@
+--- a/plugins/migration/CMakeLists.txt.~1~ 2015-02-25 09:08:47.000000000 +0100
++++ b/plugins/migration/CMakeLists.txt 2015-03-07 07:28:56.745378152 +0100
+@@ -10,7 +10,8 @@
+ if (UNIX)
+ configure_file(wbcopytables.in wbcopytables)
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/wbcopytables DESTINATION ${WB_INSTALL_BIN_DIR})
+-
++
++ SET(CMAKE_INSTALL_RPATH "${WB_INSTALL_LIB_DIR}")
+ add_executable(wbcopytables-bin
+ copytable/copytable.cpp
+ copytable/python_copy_data_source.cpp
diff --git a/dev-db/mysql-workbench/files/mysql-workbench-8.0.19-mysql-connector-8.patch b/dev-db/mysql-workbench/files/mysql-workbench-8.0.19-mysql-connector-8.patch
new file mode 100644
index 000000000000..c624dea0e56d
--- /dev/null
+++ b/dev-db/mysql-workbench/files/mysql-workbench-8.0.19-mysql-connector-8.patch
@@ -0,0 +1,12 @@
+diff -Naru a/build/cmake/Modules/FindMySQLCppConn.cmake b/build/cmake/Modules/FindMySQLCppConn.cmake
+--- a/build/cmake/Modules/FindMySQLCppConn.cmake 2019-12-18 13:31:34.520496484 +0100
++++ b/build/cmake/Modules/FindMySQLCppConn.cmake 2019-12-18 13:32:32.590496631 +0100
+@@ -27,7 +27,7 @@
+ set(MySQLCppConn_FIND_QUIETLY TRUE)
+ endif ()
+
+-find_path(MySQLCppConn_INCLUDE_DIR NAMES mysql_connection.h PATHS /usr/include /usr/local/include)
++find_path(MySQLCppConn_INCLUDE_DIR NAMES mysql_connection.h PATHS /usr/include /usr/include/jdbc /usr/local/include /usr/local/include/jdbc)
+
+ SET(MySQLCppConn_NAMES mysqlcppconn)
+
diff --git a/dev-db/mysql-workbench/files/mysql-workbench-8.0.23-findlibssh.patch b/dev-db/mysql-workbench/files/mysql-workbench-8.0.23-findlibssh.patch
new file mode 100644
index 000000000000..3f250d78140f
--- /dev/null
+++ b/dev-db/mysql-workbench/files/mysql-workbench-8.0.23-findlibssh.patch
@@ -0,0 +1,11 @@
+--- a/build/cmake/Modules/FindLibSSH.cmake.~1~ 2020-12-17 06:22:25.000000000 +0100
++++ b/build/cmake/Modules/FindLibSSH.cmake 2021-02-21 10:38:52.773491295 +0100
+@@ -51,7 +51,7 @@
+ find_library(LibSSH_LIBRARY NAMES ${LibSSH_NAMES})
+ endif()
+
+-set(LibSSH_HEADER_FILE ${LibSSH_INCLUDE_DIR}/libssh/libssh.h)
++set(LibSSH_HEADER_FILE ${LibSSH_INCLUDE_DIR}/libssh/libssh_version.h)
+ file(STRINGS ${LibSSH_HEADER_FILE} LibSSH_VERSION_LINE_MAJOR REGEX "#define LIBSSH_VERSION_MAJOR[ ]+[0-9]+")
+ if (LibSSH_VERSION_LINE_MAJOR)
+ file(STRINGS ${LibSSH_HEADER_FILE} LibSSH_VERSION_LINE_MINOR REGEX "#define LIBSSH_VERSION_MINOR[ ]+[0-9]+")
diff --git a/dev-db/mysql-workbench/metadata.xml b/dev-db/mysql-workbench/metadata.xml
new file mode 100644
index 000000000000..64e908505cd8
--- /dev/null
+++ b/dev-db/mysql-workbench/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>graaff@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">antlr/website-antlr3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-db/mysql-workbench/mysql-workbench-8.0.23.ebuild b/dev-db/mysql-workbench/mysql-workbench-8.0.23.ebuild
new file mode 100644
index 000000000000..864c6587d674
--- /dev/null
+++ b/dev-db/mysql-workbench/mysql-workbench-8.0.23.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+GCONF_DEBUG="no"
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_REQ_USE="sqlite"
+
+ANTLR_VERSION=4.7.1
+
+inherit gnome2 flag-o-matic python-single-r1 cmake
+
+MY_P="${PN}-community-${PV}-src"
+
+DESCRIPTION="MySQL Workbench"
+HOMEPAGE="https://www.mysql.com/products/workbench/"
+SRC_URI="https://cdn.mysql.com/Downloads/MySQLGUITools/${MY_P}.tar.gz
+ https://www.antlr.org/download/antlr-${ANTLR_VERSION}-complete.jar"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug doc"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# glibc: deprecated mutex functions, removed in 2.36.0
+CDEPEND="${PYTHON_DEPS}
+ app-crypt/libsecret
+ dev-libs/glib:2
+ dev-cpp/antlr-cpp:4
+ dev-cpp/atkmm:*
+ dev-cpp/pangomm
+ >=dev-cpp/glibmm-2.14:2
+ dev-cpp/gtkmm:3.0
+ dev-libs/atk
+ >=net-libs/libssh-0.8.5[server]
+ x11-libs/pango
+ x11-libs/gtk+:3
+ gnome-base/libglade:2.0
+ >=x11-libs/cairo-1.5.12[glib,svg]
+ >=dev-libs/rapidjson-1.1.0
+ dev-libs/libsigc++:2
+ >=dev-libs/boost-1.55.0[nls]
+ >=dev-cpp/ctemplate-0.95
+ >=dev-libs/libxml2-2.6.2:2
+ dev-libs/libzip
+ dev-libs/libpcre[cxx]
+ >=sci-libs/gdal-1.11.1-r1
+ virtual/opengl
+ || ( sys-libs/e2fsprogs-libs dev-libs/ossp-uuid )
+ dev-libs/tinyxml[stl]
+ >=dev-db/mysql-connector-c++-1.1.8 =dev-db/mysql-connector-c++-1*
+ dev-db/vsqlite++
+ || ( dev-db/libiodbc dev-db/unixODBC )
+ dev-python/pexpect
+ >=dev-python/paramiko-1.7.4
+"
+
+RDEPEND="${CDEPEND}
+ app-admin/sudo
+ >=sys-apps/net-tools-1.60_p20120127084908"
+
+DEPEND="${CDEPEND}
+ dev-lang/swig
+ virtual/jre
+ virtual/pkgconfig"
+
+S="${WORKDIR}"/"${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-6.2.5-wbcopytables.patch"
+ "${FILESDIR}/${PN}-8.0.19-mysql-connector-8.patch"
+ "${FILESDIR}/${PN}-8.0.23-findlibssh.patch"
+)
+
+src_unpack() {
+ unpack ${PN}-community-${PV}-src.tar.gz
+}
+
+src_prepare() {
+ ## remove hardcoded CXXFLAGS
+ sed -i -e 's/-O0 -g3//' ext/scintilla/gtk/CMakeLists.txt || die
+ ## And avoid -Werror
+ sed -i -e 's/-Werror//' CMakeLists.txt || die
+ ## Fix doc install directory
+ sed -i -e "/WB_INSTALL_DOC_DIR/ s/mysql-workbench/${P}/" CMakeLists.txt || die
+
+ ## package is very fragile...
+ strip-flags
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ if has_version dev-db/libiodbc ; then
+ IODBC="-DIODBC_CONFIG_PATH=/usr/bin/iodbc-config"
+ fi
+
+ append-cxxflags -std=c++11
+ ANTLR_JAR_PATH="${DISTDIR}/antlr-${ANTLR_VERSION}-complete.jar"
+ local mycmakeargs=(
+ -DWITH_ANTLR_JAR=${ANTLR_JAR_PATH}
+ -DLIB_INSTALL_DIR="/usr/$(get_libdir)"
+ -DIODBC_INCLUDE_PATH="/usr/include/iodbc"
+ ${IODBC}
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ -DMySQL_CONFIG_PATH="/usr/bin/mysql_config"
+ )
+ cmake_src_configure
+}