summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2015-12-29 13:05:25 +0100
committerPacho Ramos <pacho@gentoo.org>2015-12-29 13:07:39 +0100
commit4905afbb4053aea415ce0c10f1f25f8b35f5fb2d (patch)
treecad3247c162f46fc49e48d82ef16bbdf6be86bbb /dev-db/mysql-workbench
parentmedia-sound/gnome-sound-recorder: Fix COMMON_DEPEND/RDEPEND/DEPEND usage (#56... (diff)
downloadgentoo-4905afbb4053aea415ce0c10f1f25f8b35f5fb2d.tar.gz
gentoo-4905afbb4053aea415ce0c10f1f25f8b35f5fb2d.tar.bz2
gentoo-4905afbb4053aea415ce0c10f1f25f8b35f5fb2d.zip
dev-db/mysql-workbench: Fix building with latest glibmm/libsigc++ (#566668)
Package-Manager: portage-2.2.26
Diffstat (limited to 'dev-db/mysql-workbench')
-rw-r--r--dev-db/mysql-workbench/files/mysql-workbench-6.3.4-cxx11.patch39
-rw-r--r--dev-db/mysql-workbench/mysql-workbench-6.3.4-r1.ebuild108
2 files changed, 147 insertions, 0 deletions
diff --git a/dev-db/mysql-workbench/files/mysql-workbench-6.3.4-cxx11.patch b/dev-db/mysql-workbench/files/mysql-workbench-6.3.4-cxx11.patch
new file mode 100644
index 000000000000..e8ed54a8c705
--- /dev/null
+++ b/dev-db/mysql-workbench/files/mysql-workbench-6.3.4-cxx11.patch
@@ -0,0 +1,39 @@
+Last-Update: 2015-10-24
+Forwarded: not-needed
+Bug-Upstream: https://bugs.mysql.com/bug.php?id=78668
+From: Marcin Szalowicz
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Description: fix FTBFS
+ ~~~~
+ library/forms/view.cpp:515:32: error: cannot convert 'boost::signals2::signal<bool()>::result_type {aka boost::optional<bool>}' to 'bool' in return
+ return _signal_mouse_leave();
+ ^
+ library/forms/CMakeFiles/mforms.dir/build.make:1865: recipe for target 'library/forms/CMakeFiles/mforms.dir/view.cpp.o' failed
+ ~~~~
+
+--- a/library/forms/swig/mforms.i
++++ b/library/forms/swig/mforms.i
+@@ -532,9 +532,9 @@
+ void add_##method(PyObject *callback) { signal->connect(pycall_void_toolbaritem_fun(callback)); }
+
+ #define SWIG_ADD_SIGNAL_BOOL_INT_CALLBACK(method, signal)\
+ void add_##method(PyObject *callback) { signal->connect(pycall_bool_int_fun(callback)); }\
+- bool call_##method(int i) { return (*signal)(i); }
++ bool call_##method(int i) { return *( (*signal)(i) ); }
+
+ #define SWIG_ADD_SIGNAL_VOID_ENTRYACTION_CALLBACK(method, signal)\
+ void add_##method(PyObject *callback) { signal->connect(pycall_void_entryaction_fun(callback)); }
+
+--- a/library/forms/view.cpp
++++ b/library/forms/view.cpp
+@@ -511,9 +511,9 @@
+
+ bool View::mouse_leave()
+ {
+ if (_signal_mouse_leave.num_slots() > 0)
+- return _signal_mouse_leave();
++ return *_signal_mouse_leave();
+ return false;
+ }
+
+ //--------------------------------------------------------------------------------------------------
diff --git a/dev-db/mysql-workbench/mysql-workbench-6.3.4-r1.ebuild b/dev-db/mysql-workbench/mysql-workbench-6.3.4-r1.ebuild
new file mode 100644
index 000000000000..0f9e0cc6052e
--- /dev/null
+++ b/dev-db/mysql-workbench/mysql-workbench-6.3.4-r1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+GCONF_DEBUG="no"
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite"
+
+CMAKE_MIN_VERSION="2.8.11.1"
+
+inherit gnome2 eutils flag-o-matic python-single-r1 cmake-utils
+
+MY_P="${PN}-community-${PV}-src"
+
+DESCRIPTION="MySQL Workbench"
+HOMEPAGE="http://dev.mysql.com/workbench/"
+SRC_URI="mirror://mysql/Downloads/MySQLGUITools/${MY_P}.tar.gz https://github.com/antlr/website-antlr3/blob/gh-pages/download/antlr-3.4-complete.jar?raw=true -> antlr-3.4-complete.jar"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug doc gnome-keyring"
+
+# glibc: deprecated mutex functions, removed in 2.36.0
+CDEPEND="${PYTHON_DEPS}
+ dev-libs/glib:2
+ dev-cpp/atkmm
+ dev-cpp/pangomm
+ >=dev-cpp/glibmm-2.14:2
+ >=dev-cpp/gtkmm-2.14:2.4
+ dev-libs/atk
+ x11-libs/pango
+ >=x11-libs/gtk+-2.20:2
+ gnome-base/libglade:2.0
+ >=x11-libs/cairo-1.5.12[glib,svg]
+ 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
+ >=virtual/mysql-5.1
+ dev-libs/libpcre
+ >=sci-libs/gdal-1.11.1-r1[-mdb]
+ virtual/opengl
+ >=dev-lang/lua-5.1[deprecated]
+ || ( sys-libs/e2fsprogs-libs dev-libs/ossp-uuid )
+ dev-libs/tinyxml[stl]
+ dev-db/mysql-connector-c++
+ dev-db/vsqlite++
+ || ( dev-db/libiodbc dev-db/unixODBC )
+ gnome-keyring? ( gnome-base/libgnome-keyring )
+ dev-python/pexpect
+ >=dev-python/paramiko-1.7.4
+ "
+
+# lua perhaps no longer needed? Was used via libgrt only
+
+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}"
+
+src_unpack() {
+ unpack ${PN}-community-${PV}-src.tar.gz
+}
+
+src_prepare() {
+ ## Patch CMakeLists.txt
+ epatch "${FILESDIR}/${PN}-6.2.3-CMakeLists.patch" \
+ "${FILESDIR}/${PN}-6.2.5-wbcopytables.patch" \
+ "${FILESDIR}/${PN}-6.3.3-mysql_options4.patch" \
+ "${FILESDIR}/${PN}-6.3.4-cxx11.patch"
+
+ sed -i -e '/target_link_libraries/ s/sqlparser.grt/sqlparser.grt sqlparser/' \
+ modules/db.mysql.sqlparser/CMakeLists.txt
+
+ ## remove hardcoded CXXFLAGS
+ sed -i -e 's/-O0 -g3//' ext/scintilla/gtk/CMakeLists.txt || die
+
+ ## package is very fragile...
+ strip-flags
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ append-cxxflags -std=c++11
+ local mycmakeargs=(
+ $(cmake-utils_use_use gnome-keyring GNOME_KEYRING)
+ -DLIB_INSTALL_DIR="/usr/$(get_libdir)"
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ )
+ ANTLR_JAR_PATH="${DISTDIR}/antlr-3.4-complete.jar" cmake-utils_src_configure
+}
+
+src_compile() {
+ # Work around parallel build issues, bug 507838
+ cmake-utils_src_compile -j1
+}