public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2018-06-22 22:17 Patrice Clement
  0 siblings, 0 replies; 7+ messages in thread
From: Patrice Clement @ 2018-06-22 22:17 UTC (permalink / raw
  To: gentoo-commits

commit:     4bff3c8a678a63e0d5aba5a090ec700ced8f40d4
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Mon Jun 18 18:18:19 2018 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Fri Jun 22 22:17:16 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4bff3c8a

net-p2p/amule: various fixes

Add/remove patches:
- Removed fallocate patch. Not needed according to debian maintainers.
- Fix crash if a shared dir contains UTF-8 chars.
- Fix crash on closing last search tab.
- Compatibility with crypto++ 6.0.0.
- Disable check for updates by default.

Closes: https://bugs.gentoo.org/654692

 net-p2p/amule/amule-2.3.2-r2.ebuild                |   8 +-
 net-p2p/amule/files/amule-2.3.2-cryptopp-6.patch   |  25 ++++
 .../files/amule-2.3.2-disable-version-check.patch  |  12 ++
 ...2.3.2-fix-crash-closing-last-search-tab-1.patch |  97 +++++++++++++
 ...2.3.2-fix-crash-closing-last-search-tab-2.patch | 159 +++++++++++++++++++++
 .../amule-2.3.2-fix-crash-shared-dir-utf8.patch    |  78 ++++++++++
 6 files changed, 378 insertions(+), 1 deletion(-)

diff --git a/net-p2p/amule/amule-2.3.2-r2.ebuild b/net-p2p/amule/amule-2.3.2-r2.ebuild
index e219e45a08b..30ed14b5a33 100644
--- a/net-p2p/amule/amule-2.3.2-r2.ebuild
+++ b/net-p2p/amule/amule-2.3.2-r2.ebuild
@@ -33,7 +33,13 @@ COMMON_DEPEND="
 DEPEND="${COMMON_DEPEND}"
 RDEPEND="${COMMON_DEPEND}"
 
-PATCHES=( "${FILESDIR}/${PN}-2.2.6-fallocate.diff" )
+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"
+)
 
 pkg_setup() {
 	if use stats && ! use X; then

diff --git a/net-p2p/amule/files/amule-2.3.2-cryptopp-6.patch b/net-p2p/amule/files/amule-2.3.2-cryptopp-6.patch
new file mode 100644
index 00000000000..d2353447560
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-cryptopp-6.patch
@@ -0,0 +1,25 @@
+From 27c13f3e622b8a3eaaa05bb62b0149604bdcc9e8 Mon Sep 17 00:00:00 2001
+From: Tommy Jerry Mairo <tommy.mairo@gmail.com>
+Date: Wed, 21 Mar 2018 19:56:28 +0100
+Subject: [PATCH] Bugfix: API mismatch with crypto++ 6.0.0
+
+---
+ src/ClientCreditsList.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/ClientCreditsList.cpp b/src/ClientCreditsList.cpp
+index 3bea9fe2d..69e881fd8 100644
+--- a/src/ClientCreditsList.cpp
++++ b/src/ClientCreditsList.cpp
+@@ -312,7 +312,7 @@ void CClientCreditsList::InitalizeCrypting()
+ 		// calculate and store public key
+ 		CryptoPP::RSASSA_PKCS1v15_SHA_Verifier pubkey(*static_cast<CryptoPP::RSASSA_PKCS1v15_SHA_Signer *>(m_pSignkey));
+ 		CryptoPP::ArraySink asink(m_abyMyPublicKey, 80);
+-		pubkey.DEREncode(asink);
++		pubkey.GetMaterial().Save(asink);
+ 		m_nMyPublicKeyLen = asink.TotalPutLength();
+ 		asink.MessageEnd();
+ 	} catch (const CryptoPP::Exception& e) {
+-- 
+2.16.4
+

diff --git a/net-p2p/amule/files/amule-2.3.2-disable-version-check.patch b/net-p2p/amule/files/amule-2.3.2-disable-version-check.patch
new file mode 100644
index 00000000000..74a0203a993
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-disable-version-check.patch
@@ -0,0 +1,12 @@
+Disable NewVersionCheck by default
+--- a/src/Preferences.cpp
++++ b/src/Preferences.cpp
+@@ -1210,7 +1210,7 @@ void CPreferences::BuildItemList( const
+ 	/**
+ 	 * Version check
+ 	 **/
+-	 NewCfgItem(IDC_NEWVERSION,	(new Cfg_Bool( wxT("/eMule/NewVersionCheck"), s_NewVersionCheck, true )));
++	 NewCfgItem(IDC_NEWVERSION,	(new Cfg_Bool( wxT("/eMule/NewVersionCheck"), s_NewVersionCheck, false )));
+ 
+ 	 /**
+ 	  * Obfuscation

diff --git a/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-1.patch b/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-1.patch
new file mode 100644
index 00000000000..c480165eb98
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-1.patch
@@ -0,0 +1,97 @@
+From 0f0c5c220228aea81142c7c00f73414cdb1b507a Mon Sep 17 00:00:00 2001
+From: gaffa <gaffa@confuseacat.dk>
+Date: Wed, 12 Oct 2016 19:36:21 +0200
+Subject: [PATCH] A workaround for inconsistent behaviour in wxWidgets, where
+ the button release signal is falling through. Instead of calling DeletePage
+ directly an event is added to delete the page after the button release event
+ has been processed by all handlers.
+
+---
+ src/MuleNotebook.cpp | 17 ++++++++++++++++-
+ src/MuleNotebook.h   | 13 +++++++++++++
+ 2 files changed, 29 insertions(+), 1 deletion(-)
+
+diff --git a/src/MuleNotebook.cpp b/src/MuleNotebook.cpp
+index ff3ba294e..4ab23ce18 100644
+--- a/src/MuleNotebook.cpp
++++ b/src/MuleNotebook.cpp
+@@ -32,6 +32,7 @@
+ 
+ DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING)
+ DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_ALL_PAGES_CLOSED)
++DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE)
+ 
+ BEGIN_EVENT_TABLE(CMuleNotebook, wxNotebook)
+ 	EVT_RIGHT_DOWN(CMuleNotebook::OnRMButton)
+@@ -44,6 +45,7 @@ BEGIN_EVENT_TABLE(CMuleNotebook, wxNotebook)
+ 	EVT_LEFT_UP(CMuleNotebook::OnMouseButtonRelease)
+ 	EVT_MIDDLE_UP(CMuleNotebook::OnMouseButtonRelease)
+ 	EVT_MOTION(CMuleNotebook::OnMouseMotion)
++	EVT_MULENOTEBOOK_DELETE_PAGE(wxID_ANY, CMuleNotebook::OnDeletePage)
+ END_EVENT_TABLE()
+ 
+ CMuleNotebook::CMuleNotebook( wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name )
+@@ -60,6 +62,12 @@ CMuleNotebook::~CMuleNotebook()
+ 	DeleteAllPages();
+ }
+ 
++void CMuleNotebook::OnDeletePage(wxBookCtrlEvent& evt)
++{
++	int page = evt.GetSelection();
++	DeletePage(page);
++}
++
+ 
+ bool CMuleNotebook::DeletePage(int nPage)
+ {
+@@ -216,7 +224,14 @@ void CMuleNotebook::OnMouseButtonRelease(wxMouseEvent &event)
+ 	if ((tab != -1) &&  (((flags == wxNB_HITTEST_ONICON) && event.LeftUp()) ||
+ 			((flags == wxNB_HITTEST_ONLABEL) && event.MiddleUp()))) {
+ 		// User did click on a 'x' or middle click on the label
+-		DeletePage(tab);
++
++		/*	WORKAROUND: Instead of calling DeletePage, we need to wait for the
++		 *	mouse release signal to reach Gtk. Inconsistent with normal wxEvent
++		 *	behaviour the button release handler in wxWidgets don't evaluate
++		 *	the result of the signal handling. */
++		wxNotebookEvent evt( wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE, GetId(), tab );
++		evt.SetEventObject(this);
++		AddPendingEvent( evt );
+ 	} else {
+ 		// Is not a 'x'. Send this event up.
+ 		event.Skip();
+diff --git a/src/MuleNotebook.h b/src/MuleNotebook.h
+index dda097d07..ab2809d88 100644
+--- a/src/MuleNotebook.h
++++ b/src/MuleNotebook.h
+@@ -31,7 +31,16 @@
+ 
+ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING, -1)
+ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_ALL_PAGES_CLOSED, -1)
++DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE, -1)
+ 
++#define EVT_MULENOTEBOOK_DELETE_PAGE(id, fn)						\
++	DECLARE_EVENT_TABLE_ENTRY(							\
++		wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE,					\
++		id,									\
++		-1,									\
++		(wxObjectEventFunction)(wxEventFunction)(wxNotebookEventFunction) &fn,  \
++		NULL                                                                    \
++	),
+ #define EVT_MULENOTEBOOK_PAGE_CLOSING(id, fn)						\
+ 	DECLARE_EVENT_TABLE_ENTRY(							\
+ 		wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING,					\
+@@ -107,6 +116,10 @@ public:
+ 	 */
+ 	void SetPopupHandler( wxWindow* widget );
+ 
++private:
++	// Internal handler. Workaround for wxWidgets Tab-Crash bug.
++	void OnDeletePage(wxBookCtrlEvent& evt);
++
+ protected:
+ 	/**
+ 	 * Event handler for left or middle mouse button release (for closing pages)
+-- 
+2.16.4
+

diff --git a/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-2.patch b/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-2.patch
new file mode 100644
index 00000000000..e47970beb0c
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-fix-crash-closing-last-search-tab-2.patch
@@ -0,0 +1,159 @@
+From 4c94c2d9f3be8b9068966f15aebc29b8c9b706ab Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?D=C3=A9vai=20Tam=C3=A1s?= <gonosztopi@amule.org>
+Date: Mon, 17 Oct 2016 22:14:26 +0200
+Subject: [PATCH] Apply the workaround only if needed
+
+This way it'll be easy for us to remove the workaround once wxWidgets fixes
+the bug.
+---
+ docs/Changelog       |  4 ++++
+ src/MuleNotebook.cpp | 19 ++++++++++++++-----
+ src/MuleNotebook.h   |  8 ++++++++
+ 3 files changed, 26 insertions(+), 5 deletions(-)
+
+diff --git a/docs/Changelog b/docs/Changelog
+index 7dbff70b2..e9176dd51 100644
+--- a/docs/Changelog
++++ b/docs/Changelog
+@@ -2,6 +2,10 @@ Version 2.4.0 - The river knows.
+ ----------
+ 201?-??-??
+ 
++	gaffatape:
++		* Workaround for bug in wxWidgets causing aMule to crash on
++		  closing the last search tab
++
+ 	GonoszTopi:
+ 		* Fix restoring toolbar orientation on 'Cancel'
+ 
+diff --git a/src/MuleNotebook.cpp b/src/MuleNotebook.cpp
+index 4ab23ce18..5d3ad0453 100644
+--- a/src/MuleNotebook.cpp
++++ b/src/MuleNotebook.cpp
+@@ -32,7 +32,10 @@
+ 
+ DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING)
+ DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_ALL_PAGES_CLOSED)
++
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ DEFINE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE)
++#endif
+ 
+ BEGIN_EVENT_TABLE(CMuleNotebook, wxNotebook)
+ 	EVT_RIGHT_DOWN(CMuleNotebook::OnRMButton)
+@@ -45,9 +48,12 @@ BEGIN_EVENT_TABLE(CMuleNotebook, wxNotebook)
+ 	EVT_LEFT_UP(CMuleNotebook::OnMouseButtonRelease)
+ 	EVT_MIDDLE_UP(CMuleNotebook::OnMouseButtonRelease)
+ 	EVT_MOTION(CMuleNotebook::OnMouseMotion)
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ 	EVT_MULENOTEBOOK_DELETE_PAGE(wxID_ANY, CMuleNotebook::OnDeletePage)
++#endif
+ END_EVENT_TABLE()
+ 
++
+ CMuleNotebook::CMuleNotebook( wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name )
+ 	: wxNotebook(parent, id, pos, size, style, name)
+ {
+@@ -62,11 +68,14 @@ CMuleNotebook::~CMuleNotebook()
+ 	DeleteAllPages();
+ }
+ 
++
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ void CMuleNotebook::OnDeletePage(wxBookCtrlEvent& evt)
+ {
+ 	int page = evt.GetSelection();
+ 	DeletePage(page);
+ }
++#endif // MULE_NEEDS_DELETEPAGE_WORKAROUND
+ 
+ 
+ bool CMuleNotebook::DeletePage(int nPage)
+@@ -208,7 +217,6 @@ void CMuleNotebook::OnPopupCloseOthers(wxCommandEvent& WXUNUSED(evt))
+ 
+ void CMuleNotebook::OnMouseButtonRelease(wxMouseEvent &event)
+ {
+-
+ 	if (GetImageList() == NULL) {
+ 		// This Mulenotebook has no images on tabs, so nothing to do.
+ 		event.Skip();
+@@ -224,7 +232,7 @@ void CMuleNotebook::OnMouseButtonRelease(wxMouseEvent &event)
+ 	if ((tab != -1) &&  (((flags == wxNB_HITTEST_ONICON) && event.LeftUp()) ||
+ 			((flags == wxNB_HITTEST_ONLABEL) && event.MiddleUp()))) {
+ 		// User did click on a 'x' or middle click on the label
+-
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ 		/*	WORKAROUND: Instead of calling DeletePage, we need to wait for the
+ 		 *	mouse release signal to reach Gtk. Inconsistent with normal wxEvent
+ 		 *	behaviour the button release handler in wxWidgets don't evaluate
+@@ -232,16 +240,18 @@ void CMuleNotebook::OnMouseButtonRelease(wxMouseEvent &event)
+ 		wxNotebookEvent evt( wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE, GetId(), tab );
+ 		evt.SetEventObject(this);
+ 		AddPendingEvent( evt );
++#else
++		DeletePage(tab);
++#endif // MULE_NEEDS_DELETEPAGE_WORKAROUND
+ 	} else {
+ 		// Is not a 'x'. Send this event up.
+ 		event.Skip();
+ 	}
+-
+ }
+ 
++
+ void CMuleNotebook::OnMouseMotion(wxMouseEvent &event)
+ {
+-
+ 	if (GetImageList() == NULL) {
+ 		// This Mulenotebook has no images on tabs, so nothing to do.
+ 		event.Skip();
+@@ -263,7 +273,6 @@ void CMuleNotebook::OnMouseMotion(wxMouseEvent &event)
+ 		// Is not a 'x'. Send this event up.
+ 		event.Skip();
+ 	}
+-
+ }
+ 
+ // File_checked_for_headers
+diff --git a/src/MuleNotebook.h b/src/MuleNotebook.h
+index ab2809d88..14f61ee68 100644
+--- a/src/MuleNotebook.h
++++ b/src/MuleNotebook.h
+@@ -28,9 +28,13 @@
+ 
+ #include <wx/notebook.h>
+ 
++#define MULE_NEEDS_DELETEPAGE_WORKAROUND	wxCHECK_VERSION(3,0,2)
++
+ 
+ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING, -1)
+ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_ALL_PAGES_CLOSED, -1)
++
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE, -1)
+ 
+ #define EVT_MULENOTEBOOK_DELETE_PAGE(id, fn)						\
+@@ -41,6 +45,8 @@ DECLARE_LOCAL_EVENT_TYPE(wxEVT_COMMAND_MULENOTEBOOK_DELETE_PAGE, -1)
+ 		(wxObjectEventFunction)(wxEventFunction)(wxNotebookEventFunction) &fn,  \
+ 		NULL                                                                    \
+ 	),
++#endif // MULE_NEEDS_DELETEPAGE_WORKAROUND
++
+ #define EVT_MULENOTEBOOK_PAGE_CLOSING(id, fn)						\
+ 	DECLARE_EVENT_TABLE_ENTRY(							\
+ 		wxEVT_COMMAND_MULENOTEBOOK_PAGE_CLOSING,					\
+@@ -116,9 +122,11 @@ public:
+ 	 */
+ 	void SetPopupHandler( wxWindow* widget );
+ 
++#if MULE_NEEDS_DELETEPAGE_WORKAROUND
+ private:
+ 	// Internal handler. Workaround for wxWidgets Tab-Crash bug.
+ 	void OnDeletePage(wxBookCtrlEvent& evt);
++#endif // MULE_NEEDS_DELETEPAGE_WORKAROUND
+ 
+ protected:
+ 	/**
+-- 
+2.16.4
+

diff --git a/net-p2p/amule/files/amule-2.3.2-fix-crash-shared-dir-utf8.patch b/net-p2p/amule/files/amule-2.3.2-fix-crash-shared-dir-utf8.patch
new file mode 100644
index 00000000000..aa92ff6c81e
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-fix-crash-shared-dir-utf8.patch
@@ -0,0 +1,78 @@
+From 17816ed02f59bab9c27310e7f24c73266b0a3003 Mon Sep 17 00:00:00 2001
+From: persmule <persmule@gmail.com>
+Date: Wed, 5 Oct 2016 13:47:46 +0800
+Subject: [PATCH] Add a routine to set file name conversion for amuled which
+ based on wxAppConsole
+
+---
+ src/amule.h    |  7 +++++++
+ src/amuled.cpp | 35 +++++++++++++++++++++++++++++++++++
+ 2 files changed, 42 insertions(+)
+
+diff --git a/src/amule.h b/src/amule.h
+index f25702f60..240c02dd9 100644
+--- a/src/amule.h
++++ b/src/amule.h
+@@ -553,6 +553,13 @@ private:
+ 	int OnExit();
+ 
+ 	virtual int InitGui(bool geometry_enable, wxString &geometry_string);
++	// The GTK wxApps sets its file name conversion properly
++	// in wxApp::Initialize(), while wxAppConsole::Initialize()
++	// does not, leaving wxConvFile being set to wxConvLibc. File
++	// name conversion should be set otherwise amuled will abort to
++	// handle non-ASCII file names which monolithic amule can handle.
++	// This function are overrided to perform this.
++	virtual bool Initialize(int& argc_, wxChar **argv_);
+ 
+ #ifdef AMULED_APPTRAITS
+ 	struct sigaction m_oldSignalChildAction;
+diff --git a/src/amuled.cpp b/src/amuled.cpp
+index 486da5973..86e1ff8b8 100644
+--- a/src/amuled.cpp
++++ b/src/amuled.cpp
+@@ -704,6 +704,41 @@ int CamuleDaemonApp::InitGui(bool ,wxString &)
+ 	return 0;
+ }
+ 
++bool CamuleDaemonApp::Initialize(int& argc_, wxChar **argv_)
++{
++	if ( !wxAppConsole::Initialize(argc_, argv_) ) {
++		return false;
++	}
++
++#ifdef __UNIX__
++	wxString encName;
++#if wxUSE_INTL
++	// if a non default locale is set,
++	// assume that the user wants his
++        // filenames in this locale too
++        encName = wxLocale::GetSystemEncodingName().Upper();
++
++        // But don't consider ASCII in this case.
++	if ( !encName.empty() ) {
++		if ( encName == wxT("US-ASCII") ) {
++			// This means US-ASCII when returned
++			// from GetEncodingFromName().
++			encName.clear();
++		}
++        }
++#endif // wxUSE_INTL
++
++	// in this case, UTF-8 is used by default.
++        if ( encName.empty() ) {
++		encName = wxT("UTF-8");
++	}
++
++	static wxConvBrokenFileNames fileconv(encName);
++	wxConvFileName = &fileconv;
++#endif // __UNIX__
++
++	return true;
++}
+ 
+ int CamuleDaemonApp::OnExit()
+ {
+-- 
+2.16.4
+


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2024-07-13 11:06 Yixun Lan
  0 siblings, 0 replies; 7+ messages in thread
From: Yixun Lan @ 2024-07-13 11:06 UTC (permalink / raw
  To: gentoo-commits

commit:     6583c127f5e43111c651093417fbc5c5840f406d
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Sun Jun 30 09:19:43 2024 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Sat Jul 13 11:06:10 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6583c127

net-p2p/amule: use xdg-open instead of mplayer for media previews

Also call setup-wxwidgets() from src_configure()

Closes: https://bugs.gentoo.org/931622
Closes: https://bugs.gentoo.org/935481
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 .../amule/{amule-9999.ebuild => amule-2.3.3-r4.ebuild}  |  8 ++++----
 net-p2p/amule/amule-9999.ebuild                         |  7 +++----
 .../amule-2.3.3-use-xdg-open-as-preview-default.patch   | 17 +++++++++++++++++
 3 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-2.3.3-r4.ebuild
similarity index 96%
copy from net-p2p/amule/amule-9999.ebuild
copy to net-p2p/amule/amule-2.3.3-r4.ebuild
index 80d5beab4994..a1aa3c9c2ce6 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-2.3.3-r4.ebuild
@@ -52,14 +52,12 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
 	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
+	"${FILESDIR}/${P}-autoconf-2.70.patch"
 	"${FILESDIR}/${PN}-2.3.3-backport-pr368.patch"
 	"${FILESDIR}/${PN}-2.3.3-wx3.2.patch"
+	"${FILESDIR}/${PN}-2.3.3-use-xdg-open-as-preview-default.patch"
 )
 
-pkg_setup() {
-	setup-wxwidgets
-}
-
 src_prepare() {
 	default
 	rm m4/boost.m4 || die
@@ -72,6 +70,8 @@ src_prepare() {
 }
 
 src_configure() {
+	setup-wxwidgets
+
 	use debug || append-cppflags -DwxDEBUG_LEVEL=0
 	append-cxxflags -std=gnu++14
 

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-9999.ebuild
index 80d5beab4994..9673e620eb9c 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-9999.ebuild
@@ -54,12 +54,9 @@ PATCHES=(
 	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
 	"${FILESDIR}/${PN}-2.3.3-backport-pr368.patch"
 	"${FILESDIR}/${PN}-2.3.3-wx3.2.patch"
+	"${FILESDIR}/${PN}-2.3.3-use-xdg-open-as-preview-default.patch"
 )
 
-pkg_setup() {
-	setup-wxwidgets
-}
-
 src_prepare() {
 	default
 	rm m4/boost.m4 || die
@@ -72,6 +69,8 @@ src_prepare() {
 }
 
 src_configure() {
+	setup-wxwidgets
+
 	use debug || append-cppflags -DwxDEBUG_LEVEL=0
 	append-cxxflags -std=gnu++14
 

diff --git a/net-p2p/amule/files/amule-2.3.3-use-xdg-open-as-preview-default.patch b/net-p2p/amule/files/amule-2.3.3-use-xdg-open-as-preview-default.patch
new file mode 100644
index 000000000000..816f44f00dd0
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.3-use-xdg-open-as-preview-default.patch
@@ -0,0 +1,17 @@
+commit f54a851586ff3762e0426ea9265ffb3499f93ad5
+Author: Adeodato Simó <dato@net.com.org.es>
+Date:   Sun Mar 1 14:10:15 2009 +0100
+
+    src/DownloadListCtrl.cpp: use xdg-open as default instead of mplayer.
+
+--- a/src/DownloadListCtrl.cpp
++++ b/src/DownloadListCtrl.cpp
+@@ -1429,7 +1429,7 @@ void CDownloadListCtrl::PreviewFile(CPar
+ 			_("File preview"), wxOK, this);
+ 		// Since newer versions for some reason mplayer does not automatically
+ 		// select video output device and needs a parameter, go figure...
+-		command = wxT("xterm -T \"aMule Preview\" -iconic -e mplayer ") QUOTE wxT("$file") QUOTE;
++		command = wxT("xterm -T \"aMule Preview\" -iconic -e xdg-open ") QUOTE wxT("$file") QUOTE;
+ 	} else {
+ 		command = thePrefs::GetVideoPlayer();
+ 	}


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2023-12-22  6:46 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2023-12-22  6:46 UTC (permalink / raw
  To: gentoo-commits

commit:     a4a6f67841aa6aedf6cc17509c208783591f3731
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Mon Dec 18 02:36:00 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Dec 22 06:43:44 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4a6f678

net-p2p/amule: port to wxGTK 3.2

Apply Debian patch with fixes for wxWidgets 3.2 compatibility

Thanks-to: ernsteiswuerfel <erhard_f <AT> mailbox.org>
Closes: https://bugs.gentoo.org/915906
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{amule-9999.ebuild => amule-2.3.3-r3.ebuild}   |  12 +-
 net-p2p/amule/amule-9999.ebuild                    |  11 +-
 net-p2p/amule/files/amule-2.3.3-wx3.2.patch        | 461 +++++++++++++++++++++
 3 files changed, 474 insertions(+), 10 deletions(-)

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-2.3.3-r3.ebuild
similarity index 92%
copy from net-p2p/amule/amule-9999.ebuild
copy to net-p2p/amule/amule-2.3.3-r3.ebuild
index c1743eff2384..e982384b3612 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-2.3.3-r3.ebuild
@@ -2,18 +2,18 @@
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
-WX_GTK_VER="3.0-gtk3"
+WX_GTK_VER="3.2-gtk3"
 
-inherit flag-o-matic wxwidgets xdg-utils
+inherit autotools flag-o-matic wxwidgets xdg-utils
 
 if [[ ${PV} == 9999 ]] ; then
 	EGIT_REPO_URI="https://github.com/amule-project/amule"
-	inherit autotools git-r3
+	inherit git-r3
 else
 	MY_P="${PN/m/M}-${PV}"
 	SRC_URI="https://download.sourceforge.net/${PN}/${MY_P}.tar.xz"
 	S="${WORKDIR}/${MY_P}"
-	KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+	KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
 fi
 
 DESCRIPTION="aMule, the all-platform eMule p2p client"
@@ -29,7 +29,7 @@ RDEPEND="
 	sys-libs/binutils-libs:0=
 	sys-libs/readline:0=
 	sys-libs/zlib
-	>=x11-libs/wxGTK-3.0.4:${WX_GTK_VER}[X?]
+	x11-libs/wxGTK:${WX_GTK_VER}[X?]
 	daemon? ( acct-user/amule )
 	geoip? ( dev-libs/geoip )
 	nls? ( virtual/libintl )
@@ -52,7 +52,9 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
 	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
+	"${FILESDIR}/${P}-autoconf-2.70.patch"
 	"${FILESDIR}/${PN}-2.3.3-backport-pr368.patch"
+	"${FILESDIR}/${PN}-2.3.3-wx3.2.patch"
 )
 
 pkg_setup() {

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-9999.ebuild
index c1743eff2384..3a74fe6369d0 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-9999.ebuild
@@ -2,18 +2,18 @@
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
-WX_GTK_VER="3.0-gtk3"
+WX_GTK_VER="3.2-gtk3"
 
-inherit flag-o-matic wxwidgets xdg-utils
+inherit autotools flag-o-matic wxwidgets xdg-utils
 
 if [[ ${PV} == 9999 ]] ; then
 	EGIT_REPO_URI="https://github.com/amule-project/amule"
-	inherit autotools git-r3
+	inherit git-r3
 else
 	MY_P="${PN/m/M}-${PV}"
 	SRC_URI="https://download.sourceforge.net/${PN}/${MY_P}.tar.xz"
 	S="${WORKDIR}/${MY_P}"
-	KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+	KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
 fi
 
 DESCRIPTION="aMule, the all-platform eMule p2p client"
@@ -29,7 +29,7 @@ RDEPEND="
 	sys-libs/binutils-libs:0=
 	sys-libs/readline:0=
 	sys-libs/zlib
-	>=x11-libs/wxGTK-3.0.4:${WX_GTK_VER}[X?]
+	x11-libs/wxGTK:${WX_GTK_VER}[X?]
 	daemon? ( acct-user/amule )
 	geoip? ( dev-libs/geoip )
 	nls? ( virtual/libintl )
@@ -53,6 +53,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
 	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
 	"${FILESDIR}/${PN}-2.3.3-backport-pr368.patch"
+	"${FILESDIR}/${PN}-2.3.3-wx3.2.patch"
 )
 
 pkg_setup() {

diff --git a/net-p2p/amule/files/amule-2.3.3-wx3.2.patch b/net-p2p/amule/files/amule-2.3.3-wx3.2.patch
new file mode 100644
index 000000000000..58590c60f2df
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.3-wx3.2.patch
@@ -0,0 +1,461 @@
+Description: Fixes for wxWidgets 3.2 compatibility
+ Largely based on patch from Mr Hyde <mrhyde@MM2018.local> in
+ https://github.com/amule-project/amule/pull/168
+Author: Olly Betts <olly@survex.com>
+Bug: https://github.com/amule-project/amule/issues/340
+Bug-Debian: https://bugs.debian.org/1019841
+Forwarded: no
+Last-Update: 2023-01-09
+
+--- a/src/ColorFrameCtrl.cpp
++++ b/src/ColorFrameCtrl.cpp
+@@ -61,7 +61,7 @@
+ /////////////////////////////////////////////////////////////////////////////
+ void CColorFrameCtrl::SetFrameBrushColour(const wxColour& colour)
+ {
+-	m_brushFrame = *(wxTheBrushList->FindOrCreateBrush(colour, wxSOLID));
++	m_brushFrame = *(wxTheBrushList->FindOrCreateBrush(colour, wxBRUSHSTYLE_SOLID));
+ 
+ 	Refresh(FALSE);
+ }  // SetFrameColor
+@@ -70,7 +70,7 @@
+ /////////////////////////////////////////////////////////////////////////////
+ void CColorFrameCtrl::SetBackgroundBrushColour(const wxColour& colour)
+ {
+-	m_brushBack = *(wxTheBrushList->FindOrCreateBrush(colour, wxSOLID));
++	m_brushBack = *(wxTheBrushList->FindOrCreateBrush(colour, wxBRUSHSTYLE_SOLID));
+ 
+ 	// clear out the existing garbage, re-start with a clean plot
+ 	Refresh(FALSE);
+--- a/src/DownloadListCtrl.cpp
++++ b/src/DownloadListCtrl.cpp
+@@ -850,7 +850,7 @@
+ 		dc->SetTextForeground(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHTTEXT));
+ 		dc->SetPen( colour.Blend(65).GetPen() );
+ 	} else {
+-		dc->SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxSOLID)));
++		dc->SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxBRUSHSTYLE_SOLID)));
+ 		dc->SetTextForeground(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT));
+ 		dc->SetPen(*wxTRANSPARENT_PEN);
+ 	}
+@@ -1413,7 +1413,7 @@
+ 		dc->DrawLine( rect.x, rect.y + 2, rect.x + width, rect.y + 2 );
+ 
+ 		// Draw the green line
+-		dc->SetPen( *(wxThePenList->FindOrCreatePen( crProgress , 1, wxSOLID ) ));
++		dc->SetPen( *(wxThePenList->FindOrCreatePen( crProgress , 1, wxPENSTYLE_SOLID ) ));
+ 		dc->DrawLine( rect.x, rect.y + 1, rect.x + width, rect.y + 1 );
+ 	}
+ }
+--- a/src/GenericClientListCtrl.cpp
++++ b/src/GenericClientListCtrl.cpp
+@@ -660,7 +660,7 @@
+ 		dc->SetTextForeground(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHTTEXT));
+ 		dc->SetPen( colour.Blend(65).GetPen() );
+ 	} else {
+-		dc->SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxSOLID)));
++		dc->SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxBRUSHSTYLE_SOLID)));
+ 		dc->SetTextForeground(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT));
+ 		dc->SetPen(*wxTRANSPARENT_PEN);
+ 	}
+--- a/src/MuleColour.cpp
++++ b/src/MuleColour.cpp
+@@ -35,7 +35,7 @@
+ std::map<uint32_t, wxPen*> wxPenCache;
+ std::map<uint32_t, wxBrush*> wxBrushCache;
+ 
+-const wxPen& CMuleColour::GetPen(int width, int style) const
++const wxPen& CMuleColour::GetPen(int width, wxPenStyle style) const
+ {
+ #if USE_MULE_PEN_CACHE
+ 	wxPen* result = NULL;
+@@ -61,7 +61,7 @@
+ #endif
+ }
+ 
+-const wxBrush& CMuleColour::GetBrush(int style) const
++const wxBrush& CMuleColour::GetBrush(wxBrushStyle style) const
+ {
+ #if USE_MULE_BRUSH_CACHE
+ 	wxBrush* result = NULL;
+--- a/src/MuleColour.h
++++ b/src/MuleColour.h
+@@ -27,6 +27,9 @@
+ 
+ #include <wx/colour.h>
+ #include <wx/settings.h>
++#include <wx/pen.h>   // needed for wxPenStyle enum values
++#include <wx/brush.h> // needed for wxBrushStyle enum values
++#include <wx/font.h>  // needed for wxFontStyle enum values
+ #include "Types.h"
+ 
+ class wxPen;
+@@ -95,8 +98,8 @@
+ 		return wxColor(m_red, m_green, m_blue);
+ 	}
+ 
+-	const wxPen& GetPen(int width = 1, int style = wxSOLID) const;
+-	const wxBrush& GetBrush(int style = wxSOLID) const;
++	const wxPen& GetPen(int width = 1, wxPenStyle style = wxPENSTYLE_SOLID) const;
++	const wxBrush& GetBrush(wxBrushStyle style = wxBRUSHSTYLE_SOLID) const;
+ 
+ private:
+ 	uint8_t m_red;
+--- a/src/MuleGifCtrl.cpp
++++ b/src/MuleGifCtrl.cpp
+@@ -167,7 +167,7 @@
+ 	int x = (clientsize.GetWidth()-gifsize.GetWidth())/2;
+ 	int y = (clientsize.GetHeight()-gifsize.GetHeight())/2;
+ 
+-	dc.SetBackground(*(wxTheBrushList->FindOrCreateBrush(GetBackgroundColour(), wxSOLID)));
++	dc.SetBackground(*(wxTheBrushList->FindOrCreateBrush(GetBackgroundColour(), wxBRUSHSTYLE_SOLID)));
+ 	dc.Clear();
+ 	dc.DrawBitmap(m_frame, x, y, true);
+ }
+--- a/src/OScopeCtrl.cpp
++++ b/src/OScopeCtrl.cpp
+@@ -74,7 +74,7 @@
+ 	PlotData_t* ppds = pdsTrends;
+ 	for(unsigned i=0; i<nTrends; ++i, ++ppds){
+ 		ppds->crPlot = (i<15 ? crPreset[i] : *wxWHITE);
+-		ppds->penPlot=*(wxThePenList->FindOrCreatePen(ppds->crPlot, 1, wxSOLID));
++		ppds->penPlot=*(wxThePenList->FindOrCreatePen(ppds->crPlot, 1, wxPENSTYLE_SOLID));
+ 		ppds->fPrev = ppds->fLowerLimit = ppds->fUpperLimit = 0.0;
+ 	}
+ 
+@@ -166,7 +166,7 @@
+ 	if (ppds->crPlot == cr)
+ 		return;
+ 	ppds->crPlot = cr;
+-	ppds->penPlot=*(wxThePenList->FindOrCreatePen(ppds->crPlot, 1, wxSOLID));
++	ppds->penPlot=*(wxThePenList->FindOrCreatePen(ppds->crPlot, 1, wxPENSTYLE_SOLID));
+ 	InvalidateGraph();
+ }
+ 
+@@ -179,7 +179,7 @@
+ 	}
+ 
+ 	m_bgColour = cr;
+-	brushBack= *(wxTheBrushList->FindOrCreateBrush(cr, wxSOLID));
++	brushBack= *(wxTheBrushList->FindOrCreateBrush(cr, wxBRUSHSTYLE_SOLID));
+ 	InvalidateCtrl() ;
+ }
+ 
+@@ -196,7 +196,7 @@
+ 
+ 	wxMemoryDC dcGrid(m_bmapGrid);
+ 
+-	wxPen solidPen = *(wxThePenList->FindOrCreatePen(m_gridColour, 1, wxSOLID));
++	wxPen solidPen = *(wxThePenList->FindOrCreatePen(m_gridColour, 1, wxPENSTYLE_SOLID));
+ 	wxString strTemp;
+ 
+ 	// fill the grid background
+@@ -213,7 +213,7 @@
+ 	dcGrid.SetPen(wxNullPen);
+ 
+ 	// create some fonts (horizontal and vertical)
+-	wxFont axisFont(10, wxSWISS, wxNORMAL, wxNORMAL, false);
++	wxFont axisFont(10, wxFONTFAMILY_SWISS, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false);
+ 	dcGrid.SetFont(axisFont);
+ 
+ 	// y max
+@@ -320,7 +320,7 @@
+ 	// operation, preventing us from simply blitting the plot on top of
+ 	// the grid bitmap.
+ 
+-	dc.SetPen(*(wxThePenList->FindOrCreatePen(m_gridColour, 1, wxLONG_DASH)));
++	dc.SetPen(*(wxThePenList->FindOrCreatePen(m_gridColour, 1, wxPENSTYLE_LONG_DASH)));
+ 	for (unsigned j = 1; j < (nYGrids + 1); ++j) {
+ 		unsigned GridPos = (m_rectPlot.GetHeight())*j/( nYGrids + 1 ) + m_rectPlot.GetTop();
+ 
+--- a/src/SearchListCtrl.cpp
++++ b/src/SearchListCtrl.cpp
+@@ -826,7 +826,7 @@
+ 
+ 	// Define the border of the drawn area
+ 	if (highlighted) {
+-		dc->SetPen(*(wxThePenList->FindOrCreatePen(CMuleColour(dc->GetBackground().GetColour()).Blend(65), 1, wxSOLID)));
++		dc->SetPen(*(wxThePenList->FindOrCreatePen(CMuleColour(dc->GetBackground().GetColour()).Blend(65), 1, wxPENSTYLE_SOLID)));
+ 	} else {
+ 		dc->SetPen(*wxTRANSPARENT_PEN);
+ 		dc->SetTextForeground(GetItemTextColour(item));
+@@ -912,7 +912,7 @@
+ 		const int middle = cur_rec.y + ( cur_rec.height + 1 ) / 2;
+ 
+ 		// Set up a new pen for drawing the tree
+-		dc->SetPen( *(wxThePenList->FindOrCreatePen(dc->GetTextForeground(), 1, wxSOLID)) );
++		dc->SetPen( *(wxThePenList->FindOrCreatePen(dc->GetTextForeground(), 1, wxPENSTYLE_SOLID)) );
+ 
+ 		if (file->GetParent()) {
+ 			// Draw the line to the filename
+--- a/src/ServerListCtrl.cpp
++++ b/src/ServerListCtrl.cpp
+@@ -327,7 +327,7 @@
+ 			wxFont font = GetFont();
+ 
+ 			if ( highlight ) {
+-				font.SetWeight( wxBOLD );
++				font.SetWeight( wxFONTWEIGHT_BOLD );
+ 
+ 				m_connected = server;
+ 			}
+--- a/src/extern/wxWidgets/listctrl.cpp
++++ b/src/extern/wxWidgets/listctrl.cpp
+@@ -1453,7 +1453,7 @@
+         if ( highlighted )
+             dc->SetBrush( m_owner->GetHighlightBrush() );
+         else
+-            dc->SetBrush(*(wxTheBrushList->FindOrCreateBrush(attr->GetBackgroundColour(), wxSOLID)));
++            dc->SetBrush(*(wxTheBrushList->FindOrCreateBrush(attr->GetBackgroundColour(), wxBRUSHSTYLE_SOLID)));
+ 
+         dc->SetPen( *wxTRANSPARENT_PEN );
+ 
+@@ -2325,7 +2325,7 @@
+                             (
+                                 wxSYS_COLOUR_HIGHLIGHT
+                             ),
+-                            wxSOLID
++                            wxBRUSHSTYLE_SOLID
+                          ));
+ 
+     m_highlightUnfocusedBrush = *(wxTheBrushList->FindOrCreateBrush(
+@@ -2333,7 +2333,7 @@
+                                  (
+                                      wxSYS_COLOUR_BTNSHADOW
+                                  ),
+-                                 wxSOLID
++                                 wxBRUSHSTYLE_SOLID
+                               ));
+ 
+     SetScrollbars( 0, 0, 0, 0, 0, 0 );
+@@ -2734,7 +2734,7 @@
+ 
+     // Ensure an uniform background color, as to avoid differences between
+     // the automatically cleared parts and the rest of the canvas.
+-    dc.SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxSOLID)));
++    dc.SetBackground(*(wxTheBrushList->FindOrCreateBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX), wxBRUSHSTYLE_SOLID)));
+ 
+     // We need to clear the DC manually, since we intercept BG-erase events.
+     // Clearing must be done first thing because caching of the double-buffering causes artifacts otherwise.
+@@ -2805,7 +2805,7 @@
+ 
+         if ( HasFlag(wxLC_HRULES) )
+         {
+-            wxPen pen = *(wxThePenList->FindOrCreatePen(GetRuleColour(), 1, wxSOLID));
++            wxPen pen = *(wxThePenList->FindOrCreatePen(GetRuleColour(), 1, wxPENSTYLE_SOLID));
+             wxSize clientSize = GetClientSize();
+ 
+             size_t i = visibleFrom;
+@@ -2831,7 +2831,7 @@
+         // Draw vertical rules if required
+         if ( HasFlag(wxLC_VRULES) && !IsEmpty() )
+         {
+-            wxPen pen = *(wxThePenList->FindOrCreatePen(GetRuleColour(), 1, wxSOLID));
++            wxPen pen = *(wxThePenList->FindOrCreatePen(GetRuleColour(), 1, wxPENSTYLE_SOLID));
+             wxRect firstItemRect, lastItemRect;
+ 
+             GetItemRect(visibleFrom, firstItemRect);
+@@ -4859,12 +4859,15 @@
+ 
+ void wxListMainWindow::OnScroll(wxScrollWinEvent& event)
+ {
++      // wxScrolledWindows::OnScroll is deprecated in wx 3.0.0 and it does not exist anymore in 3.1.0.
++    // Please also notice that call to
++    // - wxScrolledWindow::OnScroll
++    // - HandleOnScroll
++    // have been removed in code present in
++    // src/generic/listctrl.cpp, wxListMainWindow::OnScroll
++    // of wxWidgets 3.0
+     // FIXME
+-#if ( defined(__WXGTK__) || defined(__WXMAC__) ) && !defined(__WXUNIVERSAL__)
+-    wxScrolledWindow::OnScroll(event);
+-#else
+     HandleOnScroll( event );
+-#endif
+ 
+     // update our idea of which lines are shown when we redraw the window the
+     // next time
+--- a/src/extern/wxWidgets/listctrl.h
++++ b/src/extern/wxWidgets/listctrl.h
+@@ -16,7 +16,6 @@
+ #include <wx/textctrl.h>
+ 
+ #define wxLC_OWNERDRAW 0x10000
+-#define WXWIN_COMPATIBILITY_2_8 1
+ 
+ #include <wx/imaglist.h>
+ 
+--- a/src/muuli_wdr.cpp
++++ b/src/muuli_wdr.cpp
+@@ -77,7 +77,7 @@
+ 
+     CMuleTextCtrl *item4 = new CMuleTextCtrl( parent, -1, wxT(""), wxDefaultPosition, wxSize(-1,20), wxTE_MULTILINE );
+     item4->SetName( wxT("FastEd2kLinks") );
+-    item2->Add( item4, 1, wxGROW|wxALIGN_CENTER_HORIZONTAL|wxALL, 0 );
++    item2->Add( item4, 1, wxALL|wxEXPAND, 5 );
+ 
+     wxButton *item5 = new wxButton( parent, ID_BUTTON_FAST, _("Commit"), wxDefaultPosition, wxDefaultSize, 0 );
+     item5->SetToolTip( _("Click here to add the eD2k link in the text control to your download queue.") );
+@@ -474,7 +474,7 @@
+     item0->Add( item1, 0, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
+ 
+     CSourceListCtrl *item6 = new CSourceListCtrl( parent, ID_CLIENTLIST, wxDefaultPosition, wxDefaultSize, wxLC_REPORT|wxSUNKEN_BORDER );
+-    item0->Add( item6, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item0->Add( item6, 1, wxGROW, 5 );
+ 
+     if (set_sizer)
+     {
+@@ -1048,7 +1048,7 @@
+     wxWindow *item3 = new COScopeCtrl(3,1,GRAPH_DOWN,parent);
+ item3->SetName(wxT("dloadScope"));
+     wxASSERT( item3 );
+-    item1->Add( item3, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item1->Add( item3, 1, wxGROW|wxALL, 5 );
+ 
+     wxFlexGridSizer *item4 = new wxFlexGridSizer( 2, 0, 0 );
+     item4->AddGrowableCol( 0 );
+@@ -1089,7 +1089,7 @@
+ 
+     item1->Add( item4, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
+ 
+-    item0->Add( item1, 1, wxGROW|wxALIGN_CENTER_VERTICAL|wxBOTTOM, 5 );
++    item0->Add( item1, 1, wxGROW|wxBOTTOM, 5 );
+ 
+     wxStaticBox *item15 = new wxStaticBox( parent, -1, _("Upload-Speed") );
+     wxStaticBoxSizer *item14 = new wxStaticBoxSizer( item15, wxVERTICAL );
+@@ -1097,7 +1097,7 @@
+     wxWindow *item16 = new COScopeCtrl(3,1,GRAPH_UP,parent);
+ item16->SetName(wxT("uloadScope"));
+     wxASSERT( item16 );
+-    item14->Add( item16, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item14->Add( item16, 1, wxGROW|wxALL, 5 );
+ 
+     wxFlexGridSizer *item17 = new wxFlexGridSizer( 2, 0, 0 );
+     item17->AddGrowableCol( 0 );
+@@ -1138,7 +1138,7 @@
+ 
+     item14->Add( item17, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
+ 
+-    item0->Add( item14, 1, wxGROW|wxALIGN_CENTER_VERTICAL|wxBOTTOM, 5 );
++    item0->Add( item14, 1, wxGROW|wxBOTTOM, 5 );
+ 
+     wxStaticBox *item28 = new wxStaticBox( parent, -1, _("Connections") );
+     wxStaticBoxSizer *item27 = new wxStaticBoxSizer( item28, wxVERTICAL );
+@@ -1146,7 +1146,7 @@
+     wxWindow *item29 = new COScopeCtrl(3,0,GRAPH_CONN,parent);
+ item29->SetName(wxT("otherScope"));
+     wxASSERT( item29 );
+-    item27->Add( item29, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item27->Add( item29, 1, wxGROW|wxALL, 5 );
+ 
+     wxFlexGridSizer *item30 = new wxFlexGridSizer( 2, 0, 0 );
+     item30->AddGrowableCol( 0 );
+@@ -1187,16 +1187,15 @@
+ 
+     item27->Add( item30, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
+ 
+-    item0->Add( item27, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item0->Add( item27, 1, wxGROW|wxALL, 5 );
+ 
+     wxStaticBox *item41 = new wxStaticBox( parent, -1, _("Statistics Tree") );
+     wxStaticBoxSizer *item40 = new wxStaticBoxSizer( item41, wxVERTICAL );
+ 
+     wxTreeCtrl *item42 = new wxTreeCtrl( parent, -1, wxDefaultPosition, wxDefaultSize, wxTR_HAS_BUTTONS|wxSUNKEN_BORDER );
+     item42->SetName( wxT("statTree") );
+-    item40->Add( item42, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
+-
+-    item0->Add( item40, 1, wxGROW|wxALIGN_CENTER_VERTICAL, 5 );
++    item40->Add( item42, 1, wxGROW|wxALL, 5 );
++    item0->Add( item40, 1, wxGROW|wxALL, 5 );
+ 
+     if (set_sizer)
+     {
+@@ -2030,7 +2029,7 @@
+ 
+     wxStaticText *item2 = new wxStaticText( parent, -1, _("!!! WARNING !!!"), wxDefaultPosition, wxDefaultSize, 0 );
+     item2->SetForegroundColour( *wxRED );
+-    item2->SetFont( wxFont( 24, wxROMAN, wxNORMAL, wxNORMAL ) );
++    item2->SetFont( wxFont( 24, wxFONTFAMILY_ROMAN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL ) );
+     item1->Add( item2, 0, wxALIGN_CENTER, 5 );
+ 
+     wxStaticText *item3 = new wxStaticText( parent, IDC_AMULE_TWEAKS_WARNING, wxT(""), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE );
+--- a/src/utils/wxCas/src/wxcasframe.cpp
++++ b/src/utils/wxCas/src/wxcasframe.cpp
+@@ -280,11 +280,11 @@
+ #ifdef __WINDOWS__
+ 
+ 	memdc.
+-	SetFont ( wxFont ( 6, wxSWISS, wxNORMAL, wxBOLD ) );
++	SetFont ( wxFont ( 6, wxFONTFAMILY_SWISS, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD ) );
+ #else
+ 
+ 	memdc.
+-	SetFont ( wxFont ( 8, wxSWISS, wxNORMAL, wxBOLD ) );
++	SetFont ( wxFont ( 8, wxFONTFAMILY_SWISS, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD ) );
+ #endif
+ 
+ 	memdc.
+--- a/src/amuleDlg.cpp
++++ b/src/amuleDlg.cpp
+@@ -763,7 +763,7 @@
+ 	if ( (true == skinChanged) || (currentState != s_oldState) ) {
+ 		wxWindowUpdateLocker freezer(m_wndToolbar);
+ 
+-		wxToolBarToolBase* toolbarTool = m_wndToolbar->RemoveTool(ID_BUTTONCONNECT);
++		wxToolBarToolBase* toolbarTool = m_wndToolbar->FindById(ID_BUTTONCONNECT);
+ 
+ 		switch (currentState) {
+ 			case ECS_Connecting:
+@@ -784,8 +784,6 @@
+ 				toolbarTool->SetNormalBitmap(m_tblist.GetBitmap(0));
+ 		}
+ 
+-		m_wndToolbar->InsertTool(0, toolbarTool);
+-		m_wndToolbar->Realize();
+ 		m_wndToolbar->EnableTool(ID_BUTTONCONNECT, (thePrefs::GetNetworkED2K() || thePrefs::GetNetworkKademlia()) && theApp->ipfilter->IsReady());
+ 
+ 		s_oldState = currentState;
+@@ -1416,7 +1414,7 @@
+ 	wxWindowUpdateLocker freezer(this);
+ #endif
+ 
+-	wxToolBarToolBase* toolbarTool = m_wndToolbar->RemoveTool(ID_BUTTONNETWORKS);
++	wxToolBarToolBase* toolbarTool = m_wndToolbar->FindById(ID_BUTTONNETWORKS);
+ 
+ 	// set the log windows
+ 	wxNotebook* logs_notebook = CastChild( ID_SRVLOG_NOTEBOOK, wxNotebook);
+@@ -1507,12 +1505,9 @@
+ 
+ 	// Tool bar
+ 
+-	m_wndToolbar->InsertTool(2, toolbarTool);
+ 	m_wndToolbar->EnableTool(ID_BUTTONNETWORKS, (thePrefs::GetNetworkED2K() || thePrefs::GetNetworkKademlia()));
+ 	m_wndToolbar->EnableTool(ID_BUTTONCONNECT, (thePrefs::GetNetworkED2K() || thePrefs::GetNetworkKademlia()) && theApp->ipfilter->IsReady());
+ 
+-	m_wndToolbar->Realize();
+-
+ 	ShowConnectionState();	// status in the bottom right
+ 	m_searchwnd->FixSearchTypes();
+ }
+--- a/src/amule-gui.cpp
++++ b/src/amule-gui.cpp
+@@ -28,6 +28,7 @@
+ #include <common/ClientVersion.h>
+ 
+ #include <wx/clipbrd.h>			// Needed for wxClipBoard
++#include <wx/sizer.h>
+ #include <wx/tokenzr.h>			// Needed for wxStringTokenizer
+ 
+ #include "SharedFilesWnd.h"		// Needed for CSharedFilesWnd
+@@ -98,6 +99,11 @@
+ 
+ CamuleGuiBase::CamuleGuiBase()
+ {
++	// Disable these checks for now.  The code really needs updating to
++	// eliminate these inconsistent flag uses, but these checks are new
++	// since wx3.0, and this should just return us to what 3.0 did.
++	wxSizerFlags::DisableConsistencyChecks();
++
+ 	amuledlg = NULL;
+ }
+ 


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2023-06-26 14:42 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2023-06-26 14:42 UTC (permalink / raw
  To: gentoo-commits

commit:     722a58cbadfca20fc9ba71ce09008a9fd7584848
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Sun Jun 25 08:17:57 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 26 14:41:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=722a58cb

net-p2p/amule: fix build w/ clang and boost-1.82

Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Closes: https://bugs.gentoo.org/907843
Closes: https://github.com/gentoo/gentoo/pull/31517
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{amule-9999.ebuild => amule-2.3.3-r1.ebuild}   |  9 ++++++-
 net-p2p/amule/amule-9999.ebuild                    |  8 ++++++-
 .../amule/files/amule-2.3.3-autoconf-2.70.patch    | 28 ++++++++++++++++++++++
 net-p2p/amule/metadata.xml                         |  1 +
 4 files changed, 44 insertions(+), 2 deletions(-)

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-2.3.3-r1.ebuild
similarity index 93%
copy from net-p2p/amule/amule-9999.ebuild
copy to net-p2p/amule/amule-2.3.3-r1.ebuild
index 392ddb148410..e5e37d05e9dc 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-2.3.3-r1.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 WX_GTK_VER="3.0-gtk3"
 
-inherit wxwidgets xdg-utils
+inherit autotools flag-o-matic wxwidgets xdg-utils
 
 if [[ ${PV} == 9999 ]] ; then
 	EGIT_REPO_URI="https://github.com/amule-project/amule"
@@ -45,12 +45,14 @@ DEPEND="${RDEPEND}
 "
 BDEPEND="
 	virtual/pkgconfig
+	>=sys-devel/boost-m4-0.4_p20221019
 	nls? ( sys-devel/gettext )
 "
 
 PATCHES=(
 	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
 	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
+	"${FILESDIR}/${P}-autoconf-2.70.patch"
 )
 
 pkg_setup() {
@@ -59,13 +61,18 @@ pkg_setup() {
 
 src_prepare() {
 	default
+	rm m4/boost.m4 || die
 
 	if [[ ${PV} == 9999 ]]; then
 		./autogen.sh || die
+	else
+		eautoreconf
 	fi
 }
 
 src_configure() {
+	append-cxxflags -std=gnu++14
+
 	local myconf=(
 		--with-denoise-level=0
 		--with-wx-config="${WX_CONFIG}"

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-9999.ebuild
index 392ddb148410..7decbd246b1d 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 WX_GTK_VER="3.0-gtk3"
 
-inherit wxwidgets xdg-utils
+inherit flag-o-matic wxwidgets xdg-utils
 
 if [[ ${PV} == 9999 ]] ; then
 	EGIT_REPO_URI="https://github.com/amule-project/amule"
@@ -45,6 +45,7 @@ DEPEND="${RDEPEND}
 "
 BDEPEND="
 	virtual/pkgconfig
+	>=sys-devel/boost-m4-0.4_p20221019
 	nls? ( sys-devel/gettext )
 "
 
@@ -59,13 +60,18 @@ pkg_setup() {
 
 src_prepare() {
 	default
+	rm m4/boost.m4 || die
 
 	if [[ ${PV} == 9999 ]]; then
 		./autogen.sh || die
+	else
+		eautoreconf
 	fi
 }
 
 src_configure() {
+	append-cxxflags -std=gnu++14
+
 	local myconf=(
 		--with-denoise-level=0
 		--with-wx-config="${WX_CONFIG}"

diff --git a/net-p2p/amule/files/amule-2.3.3-autoconf-2.70.patch b/net-p2p/amule/files/amule-2.3.3-autoconf-2.70.patch
new file mode 100644
index 000000000000..e52cfd6ae545
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.3-autoconf-2.70.patch
@@ -0,0 +1,28 @@
+From 0d3e85ea46b52685c5b198fbade3a82f38071ca4 Mon Sep 17 00:00:00 2001
+From: Pablo Barciela <scow@riseup.net>
+Date: Sun, 19 Sep 2021 13:55:07 +0200
+Subject: [PATCH] allow to build with autoconf 2.70 and later
+
+Closes https://github.com/amule-project/amule/issues/232
+---
+ configure.ac | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 93a918c03..9c57668c6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -30,10 +30,6 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
+ 
+ AC_PREREQ(2.62)
+ 
+-# autoconf 2.70 introduced some incompatibilities that will make the build fail
+-# As a "workaround" reject 2.70 and above for now.
+-m4_if(m4_version_compare(m4_defn([AC_AUTOCONF_VERSION]), [2.70]), [-1],, [m4_fatal([autoconf ]m4_defn([AC_AUTOCONF_VERSION])[ is known to not work with aMule. Please use 2.69 instead.])])
+-
+ AC_CONFIG_SRCDIR([src/amule.cpp])
+ AC_CONFIG_HEADERS([config.h])
+ AC_CONFIG_MACRO_DIR([m4])
+-- 
+2.39.3
+

diff --git a/net-p2p/amule/metadata.xml b/net-p2p/amule/metadata.xml
index 32fc55855071..8d9b90c9f6f6 100644
--- a/net-p2p/amule/metadata.xml
+++ b/net-p2p/amule/metadata.xml
@@ -11,6 +11,7 @@
 	</maintainer>
 	<upstream>
 		<remote-id type="github">amule-project/amule</remote-id>
+		<remote-id type="sourceforge">amule</remote-id>
 	</upstream>
 	<use>
 		<flag name="daemon">Enable amule daemon</flag>


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2022-10-01  3:16 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2022-10-01  3:16 UTC (permalink / raw
  To: gentoo-commits

commit:     c7dc14033cc6464195f718cad55c157e1dbf2f81
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Fri Sep 30 16:16:35 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct  1 03:14:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7dc1403

net-p2p/amule: fix build with gcc-11 and musl

Also update EAPI 7 -> 8 and apply pathes to the live version.

Closes: https://bugs.gentoo.org/836739
Closes: https://bugs.gentoo.org/872263
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Closes: https://github.com/gentoo/gentoo/pull/27543
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-p2p/amule/amule-2.3.3.ebuild                    |  3 ++-
 net-p2p/amule/amule-9999.ebuild                     |  6 ++++--
 net-p2p/amule/files/amule-2.3.3-fix-exception.patch | 12 ++++++++++++
 3 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/net-p2p/amule/amule-2.3.3.ebuild b/net-p2p/amule/amule-2.3.3.ebuild
index 1c0c098150de..292872783ad9 100644
--- a/net-p2p/amule/amule-2.3.3.ebuild
+++ b/net-p2p/amule/amule-2.3.3.ebuild
@@ -1,7 +1,7 @@
 # Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 WX_GTK_VER="3.0-gtk3"
 
 inherit wxwidgets xdg-utils
@@ -50,6 +50,7 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
+	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
 )
 
 pkg_setup() {

diff --git a/net-p2p/amule/amule-9999.ebuild b/net-p2p/amule/amule-9999.ebuild
index a108c9752909..392ddb148410 100644
--- a/net-p2p/amule/amule-9999.ebuild
+++ b/net-p2p/amule/amule-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 WX_GTK_VER="3.0-gtk3"
 
 inherit wxwidgets xdg-utils
@@ -49,6 +49,8 @@ BDEPEND="
 "
 
 PATCHES=(
+	"${FILESDIR}/${PN}-2.3.2-disable-version-check.patch"
+	"${FILESDIR}/${PN}-2.3.3-fix-exception.patch"
 )
 
 pkg_setup() {

diff --git a/net-p2p/amule/files/amule-2.3.3-fix-exception.patch b/net-p2p/amule/files/amule-2.3.3-fix-exception.patch
new file mode 100644
index 000000000000..ef38f94cfccf
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.3-fix-exception.patch
@@ -0,0 +1,12 @@
+diff --git a/src/libs/common/MuleDebug.cpp b/src/libs/common/MuleDebug.cpp
+index 4b023815c..19c172e61 100644
+--- a/src/libs/common/MuleDebug.cpp
++++ b/src/libs/common/MuleDebug.cpp
+@@ -55,6 +55,7 @@
+ #endif
+ 
+ #include <vector>
++#include <exception>
+ 
+ 
+ /**


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2020-04-30 12:00 Joonas Niilola
  0 siblings, 0 replies; 7+ messages in thread
From: Joonas Niilola @ 2020-04-30 12:00 UTC (permalink / raw
  To: gentoo-commits

commit:     8eb110137a6b823d357e5dc888a5dc3cfa367b9f
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Wed Apr 29 17:00:03 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Apr 30 11:59:55 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8eb11013

net-p2p/amule: Sync 2.3.2 with live ebuild

* Added missing dependencies on sys-devel/gettext, virtual/libintl,
  sys-libs/readline.
* Added MimeType handler to a .desktop file (this also justifies added
  dependency on dev-util/desktop-file-utils and xdg-utils eclass usage).

Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 net-p2p/amule/amule-2.3.2-r5.ebuild                | 154 +++++++++++++++++++++
 .../amule/files/amule-2.3.2-desktop-mimetype.patch |  30 ++++
 2 files changed, 184 insertions(+)

diff --git a/net-p2p/amule/amule-2.3.2-r5.ebuild b/net-p2p/amule/amule-2.3.2-r5.ebuild
new file mode 100644
index 00000000000..50397fafc6d
--- /dev/null
+++ b/net-p2p/amule/amule-2.3.2-r5.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+WX_GTK_VER="3.0-gtk3"
+
+inherit wxwidgets xdg-utils
+
+if [[ ${PV} == 9999 ]] ; then
+	EGIT_REPO_URI="https://github.com/amule-project/amule"
+	inherit autotools git-r3
+else
+	MY_P="${PN/m/M}-${PV}"
+	SRC_URI="https://download.sourceforge.net/${PN}/${MY_P}.tar.xz"
+	S="${WORKDIR}/${MY_P}"
+	KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+fi
+
+DESCRIPTION="aMule, the all-platform eMule p2p client"
+HOMEPAGE="http://www.amule.org/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="daemon debug geoip nls remote stats upnp +X"
+
+RDEPEND="
+	dev-libs/boost:=
+	dev-libs/crypto++:=
+	sys-libs/binutils-libs:0=
+	sys-libs/readline:0=
+	sys-libs/zlib
+	>=x11-libs/wxGTK-3.0.4:${WX_GTK_VER}[X?]
+	daemon? ( acct-user/amule )
+	geoip? ( dev-libs/geoip )
+	nls? ( virtual/libintl )
+	remote? (
+		acct-user/amule
+		media-libs/libpng:0=
+	)
+	stats? ( media-libs/gd:=[jpeg,png] )
+	upnp? ( net-libs/libupnp:0 )
+"
+DEPEND="${RDEPEND}
+	X? ( dev-util/desktop-file-utils )
+"
+BDEPEND="
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+"
+
+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"
+	"${FILESDIR}/${PN}-2.3.2-libupnp-1.8.patch"
+	"${FILESDIR}/${PN}-2.3.2-libupnp-1.6.patch"
+	"${FILESDIR}/${PN}-2.3.2-Fixed-compilation-with-newer-bfd.patch"
+	"${FILESDIR}/${PN}-2.3.2-desktop-mimetype.patch"
+)
+
+pkg_setup() {
+	setup-wxwidgets
+}
+
+src_prepare() {
+	default
+
+	if [[ ${PV} == 9999 ]]; then
+		./autogen.sh || die
+	fi
+}
+
+src_configure() {
+	local myconf=(
+		--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)
+	)
+
+	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 "${myconf[@]}"
+}
+
+src_install() {
+	default
+
+	if use daemon; then
+		newconfd "${FILESDIR}"/amuled.confd-r1 amuled
+		newinitd "${FILESDIR}"/amuled.initd amuled
+	fi
+	if use remote; then
+		newconfd "${FILESDIR}"/amuleweb.confd-r1 amuleweb
+		newinitd "${FILESDIR}"/amuleweb.initd amuleweb
+	fi
+
+	if use daemon || use remote; then
+		keepdir /var/lib/${PN}
+		fowners amule:amule /var/lib/${PN}
+		fperms 0750 /var/lib/${PN}
+	fi
+}
+
+pkg_postinst() {
+	local ver
+
+	if use daemon || use remote; then
+		for ver in ${REPLACING_VERSIONS}; do
+			if ver_test ${ver} -lt "2.3.2-r4"; then
+				elog "Default user under which amuled and amuleweb daemons are started"
+				elog "have been changed from p2p to amule. Default home directory have been"
+				elog "changed as well."
+				echo
+				elog "If you want to preserve old download/share location, you can create"
+				elog "symlink /var/lib/amule/.aMule pointing to the old location and adjust"
+				elog "files ownership *or* restore AMULEUSER and AMULEHOME variables in"
+				elog "/etc/conf.d/{amuled,amuleweb} to the old values."
+
+				break
+			fi
+		done
+	fi
+
+	use X && xdg_desktop_database_update
+}
+
+pkg_postrm() {
+	use X && xdg_desktop_database_update
+}

diff --git a/net-p2p/amule/files/amule-2.3.2-desktop-mimetype.patch b/net-p2p/amule/files/amule-2.3.2-desktop-mimetype.patch
new file mode 100644
index 00000000000..cd8ba4c2fc5
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.2-desktop-mimetype.patch
@@ -0,0 +1,30 @@
+From 048e86d44e09ef9dc1897c432660a712109b263a Mon Sep 17 00:00:00 2001
+From: Werner Mahr <werner@vollstreckernet.de>
+Date: Mon, 29 Apr 2019 18:37:35 +0200
+Subject: [PATCH] Added imetype-handler for amule ed2k-links. Patch taken from
+ debian.
+
+---
+ amule.desktop | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/amule.desktop b/amule.desktop
+index 70be367af..1cfb38010 100644
+--- a/amule.desktop
++++ b/amule.desktop
+@@ -1,6 +1,6 @@
+ [Desktop Entry]
+ Name=aMule
+-Exec=amule
++Exec=amule %u
+ Icon=amule
+ Terminal=false
+ Type=Application
+@@ -8,3 +8,4 @@ Categories=Network;P2P;
+ Comment=A client for the eD2k network
+ Comment[fr]=Un client pour le réseau eD2k
+ Comment[tr]=eD2k ağı için istemci
++MimeType=x-scheme-handler/ed2k;
+-- 
+2.26.2
+


^ permalink raw reply related	[flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/
@ 2015-11-07 12:57 Pacho Ramos
  0 siblings, 0 replies; 7+ messages in thread
From: Pacho Ramos @ 2015-11-07 12:57 UTC (permalink / raw
  To: gentoo-commits

commit:     38d98ebcfa5aa1e87190eb3ed76fce7150b6ff51
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  7 12:56:42 2015 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sat Nov  7 12:57:50 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=38d98ebc

net-p2p/amule: Support wxGTK:3.0 (#465084)

Package-Manager: portage-2.2.23

 net-p2p/amule/amule-2.3.1-r1.ebuild         | 112 ++++++++++++++++++++++++++++
 net-p2p/amule/files/amule-2.3.1-build.patch |  10 +++
 net-p2p/amule/files/amule-2.3.1-wx3.0.patch |  45 +++++++++++
 3 files changed, 167 insertions(+)

diff --git a/net-p2p/amule/amule-2.3.1-r1.ebuild b/net-p2p/amule/amule-2.3.1-r1.ebuild
new file mode 100644
index 0000000..8335b24
--- /dev/null
+++ b/net-p2p/amule/amule-2.3.1-r1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+WX_GTK_VER="3.0"
+
+inherit eutils flag-o-matic 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.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="daemon debug geoip nls remote stats unicode upnp +X"
+
+RDEPEND="
+	>=dev-libs/crypto++-5
+	>=sys-libs/zlib-1.2.1
+	stats? ( >=media-libs/gd-2.0.26[jpeg] )
+	geoip? ( dev-libs/geoip )
+	upnp? ( >=net-libs/libupnp-1.6.6 )
+	remote? ( >=media-libs/libpng-1.2.0
+	unicode? ( >=media-libs/gd-2.0.26 ) )
+	X? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )
+	!X? ( x11-libs/wxGTK:${WX_GTK_VER} )
+	!net-p2p/imule
+"
+DEPEND="${RDEPEND}"
+
+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
+}
+
+pkg_preinst() {
+	if use daemon || use remote; then
+		enewgroup p2p
+		enewuser p2p -1 -1 /home/p2p p2p
+	fi
+}
+
+src_prepare() {
+	epatch "${FILESDIR}"/${PN}-2.2.6-fallocate.diff
+	# Bug 412371
+	epatch "${FILESDIR}"/${PN}-2.3.1-gcc47.patch
+
+	# https://bugs.gentoo.org/show_bug.cgi?id=465084
+	epatch "${FILESDIR}"/${PN}-2.3.1-wx3.0.patch
+	epatch "${FILESDIR}"/${PN}-2.3.1-build.patch
+}
+
+src_configure() {
+	local myconf
+
+	if use X; then
+		einfo "wxGTK with X support will be used"
+		need-wxwidgets unicode
+	else
+		einfo "wxGTK without X support will be used"
+		need-wxwidgets base-unicode
+	fi
+
+	if use X ; then
+		use stats && myconf="${myconf}
+			--enable-wxcas
+			--enable-alc"
+		use remote && myconf="${myconf}
+			--enable-amule-gui"
+	else
+		myconf="
+			--disable-monolithic
+			--disable-amule-gui
+			--disable-wxcas
+			--disable-alc"
+	fi
+
+	econf \
+		--with-wx-config=${WX_CONFIG} \
+		--enable-amulecmd \
+		$(use_enable debug) \
+		$(use_enable !debug optimize) \
+		$(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() {
+	emake DESTDIR="${D}" install
+
+	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.1-build.patch b/net-p2p/amule/files/amule-2.3.1-build.patch
new file mode 100644
index 0000000..2e977f3
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.1-build.patch
@@ -0,0 +1,10 @@
+--- aMule-2.3.1/src/LoggerConsole.cpp~	2011-06-13 10:50:25.000000000 +0200
++++ aMule-2.3.1/src/LoggerConsole.cpp	2015-04-11 10:58:20.592470541 +0200
+@@ -29,6 +29,7 @@
+ 
+ #include "Logger.h"				// for Add(Debug)LogLineM()
+ 
++DEFINE_LOCAL_EVENT_TYPE(MULE_EVT_LOGLINE)
+ 
+ #ifdef __DEBUG__
+ bool CLogger::IsEnabled(DebugType /*type*/) const

