Package: vcmi
Version: 0.99+dfsg+git20190113.f06c8a87-1
Severity: wishlist
Tags: patch
User: team+bo...@tracker.debian.org
Usertags: boost1.71

Dear Maintainer,

your package fails to build with boost1.71. You can find a build log
attached. If you want to attempt the build yourself, an updated version
of boost-defaults which brings in boost1.71 dependencies can be found
adding this line to your sources.list file:

  deb https://people.debian.org/~gio/reprepro gio main

This bug has severity whishlist for the moment, but it will raised to RC
as soon as version 1.71 of Boost is promoted to default.

More specifically, your package fails building because it uses some
retired API from Boost.Asio. The attached patch (cherry picked from
upstream) should fix the bug.

Thanks and all the best, Giovanni.
-- 
Giovanni Mascellani <g.mascell...@gmail.com>
Postdoc researcher - Université Libre de Bruxelles
From ecbb568f09b6025179200a6c7b492356d0493bb2 Mon Sep 17 00:00:00 2001
From: Giovanni Mascellani <g...@debian.org>
Date: Sat, 2 May 2020 09:29:28 +0200
Subject: [PATCH] Fix FTBFS with Boost 1.71.

---
 ...d0f7b42fb535748ec311ba877a6e6216567b.patch | 62 +++++++++++++++++++
 debian/patches/series                         |  1 +
 2 files changed, 63 insertions(+)
 create mode 100644 debian/patches/ac81d0f7b42fb535748ec311ba877a6e6216567b.patch

diff --git a/debian/patches/ac81d0f7b42fb535748ec311ba877a6e6216567b.patch b/debian/patches/ac81d0f7b42fb535748ec311ba877a6e6216567b.patch
new file mode 100644
index 0000000..6e024d6
--- /dev/null
+++ b/debian/patches/ac81d0f7b42fb535748ec311ba877a6e6216567b.patch
@@ -0,0 +1,62 @@
+From ac81d0f7b42fb535748ec311ba877a6e6216567b Mon Sep 17 00:00:00 2001
+From: krkos <kr...@users.noreply.github.com>
+Date: Tue, 21 Jan 2020 09:55:28 +0100
+Subject: [PATCH] Fix build with Boost versioni >= 1.70 (#615)
+
+---
+ lib/serializer/Connection.h | 7 +++++++
+ server/CVCMIServer.cpp      | 8 ++++++--
+ 2 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/lib/serializer/Connection.h b/lib/serializer/Connection.h
+index e6bfcfd86..6ba68d269 100644
+--- a/lib/serializer/Connection.h
++++ b/lib/serializer/Connection.h
+@@ -14,6 +14,11 @@
+ 
+ struct CPack;
+ 
++#if BOOST_VERSION >= 107000  // Boost version >= 1.70
++#include <boost/asio.hpp>
++typedef boost::asio::basic_stream_socket < boost::asio::ip::tcp > TSocket;
++typedef boost::asio::basic_socket_acceptor < boost::asio::ip::tcp > TAcceptor;
++#else
+ namespace boost
+ {
+ 	namespace asio
+@@ -43,6 +48,8 @@ namespace boost
+ 
+ typedef boost::asio::basic_stream_socket < boost::asio::ip::tcp , boost::asio::stream_socket_service<boost::asio::ip::tcp>  > TSocket;
+ typedef boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> > TAcceptor;
++#endif
++
+ 
+ /// Main class for network communication
+ /// Allows establishing connection and bidirectional read-write
+diff --git a/server/CVCMIServer.cpp b/server/CVCMIServer.cpp
+index 730ddba96..dfcfefe4e 100644
+--- a/server/CVCMIServer.cpp
++++ b/server/CVCMIServer.cpp
+@@ -214,8 +214,8 @@ void CVCMIServer::threadAnnounceLobby()
+ 
+ 			if(acceptor)
+ 			{
+-				acceptor->get_io_service().reset();
+-				acceptor->get_io_service().poll();
++				io->reset();
++				io->poll();
+ 			}
+ 		}
+ 
+@@ -272,7 +272,11 @@ void CVCMIServer::startAsyncAccept()
+ 	assert(!upcomingConnection);
+ 	assert(acceptor);
+ 
++#if BOOST_VERSION >= 107000  // Boost version >= 1.70
++	upcomingConnection = std::make_shared<TSocket>(acceptor->get_executor());
++#else
+ 	upcomingConnection = std::make_shared<TSocket>(acceptor->get_io_service());
++#endif
+ 	acceptor->async_accept(*upcomingConnection, std::bind(&CVCMIServer::connectionAccepted, this, _1));
+ }
+ 
diff --git a/debian/patches/series b/debian/patches/series
index 4ab4eca..747bb14 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 disable-privacy-breach
 minizip_maxu32
+ac81d0f7b42fb535748ec311ba877a6e6216567b.patch
-- 
2.26.2

Attachment: vcmi.log.gz
Description: application/gzip

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to