Bug 236601 - comms/gnuradio: fails to build with boost 1.70
Summary: comms/gnuradio: fails to build with boost 1.70
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: hamradio (Nobody)
URL: https://github.com/gnuradio/gnuradio/...
Keywords: needs-patch, regression
Depends on:
Blocks: 235956
  Show dependency treegraph
Reported: 2019-03-17 14:43 UTC by Jan Beich
Modified: 2019-04-25 21:14 UTC (History)
3 users (show)

See Also:
bugzilla: maintainer-feedback? (hamradio)


Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer 2019-03-17 14:43:29 UTC
While preparing for Boost upgrade this port failed to build. Can you help to avoid marking it as BROKEN?

$ fetch -qo- 'https://reviews.freebsd.org/D19303?download=true' |
  patch -Efsp0 -d /usr/ports
$ make all deinstall install clean -C/usr/ports/devel/boost-jam
$ make all deinstall install clean -C/usr/ports/devel/boost-libs
$ make -C/usr/ports/comms/gnuradio
.../work/gnuradio-a664001/gr-blocks/lib/socket_pdu_impl.cc:168:82: error: no member named 'get_io_service' in 'boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::executor>'
      tcp_connection::sptr new_connection = tcp_connection::make(d_acceptor_tcp->get_io_service(), d_rxbuf.size(), d_tcp_no_delay);
                                                                 ~~~~~~~~~~~~~~  ^
1 error generated.
Comment 1 Diane Bruce freebsd_committer 2019-03-18 12:37:23 UTC
I'll look ASAP.
Comment 2 Jan Beich freebsd_committer 2019-04-12 09:44:18 UTC
The port has been marked BROKEN in ports r498698.
Comment 3 Jan Beich freebsd_committer 2019-04-12 13:44:04 UTC
Yuri, See Also field already had link to upstream bug. Some ports are fixed using Monero approach but I'm not sure if it's correct given https://github.com/boostorg/asio/commit/59066d80b26e

#if BOOST_VERSION >= 107000
#define GET_IO_SERVICE(s) ((boost::asio::io_context&)(s).get_executor().context())
#define GET_IO_SERVICE(s) ((s).get_io_service())