commit: 8875451f5ad348eccdf92ea47136b791be2bb599
Author: Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Mon Apr 15 20:55:15 2019 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Apr 22 07:26:32 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8875451f
net-p2p/amule: revbump for wxGTK:3.0-gtk3
Add upstream patch fixing crashes with wxGTK:3.0-gtk3.
Also fix configure logic.
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
net-p2p/amule/amule-2.3.2-r3.ebuild | 106 +++++++++++++++++++++
...2.3.2-fix-crash-when-shared-files-changed.patch | 50 ++++++++++
2 files changed, 156 insertions(+)
diff --git a/net-p2p/amule/amule-2.3.2-r3.ebuild
b/net-p2p/amule/amule-2.3.2-r3.ebuild
new file mode 100644
index 00000000000..7a7035ef43e
--- /dev/null
+++ b/net-p2p/amule/amule-2.3.2-r3.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+WX_GTK_VER="3.0-gtk3"
+
+inherit wxwidgets user
+
+MY_P="${PN/m/M}-${PV}"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="aMule, the all-platform eMule p2p client"
+HOMEPAGE="http://www.amule.org/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+IUSE="daemon debug geoip nls remote stats upnp +X"
+
+COMMON_DEPEND="
+ dev-libs/boost:=
+ dev-libs/crypto++:=
+ sys-libs/binutils-libs:0=
+ sys-libs/zlib
+ >=x11-libs/wxGTK-3.0.4:${WX_GTK_VER}[X?]
+ stats? ( media-libs/gd:=[jpeg,png] )
+ geoip? ( dev-libs/geoip )
+ upnp? ( net-libs/libupnp:* )
+ remote? ( media-libs/libpng:0= )
+ !net-p2p/imule"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.3.2-fix-crash-shared-dir-utf8.patch"
+ "${FILESDIR}/${PN}-2.3.2-fix-crash-closing-last-search-tab-1.patch"
+ "${FILESDIR}/${PN}-2.3.2-fix-crash-closing-last-search-tab-2.patch"
+ "${FILESDIR}/${PN}-2.3.2-cryptopp-6.patch"
+ "${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
+ "${FILESDIR}/${PN}-2.3.2-fix-crash-when-shared-files-changed.patch"
+)
+
+pkg_setup() {
+ if use stats && ! use X; then
+ einfo "Note: You would need both the X and stats USE flags"
+ einfo "to compile aMule Statistics GUI."
+ einfo "I will now compile console versions only."
+ fi
+
+ setup-wxwidgets
+}
+
+pkg_preinst() {
+ if use daemon || use remote; then
+ enewgroup p2p
+ enewuser p2p -1 -1 /home/p2p p2p
+ fi
+}
+
+src_configure() {
+ local myconf
+
+ if use X; then
+ myconf="
+ $(use_enable remote amule-gui)
+ $(use_enable stats alc)
+ $(use_enable stats wxcas)
+ "
+ else
+ myconf="
+ --disable-monolithic
+ --disable-amule-gui
+ --disable-alc
+ --disable-wxcas
+ "
+ fi
+
+ econf \
+ --with-denoise-level=0 \
+ --with-wx-config="${WX_CONFIG}" \
+ --enable-amulecmd \
+ --with-boost \
+ $(use_enable debug) \
+ $(use_enable daemon amule-daemon) \
+ $(use_enable geoip) \
+ $(use_enable nls) \
+ $(use_enable remote webserver) \
+ $(use_enable stats cas) \
+ $(use_enable stats alcc) \
+ $(use_enable upnp) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ if use daemon; then
+ newconfd "${FILESDIR}"/amuled.confd amuled
+ newinitd "${FILESDIR}"/amuled.initd amuled
+ fi
+ if use remote; then
+ newconfd "${FILESDIR}"/amuleweb.confd amuleweb
+ newinitd "${FILESDIR}"/amuleweb.initd amuleweb
+ fi
+}
diff --git
a/net-p2p/amule/files/amule-2.3.2-fix-crash-when-shared-files-changed.patch
b/net-p2p/amule/files/amule-2.3.2-fix-crash-when-shared-files-changed.patch
new file mode 100644
index 00000000000..81e0ef7b629
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-fix-crash-when-shared-files-changed.patch
@@ -0,0 +1,50 @@
+From 110a056fa4bcfc0fe8c1f8eadcc2bd5df0bbf5e1 Mon Sep 17 00:00:00 2001
+From: xinhuang <[email protected]>
+Date: Thu, 4 Jan 2018 00:44:35 -0800
+Subject: [PATCH] fix crash when shared files changed on Shared files tab
+
+---
+ src/extern/wxWidgets/listctrl.cpp | 10 ----------
+ src/extern/wxWidgets/listctrl.h | 5 -----
+ 2 files changed, 15 deletions(-)
+
+diff --git a/src/extern/wxWidgets/listctrl.cpp
b/src/extern/wxWidgets/listctrl.cpp
+index 18a30f205..460700691 100644
+--- a/src/extern/wxWidgets/listctrl.cpp
++++ b/src/extern/wxWidgets/listctrl.cpp
+@@ -5803,16 +5803,6 @@ bool wxGenericListCtrl::DoPopupMenu( wxMenu *menu, int
x, int y )
+ #endif
+ }
+
+-void wxGenericListCtrl::DoClientToScreen( int *x, int *y ) const
+-{
+- m_mainWin->DoClientToScreen(x, y);
+-}
+-
+-void wxGenericListCtrl::DoScreenToClient( int *x, int *y ) const
+-{
+- m_mainWin->DoScreenToClient(x, y);
+-}
+-
+ void wxGenericListCtrl::SetFocus()
+ {
+ // The test in window.cpp fails as we are a composite
+diff --git a/src/extern/wxWidgets/listctrl.h b/src/extern/wxWidgets/listctrl.h
+index b18a61866..e72f7eaf0 100644
+--- a/src/extern/wxWidgets/listctrl.h
++++ b/src/extern/wxWidgets/listctrl.h
+@@ -232,11 +232,6 @@ public:
+ protected:
+ virtual bool DoPopupMenu( wxMenu *menu, int x, int y );
+
+- // take into account the coordinates difference between the container
+- // window and the list control window itself here
+- virtual void DoClientToScreen( int *x, int *y ) const;
+- virtual void DoScreenToClient( int *x, int *y ) const;
+-
+ virtual wxSize DoGetBestSize() const;
+
+ // return the text for the given column of the given item
+--
+2.21.0
+