Bug 236666

Summary: www/nghttp2: ASIO fails to build with boost 1.70
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: Po-Chuan Hsieh <sunpoet>
Status: Closed FIXED    
Severity: Affects Only Me CC: igor.arabesc.pavlov
Priority: --- Keywords: needs-patch, regression
Version: LatestFlags: bugzilla: maintainer-feedback? (sunpoet)
Hardware: Any   
OS: Any   
See Also: https://github.com/nghttp2/nghttp2/issues/1320
Bug Depends on:    
Bug Blocks: 235956    

Description Jan Beich freebsd_committer freebsd_triage 2019-03-20 15:03:20 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 WITH=ASIO -C/usr/ports/www/nghttp2
[...]
In file included from asio_server.cc:39:
./asio_server_connection.h:74:27: error: no member named 'get_io_service' in 'boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >'
        deadline_(socket_.get_io_service()),
                  ~~~~~~~ ^
/usr/include/c++/v1/memory:2103:9: note: in instantiation of function template specialization 'nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >::connection<boost::asio::io_context &, boost::asio::ssl::context &>' requested here
      : __value_(_VSTD::forward<_Args>(_VSTD::get<_Indexes>(__args))...) {}
        ^
/usr/include/c++/v1/memory:2205:9: note: in instantiation of function template specialization 'std::__1::__compressed_pair_elem<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >, 1, false>::__compressed_pair_elem<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, boost::asio::ssl::context &, 0, 1, 2, 3, 4>' requested here
        _Base2(__pc, _VSTD::move(__second_args),
        ^
/usr/include/c++/v1/memory:3618:16: note: in instantiation of function template specialization 'std::__1::__compressed_pair<std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > >, nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > >::__compressed_pair<std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > > &, nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, boost::asio::ssl::context &>' requested here
            :  __data_(piecewise_construct, _VSTD::forward_as_tuple(__a),
               ^
/usr/include/c++/v1/memory:4277:26: note: in instantiation of function template specialization 'std::__1::__shared_ptr_emplace<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >, std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > > >::__shared_ptr_emplace<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, boost::asio::ssl::context &>' requested here
    ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...);
                         ^
/usr/include/c++/v1/memory:4656:29: note: in instantiation of function template specialization 'std::__1::shared_ptr<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > >::make_shared<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, boost::asio::ssl::context &>' requested here
    return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...);
                            ^
asio_server.cc:132:30: note: in instantiation of function template specialization 'std::__1::make_shared<nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >, nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, boost::asio::ssl::context &>' requested here
  auto new_connection = std::make_shared<connection<ssl_socket>>(
                             ^
In file included from asio_server.cc:39:
./asio_server_connection.h:85:17: error: no member named 'get_io_service' in 'boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >'
        socket_.get_io_service(), socket_.lowest_layer().remote_endpoint(ec),
        ~~~~~~~ ^
asio_server.cc:157:33: note: in instantiation of member function 'nghttp2::asio_http2::server::connection<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >::start' requested here
                new_connection->start();
                                ^
In file included from asio_server.cc:39:
./asio_server_connection.h:74:27: error: no member named 'get_io_service' in 'boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>'
        deadline_(socket_.get_io_service()),
                  ~~~~~~~ ^
/usr/include/c++/v1/memory:2103:9: note: in instantiation of function template specialization 'nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::connection<boost::asio::io_context &>' requested here
      : __value_(_VSTD::forward<_Args>(_VSTD::get<_Indexes>(__args))...) {}
        ^
/usr/include/c++/v1/memory:2205:9: note: in instantiation of function template specialization 'std::__1::__compressed_pair_elem<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, 1, false>::__compressed_pair_elem<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &, 0, 1, 2, 3>' requested here
        _Base2(__pc, _VSTD::move(__second_args),
        ^
/usr/include/c++/v1/memory:3618:16: note: in instantiation of function template specialization 'std::__1::__compressed_pair<std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >, nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >::__compressed_pair<std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > &, nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &>' requested here
            :  __data_(piecewise_construct, _VSTD::forward_as_tuple(__a),
               ^
/usr/include/c++/v1/memory:4277:26: note: in instantiation of function template specialization 'std::__1::__shared_ptr_emplace<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, std::__1::allocator<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > > >::__shared_ptr_emplace<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &>' requested here
    ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...);
                         ^
/usr/include/c++/v1/memory:4656:29: note: in instantiation of function template specialization 'std::__1::shared_ptr<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> > >::make_shared<nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &>' requested here
    return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...);
                            ^
asio_server.cc:171:30: note: in instantiation of function template specialization 'std::__1::make_shared<nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, nghttp2::asio_http2::server::serve_mux &, boost::posix_time::time_duration &, boost::posix_time::time_duration &, boost::asio::io_context &>' requested here
  auto new_connection = std::make_shared<connection<tcp::socket>>(
                             ^
In file included from asio_server.cc:39:
./asio_server_connection.h:85:17: error: no member named 'get_io_service' in 'boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>'
        socket_.get_io_service(), socket_.lowest_layer().remote_endpoint(ec),
        ~~~~~~~ ^
asio_server.cc:181:27: note: in instantiation of member function 'nghttp2::asio_http2::server::connection<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::start' requested here
          new_connection->start();
                          ^
4 errors generated.
Comment 1 Jan Beich freebsd_committer freebsd_triage 2019-04-12 09:44:18 UTC
The port has been marked BROKEN in ports r498698.
Comment 2 commit-hook freebsd_committer freebsd_triage 2019-04-19 03:36:42 UTC
A commit references this bug:

Author: jbeich
Date: Fri Apr 19 03:36:38 UTC 2019
New revision: 499322
URL: https://svnweb.freebsd.org/changeset/ports/499322

Log:
  www/nghttp2: unbreak

  PR:		236666
  Obtained from:	upstream

Changes:
  head/www/nghttp2/Makefile
  head/www/nghttp2/distinfo