x11-misc/easystroke: Fix building with latest glibmm/libsigc++ with ArchLinux patch...
authorPacho Ramos <pacho@gentoo.org>
Thu, 31 Dec 2015 11:33:40 +0000 (12:33 +0100)
committerPacho Ramos <pacho@gentoo.org>
Thu, 31 Dec 2015 11:33:50 +0000 (12:33 +0100)
Package-Manager: portage-2.2.26

x11-misc/easystroke/easystroke-0.6.0-r2.ebuild [new file with mode: 0644]
x11-misc/easystroke/files/easystroke-0.6.0-cxx11.patch [new file with mode: 0644]

diff --git a/x11-misc/easystroke/easystroke-0.6.0-r2.ebuild b/x11-misc/easystroke/easystroke-0.6.0-r2.ebuild
new file mode 100644 (file)
index 0000000..ef52536
--- /dev/null
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="a gesture-recognition application for X11"
+HOMEPAGE="http://sourceforge.net/apps/trac/easystroke/"
+SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+       dev-cpp/gtkmm:3.0
+       dev-libs/boost
+       dev-libs/dbus-glib
+       dev-libs/glib:2
+       x11-base/xorg-server
+       x11-libs/libX11
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXi
+       x11-libs/libXtst
+"
+DEPEND="
+       ${RDEPEND}
+       dev-util/intltool
+       sys-devel/gettext
+"
+
+src_prepare() {
+       epatch "${FILESDIR}"/${P}-cellrendertextish.patch
+       epatch "${FILESDIR}"/${P}-desktop.patch
+       epatch "${FILESDIR}"/${P}-gentoo.patch
+       epatch "${FILESDIR}"/${P}-reinstate-signal-handlers.patch
+       epatch "${FILESDIR}"/${P}-buttons-scroll-send.patch
+       epatch "${FILESDIR}"/${P}-cxx11.patch
+
+       tc-export CC CXX PKG_CONFIG
+
+       if ! [[ -z ${LINGUAS} ]]; then
+               strip-linguas -i po/
+
+               local es_lingua lang
+               for es_lingua in $( printf "%s\n" po/*.po ); do
+                       lang=${es_lingua/po\/}
+                       has ${lang/.po/} ${LINGUAS} || rm ${es_lingua}
+               done
+       fi
+}
+
+src_compile() {
+       append-cxxflags -std=c++11
+       emake \
+               AOFLAGS='' \
+               LDFLAGS="${LDFLAGS}" \
+               PREFIX=/usr
+}
+
+src_install() {
+       emake DESTDIR="${D}" PREFIX=/usr install
+}
diff --git a/x11-misc/easystroke/files/easystroke-0.6.0-cxx11.patch b/x11-misc/easystroke/files/easystroke-0.6.0-cxx11.patch
new file mode 100644 (file)
index 0000000..b628d1b
--- /dev/null
@@ -0,0 +1,18 @@
+diff -uprb easystroke-0.6.0.orig/actions.cc easystroke-0.6.0/actions.cc
+--- easystroke-0.6.0.orig/actions.cc   2013-03-27 17:52:38.000000000 +0200
++++ easystroke-0.6.0/actions.cc        2015-12-07 22:07:17.720041171 +0200
+@@ -51,10 +51,11 @@ void TreeViewMulti::on_drag_begin(const
+       context->set_icon(pb, pb->get_width(), pb->get_height());
+ }
+ 
+-bool negate(bool b) { return !b; }
+-
+ TreeViewMulti::TreeViewMulti() : Gtk::TreeView(), pending(false) {
+-      get_selection()->set_select_function(sigc::group(&negate, sigc::ref(pending)));
++      get_selection()->set_select_function(
++              [this](Glib::RefPtr<Gtk::TreeModel> const&, Gtk::TreeModel::Path const&, bool) {
++                      return !pending;
++              });
+ }
+ 
+ enum Type { COMMAND, KEY, TEXT, SCROLL, IGNORE, BUTTON, MISC };