diff --git a/net-p2p/amule/files/amule-2.3.1-wx3.0.patch b/net-p2p/amule/files/amule-2.3.1-wx3.0.patch
new file mode 100644
index 0000000..77568b1
--- /dev/null
+++ b/net-p2p/amule/files/amule-2.3.1-wx3.0.patch
@@ -0,0 +1,45 @@
+diff -ur aMule-2.3.1/src/amuled.cpp aMule-2.3.1.wx3/src/amuled.cpp
+--- aMule-2.3.1/src/amuled.cpp	2011-07-13 17:00:12.000000000 +0200
++++ aMule-2.3.1.wx3/src/amuled.cpp	2014-01-19 13:55:50.904800356 +0100
+@@ -423,7 +423,9 @@
+ #ifndef __WXMSW__
+ 
+ 
++/*
+ static EndProcessDataMap endProcDataMap;
++*/
+ 
+ 
+ int CDaemonAppTraits::WaitForChild(wxExecuteData &execData)
+@@ -449,6 +451,7 @@
+ 		wxSleep(1);
+ 		result = AmuleWaitPid(execData.pid, &status, WNOHANG, &msg);
+ 		if (result == 0) {
++		/*
+ 			// Add a WxEndProcessData entry to the map, so that we can
+ 			// support process termination
+ 			wxEndProcessData *endProcData = new wxEndProcessData();
+@@ -456,6 +459,7 @@
+ 			endProcData->process = execData.process;
+ 			endProcData->tag = 0;
+ 			endProcDataMap[execData.pid] = endProcData;
++		*/
+ 
+ 			status = execData.pid;
+ 		} else {
+@@ -480,6 +484,7 @@
+ 	msg << wxT("OnSignalChildHandler() has been called for child process with pid `") <<
+ 		siginfo->si_pid <<
+ 		wxT("'. ");
++/*
+ 	// Make sure we leave no zombies by calling waitpid()
+ 	int status = 0;
+ 	pid_t result = AmuleWaitPid(siginfo->si_pid, &status, WNOHANG, &msg);
+@@ -503,6 +508,7 @@
+ 			msg << wxT(" Error: the child process pid is not on the pid map.");
+ 		}
+ 	}
++*/
+ 
+ 	// Log our passage here
+ 	AddDebugLogLineN(logGeneral, msg);


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-07-13 11:06 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-22 22:17 [gentoo-commits] repo/gentoo:master commit in: net-p2p/amule/, net-p2p/amule/files/ Patrice Clement
  -- strict thread matches above, loose matches on Subject: below --
2024-07-13 11:06 Yixun Lan
2023-12-22  6:46 Sam James
2023-06-26 14:42 Sam James
2022-10-01  3:16 Sam James
2020-04-30 12:00 Joonas Niilola
2015-11-07 12:57 Pacho Ramos

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox