mirror of
https://git.freebsd.org/ports.git
synced 2025-04-28 01:26:39 -04:00
net-p2p/amule: Unbreak with boost 1.87+
- While here, simplify options helpers
This commit is contained in:
parent
8d5f66f0fa
commit
254a2f4c9c
2 changed files with 159 additions and 20 deletions
|
@ -1,6 +1,6 @@
|
||||||
PORTNAME= amule
|
PORTNAME= amule
|
||||||
PORTVERSION= 2.3.3
|
PORTVERSION= 2.3.3
|
||||||
PORTREVISION= 13
|
PORTREVISION= 14
|
||||||
CATEGORIES= net-p2p
|
CATEGORIES= net-p2p
|
||||||
MASTER_SITES= SF/${PORTNAME}/aMule/${PORTVERSION}
|
MASTER_SITES= SF/${PORTNAME}/aMule/${PORTVERSION}
|
||||||
DISTNAME= aMule-${PORTVERSION}
|
DISTNAME= aMule-${PORTVERSION}
|
||||||
|
@ -48,49 +48,49 @@ OPTIONS_DEFAULT= ALC ALCC AMULECMD AMULEDAEMON AMULEGUI BOOST CAS ED2K \
|
||||||
FILEVIEW MONOLITHIC WEBSERVER WXCAS XAS
|
FILEVIEW MONOLITHIC WEBSERVER WXCAS XAS
|
||||||
OPTIONS_SUB= yes
|
OPTIONS_SUB= yes
|
||||||
|
|
||||||
DEBUG_CONFIGURE_OFF= --disable-debug
|
DEBUG_CONFIGURE_ENABLE= debug
|
||||||
|
|
||||||
NLS_USES= gettext
|
NLS_USES= gettext
|
||||||
NLS_CONFIGURE_OFF= --disable-nls
|
NLS_CONFIGURE_ENABLE= nls
|
||||||
|
|
||||||
ALC_CONFIGURE_ON= --enable-alc
|
ALC_CONFIGURE_ENABLE= alc
|
||||||
|
|
||||||
ALCC_CONFIGURE_ON= --enable-alcc
|
ALCC_CONFIGURE_ENABLE= alcc
|
||||||
|
|
||||||
AMULECMD_CONFIGURE_ON= --enable-amulecmd
|
AMULECMD_CONFIGURE_ENABLE= amulecmd
|
||||||
AMULECMD_USES= readline
|
AMULECMD_USES= readline
|
||||||
|
|
||||||
AMULEDAEMON_CONFIGURE_ON= --enable-amule-daemon
|
AMULEDAEMON_CONFIGURE_ENABLE= amule-daemon
|
||||||
AMULEDAEMON_USE= RC_SUBR=amuled
|
AMULEDAEMON_USE= RC_SUBR=amuled
|
||||||
|
|
||||||
AMULEGUI_CONFIGURE_ON= --enable-amule-gui
|
AMULEGUI_CONFIGURE_ENABLE= amule-gui
|
||||||
|
|
||||||
BOOST_BROKEN= fails to build with Boost>=1.87
|
BOOST_CONFIGURE_WITH= boost
|
||||||
BOOST_CONFIGURE_ON= --with-boost
|
BOOST_LIB_DEPENDS= libboost_system.so:devel/boost-libs
|
||||||
BOOST_LIB_DEPENDS+= libboost_system.so:devel/boost-libs
|
|
||||||
|
|
||||||
CAS_CONFIGURE_ON= --enable-cas
|
CAS_CONFIGURE_ENABLE= cas
|
||||||
CAS_LIB_DEPENDS= libgd.so:graphics/gd
|
CAS_LIB_DEPENDS= libgd.so:graphics/gd
|
||||||
|
|
||||||
ED2K_CONFIGURE_OFF= --disable-ed2k
|
ED2K_CONFIGURE_ENABLE= ed2k
|
||||||
ED2K_CONFLICTS= ed2k-hash*
|
ED2K_CONFLICTS= ed2k-hash*
|
||||||
|
|
||||||
FILEVIEW_CONFIGURE_ON= --enable-fileview
|
FILEVIEW_CONFIGURE_ENABLE= fileview
|
||||||
|
|
||||||
MMAP_CONFIGURE_ON= --enable-mmap
|
MMAP_CONFIGURE_ENABLE= mmap
|
||||||
|
|
||||||
MONOLITHIC_CONFIGURE_OFF= --disable-monolithic
|
MONOLITHIC_CONFIGURE_ENABLE= monolithic
|
||||||
|
|
||||||
UPNP_LIB_DEPENDS= libupnp.so:devel/upnp
|
UPNP_LIB_DEPENDS= libupnp.so:devel/upnp
|
||||||
UPNP_CONFIGURE_OFF= --disable-upnp
|
UPNP_CONFIGURE_ENABLE= upnp
|
||||||
|
|
||||||
WEBSERVER_CONFIGURE_ON= --enable-webserver
|
WEBSERVER_CONFIGURE_ENABLE= webserver
|
||||||
WEBSERVER_LIB_DEPENDS= libpng.so:graphics/png
|
WEBSERVER_LIB_DEPENDS= libpng.so:graphics/png
|
||||||
WEBSERVER_USES= readline
|
WEBSERVER_USES= readline
|
||||||
|
|
||||||
WXCAS_CONFIGURE_ON= --enable-wxcas
|
# Build fails if only option selected
|
||||||
|
WXCAS_CONFIGURE_ENABLE= wxcas
|
||||||
|
|
||||||
XAS_CONFIGURE_ON= --enable-xas
|
XAS_CONFIGURE_ENABLE= xas
|
||||||
XAS_USE= PERL5+=run
|
XAS_USE= PERL5+=run
|
||||||
|
|
||||||
.include <bsd.port.options.mk>
|
.include <bsd.port.options.mk>
|
||||||
|
|
139
net-p2p/amule/files/patch-fix-boost1.87+
Normal file
139
net-p2p/amule/files/patch-fix-boost1.87+
Normal file
|
@ -0,0 +1,139 @@
|
||||||
|
commit 212b1891da96750ca602df05b575b4d679ca6f1e
|
||||||
|
Author: Luigi 'Comio' Mantellini <luigi.mantellini@gmail.com>
|
||||||
|
Date: Mon Dec 16 07:53:11 2024 +0100
|
||||||
|
|
||||||
|
Fix build with Boost 1.87 that removes deprecated asio methods
|
||||||
|
|
||||||
|
diff --git src/LibSocketAsio.cpp src/LibSocketAsio.cpp
|
||||||
|
index 5f8b02652..8e15c8635 100644
|
||||||
|
--- src/LibSocketAsio.cpp
|
||||||
|
+++ src/LibSocketAsio.cpp
|
||||||
|
@@ -70,7 +70,7 @@
|
||||||
|
|
||||||
|
using namespace boost::asio;
|
||||||
|
using namespace boost::system; // for error_code
|
||||||
|
-static io_service s_io_service;
|
||||||
|
+static io_context s_io_service;
|
||||||
|
|
||||||
|
// Number of threads in the Asio thread pool
|
||||||
|
const int CAsioService::m_numberOfThreads = 4;
|
||||||
|
@@ -265,7 +265,7 @@ public:
|
||||||
|
AddDebugLogLineF(logAsio, CFormat(wxT("Write %d %s")) % nbytes % m_IP);
|
||||||
|
m_sendBuffer = new char[nbytes];
|
||||||
|
memcpy(m_sendBuffer, buf, nbytes);
|
||||||
|
- m_strand.dispatch(boost::bind(& CAsioSocketImpl::DispatchWrite, this, nbytes));
|
||||||
|
+ dispatch(m_strand, boost::bind(& CAsioSocketImpl::DispatchWrite, this, nbytes));
|
||||||
|
m_ErrorCode = 0;
|
||||||
|
return nbytes;
|
||||||
|
}
|
||||||
|
@@ -279,7 +279,7 @@ public:
|
||||||
|
if (m_sync || s_io_service.stopped()) {
|
||||||
|
DispatchClose();
|
||||||
|
} else {
|
||||||
|
- m_strand.dispatch(boost::bind(& CAsioSocketImpl::DispatchClose, this));
|
||||||
|
+ dispatch(m_strand, boost::bind(& CAsioSocketImpl::DispatchClose, this));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -538,7 +538,7 @@ private:
|
||||||
|
{
|
||||||
|
m_readPending = true;
|
||||||
|
m_readBufferContent = 0;
|
||||||
|
- m_strand.dispatch(boost::bind(& CAsioSocketImpl::DispatchBackgroundRead, this));
|
||||||
|
+ dispatch(m_strand, boost::bind(& CAsioSocketImpl::DispatchBackgroundRead, this));
|
||||||
|
}
|
||||||
|
|
||||||
|
void PostReadEvent(int DEBUG_ONLY(from) )
|
||||||
|
@@ -618,7 +618,7 @@ private:
|
||||||
|
uint32 m_readBufferContent;
|
||||||
|
bool m_eventPending;
|
||||||
|
char * m_sendBuffer;
|
||||||
|
- io_service::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
+ io_context::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
deadline_timer m_timer;
|
||||||
|
bool m_connected;
|
||||||
|
bool m_closed;
|
||||||
|
@@ -875,7 +875,7 @@ private:
|
||||||
|
}
|
||||||
|
// We were not successful. Try again.
|
||||||
|
// Post the request to the event queue to make sure it doesn't get called immediately.
|
||||||
|
- m_strand.post(boost::bind(& CAsioSocketServerImpl::StartAccept, this));
|
||||||
|
+ post(m_strand, boost::bind(& CAsioSocketServerImpl::StartAccept, this));
|
||||||
|
}
|
||||||
|
|
||||||
|
// The wrapper object
|
||||||
|
@@ -886,7 +886,7 @@ private:
|
||||||
|
CScopedPtr<CAsioSocketImpl> m_currentSocket;
|
||||||
|
// Is there a socket available?
|
||||||
|
bool m_socketAvailable;
|
||||||
|
- io_service::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
+ io_context::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1021,7 +1021,7 @@ public:
|
||||||
|
// Collect data, make a copy of the buffer's content
|
||||||
|
CUDPData * recdata = new CUDPData(buf, nBytes, addr);
|
||||||
|
AddDebugLogLineF(logAsio, CFormat(wxT("UDP SendTo %d to %s")) % nBytes % addr.IPAddress());
|
||||||
|
- m_strand.dispatch(boost::bind(& CAsioUDPSocketImpl::DispatchSendTo, this, recdata));
|
||||||
|
+ dispatch(m_strand, boost::bind(& CAsioUDPSocketImpl::DispatchSendTo, this, recdata));
|
||||||
|
return nBytes;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1035,7 +1035,7 @@ public:
|
||||||
|
if (s_io_service.stopped()) {
|
||||||
|
DispatchClose();
|
||||||
|
} else {
|
||||||
|
- m_strand.dispatch(boost::bind(& CAsioUDPSocketImpl::DispatchClose, this));
|
||||||
|
+ dispatch(m_strand, boost::bind(& CAsioUDPSocketImpl::DispatchClose, this));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1162,7 +1162,7 @@ private:
|
||||||
|
ip::udp::socket * m_socket;
|
||||||
|
CMuleUDPSocket * m_muleSocket;
|
||||||
|
bool m_OK;
|
||||||
|
- io_service::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
+ io_context::strand m_strand; // handle synchronisation in io_service thread pool
|
||||||
|
deadline_timer m_timer;
|
||||||
|
amuleIPV4Address m_address;
|
||||||
|
|
||||||
|
@@ -1254,7 +1254,7 @@ public:
|
||||||
|
void * Entry()
|
||||||
|
{
|
||||||
|
AddLogLineNS(CFormat(_("Asio thread %d started")) % m_threadNumber);
|
||||||
|
- io_service::work worker(s_io_service); // keep io_service running
|
||||||
|
+ auto worker = make_work_guard(s_io_service); // keep io_service running
|
||||||
|
s_io_service.run();
|
||||||
|
AddDebugLogLineN(logAsio, CFormat(wxT("Asio thread %d stopped")) % m_threadNumber);
|
||||||
|
|
||||||
|
@@ -1342,7 +1342,7 @@ bool amuleIPV4Address::Hostname(const wxString& name)
|
||||||
|
// This is usually just an IP.
|
||||||
|
std::string sname(unicode2char(name));
|
||||||
|
error_code ec;
|
||||||
|
- ip::address_v4 adr = ip::address_v4::from_string(sname, ec);
|
||||||
|
+ ip::address_v4 adr = ip::make_address_v4(sname, ec);
|
||||||
|
if (!ec) {
|
||||||
|
m_endpoint->address(adr);
|
||||||
|
return true;
|
||||||
|
@@ -1353,17 +1353,16 @@ bool amuleIPV4Address::Hostname(const wxString& name)
|
||||||
|
error_code ec2;
|
||||||
|
ip::tcp::resolver res(s_io_service);
|
||||||
|
// We only want to get IPV4 addresses.
|
||||||
|
- ip::tcp::resolver::query query(ip::tcp::v4(), sname, "");
|
||||||
|
- ip::tcp::resolver::iterator endpoint_iterator = res.resolve(query, ec2);
|
||||||
|
+ ip::tcp::resolver::results_type endpoint_iterator = res.resolve(sname, "", ec2);
|
||||||
|
if (ec2) {
|
||||||
|
AddDebugLogLineN(logAsio, CFormat(wxT("Hostname(\"%s\") resolve failed: %s")) % name % ec2.message());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
- if (endpoint_iterator == ip::tcp::resolver::iterator()) {
|
||||||
|
+ if (endpoint_iterator == ip::tcp::resolver::results_type()) {
|
||||||
|
AddDebugLogLineN(logAsio, CFormat(wxT("Hostname(\"%s\") resolve failed: no address found")) % name);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
- m_endpoint->address(endpoint_iterator->endpoint().address());
|
||||||
|
+ m_endpoint->address(endpoint_iterator.begin()->endpoint().address());
|
||||||
|
AddDebugLogLineN(logAsio, CFormat(wxT("Hostname(\"%s\") resolved to %s")) % name % IPAddress());
|
||||||
|
return true;
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue