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@tsoy.me>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Alexander Tsoy
2019-04-15 23:55:15 +03:00
committed by Michał Górny
parent c61e3580ee
commit 8875451f5a
2 changed files with 156 additions and 0 deletions

View File

@@ -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
}

View File

@@ -0,0 +1,50 @@
From 110a056fa4bcfc0fe8c1f8eadcc2bd5df0bbf5e1 Mon Sep 17 00:00:00 2001
From: xinhuang <xinhuang.abc@gmail.com>
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