commit:     a3f67754346ac4fc694059dc38790058aa37cc40
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 11 19:12:05 2019 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Aug 11 19:12:05 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a3f67754

games-board/pokerth: Unbundle dev-cpp/websocketpp

Closes: https://bugs.gentoo.org/689298
Package-Manager: Portage-2.3.71, Repoman-2.3.17
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 .../pokerth/files/pokerth-1.1.2-boost-1.66.patch   |  38 ++++++++
 .../pokerth/files/pokerth-1.1.2-fix-includes.patch | 106 +++++++++++++++++++++
 .../files/pokerth-1.1.2-system-websockets.patch    |  17 ++++
 games-board/pokerth/pokerth-1.1.2.ebuild           |  10 +-
 4 files changed, 170 insertions(+), 1 deletion(-)

diff --git a/games-board/pokerth/files/pokerth-1.1.2-boost-1.66.patch 
b/games-board/pokerth/files/pokerth-1.1.2-boost-1.66.patch
new file mode 100644
index 00000000000..94eb5b2c570
--- /dev/null
+++ b/games-board/pokerth/files/pokerth-1.1.2-boost-1.66.patch
@@ -0,0 +1,38 @@
+Description: Fix build failure with deprecated io_control in boost 1.66
+Origin: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224123
+Last-Update: 2018-09-11
+
+Index: pokerth-1.1.2/src/net/common/clientthread.cpp
+===================================================================
+--- pokerth-1.1.2.orig/src/net/common/clientthread.cpp
++++ pokerth-1.1.2/src/net/common/clientthread.cpp
+@@ -993,8 +993,12 @@
+                       newSock.reset(new 
boost::asio::ip::tcp::socket(*m_ioService, tcp::v6()));
+               else
+                       newSock.reset(new 
boost::asio::ip::tcp::socket(*m_ioService, tcp::v4()));
++#if BOOST_VERSION < 106600
+               boost::asio::socket_base::non_blocking_io command(true);
+               newSock->io_control(command);
++#else
++              newSock->non_blocking(true);
++#endif
+               newSock->set_option(tcp::no_delay(true));
+               newSock->set_option(boost::asio::socket_base::keep_alive(true));
+ 
+Index: pokerth-1.1.2/src/net/serveraccepthelper.h
+===================================================================
+--- pokerth-1.1.2.orig/src/net/serveraccepthelper.h
++++ pokerth-1.1.2/src/net/serveraccepthelper.h
+@@ -122,8 +122,12 @@
+                                         const boost::system::error_code 
&error)
+       {
+               if (!error) {
++#if BOOST_VERSION < 106600
+                       boost::asio::socket_base::non_blocking_io command(true);
+                       acceptedSocket->io_control(command);
++#else
++                      acceptedSocket->non_blocking(true);
++#endif
+                       acceptedSocket->set_option(typename P::no_delay(true));
+                       
acceptedSocket->set_option(boost::asio::socket_base::keep_alive(true));
+                       boost::shared_ptr<SessionData> sessionData(new 
SessionData(acceptedSocket, m_lobbyThread->GetNextSessionId(), 
m_lobbyThread->GetSessionDataCallback(), *m_ioService));

diff --git a/games-board/pokerth/files/pokerth-1.1.2-fix-includes.patch 
b/games-board/pokerth/files/pokerth-1.1.2-fix-includes.patch
new file mode 100644
index 00000000000..f03ff0dae4d
--- /dev/null
+++ b/games-board/pokerth/files/pokerth-1.1.2-fix-includes.patch
@@ -0,0 +1,106 @@
+Description: fix build failure due to including -isystem /usr/include before 
everything else
+ (usr/include is already included by the compiler itself)
+Author: Gianfranco Costamagna <[email protected]>
+Last-Update: 2018-10-02
+
+--- a/chatcleaner.pro
++++ b/chatcleaner.pro
+@@ -49,7 +49,6 @@
+ !win32{
+       ##### My release static build options
+       #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+-      INCLUDEPATH += $${PREFIX}/include
+ }
+ mac {
+       # make it x86_64 only
+--- a/connectivity.pro
++++ b/connectivity.pro
+@@ -40,7 +40,6 @@
+       #QMAKE_LFLAGS += -Wl,--gc-sections
+ 
+       QMAKE_LIBDIR += lib $${PREFIX}/lib /opt/gsasl/lib
+-      INCLUDEPATH += $${PREFIX}/include
+       LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64 $$system(qmake -query 
QT_INSTALL_LIBS)
+       BOOST_PROGRAM_OPTIONS = boost_program_options boost_program_options-mt
+       BOOST_SYS = boost_system boost_system-mt
+--- a/load.pro
++++ b/load.pro
+@@ -41,7 +41,6 @@
+       #QMAKE_LFLAGS += -Wl,--gc-sections
+ 
+       QMAKE_LIBDIR += lib $${PREFIX}/lib /opt/gsasl/lib
+-      INCLUDEPATH += $${PREFIX}/include
+       LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64 $$system(qmake -query 
QT_INSTALL_LIBS)
+       BOOST_THREAD = boost_thread boost_thread-mt
+       BOOST_PROGRAM_OPTIONS = boost_program_options boost_program_options-mt
+--- a/pokerth_dbofficial.pro
++++ b/pokerth_dbofficial.pro
+@@ -73,7 +73,7 @@
+ !win32 { 
+     # #### My release static build options
+     # QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+-    INCLUDEPATH += /usr/include \
++    INCLUDEPATH += \
+         /usr/include/mysql \
+         /usr/include/mysql++
+     INCLUDEPATH += /opt/boost/include
+--- a/pokerth_db.pro
++++ b/pokerth_db.pro
+@@ -52,7 +52,6 @@
+ !win32{
+       ##### My release static build options
+       #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+-      INCLUDEPATH += $${PREFIX}/include
+ }
+ 
+ mac{
+--- a/pokerth_game.pro
++++ b/pokerth_game.pro
+@@ -405,7 +405,6 @@
+       # #### My release static build options
+       # QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+       # QMAKE_LFLAGS += -Wl,--gc-sections
+-      INCLUDEPATH += $${PREFIX}/include
+       QMAKE_LIBDIR += lib
+       !android{
+               LIBPATH += $${PREFIX}/lib /opt/gsasl/lib
+--- a/pokerth_lib.pro
++++ b/pokerth_lib.pro
+@@ -269,7 +269,7 @@
+               src/dbofficial/asyncdbadminplayers.cpp \
+               src/dbofficial/asyncdbblockplayer.cpp \
+               src/dbofficial/dbidmanager.cpp
+-    INCLUDEPATH += /usr/include \
++    INCLUDEPATH += \
+         /usr/include/mysql \
+         /usr/include/mysql++
+ }
+@@ -286,7 +286,7 @@
+ !win32{
+       ##### My release static build options
+       #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+-      INCLUDEPATH += $${PREFIX}/include /opt/gsasl/include
++      INCLUDEPATH += opt/gsasl/include
+ }
+ 
+ mac{
+--- a/pokerth_protocol.pro
++++ b/pokerth_protocol.pro
+@@ -40,7 +40,6 @@
+       system(protoc pokerth.proto --java_out=tests/src)
+ }
+ unix : !mac {
+-        INCLUDEPATH += $${PREFIX}/include
+       system(protoc pokerth.proto --cpp_out=src/third_party/protobuf)
+       system(protoc chatcleaner.proto --cpp_out=src/third_party/protobuf)
+       system(protoc pokerth.proto --java_out=tests/src)
+--- a/pokerth_server.pro
++++ b/pokerth_server.pro
+@@ -177,7 +177,6 @@
+       #QMAKE_LFLAGS += -Wl,--gc-sections
+ 
+       LIBPATH += lib $${PREFIX}/lib /opt/gsasl/lib
+-      INCLUDEPATH += $${PREFIX}/include
+       # see issue https://github.com/pokerth/pokerth/issues/282
+       INCLUDEPATH += $${PREFIX}/include/libircclient
+       LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64 $$system(qmake -query 
QT_INSTALL_LIBS)

diff --git a/games-board/pokerth/files/pokerth-1.1.2-system-websockets.patch 
b/games-board/pokerth/files/pokerth-1.1.2-system-websockets.patch
new file mode 100644
index 00000000000..25c757bc905
--- /dev/null
+++ b/games-board/pokerth/files/pokerth-1.1.2-system-websockets.patch
@@ -0,0 +1,17 @@
+Description: force use of system websocketpp library
+Author: Gianfranco Costamagna <[email protected]>
+
+Index: pokerth-1.1.2/pokerth_lib.pro
+===================================================================
+--- pokerth-1.1.2.orig/pokerth_lib.pro
++++ pokerth-1.1.2/pokerth_lib.pro
+@@ -30,8 +30,7 @@
+               src/engine/local_engine \
+               src/engine/network_engine \
+               src/config \
+-              src/core \
+-              src/third_party/websocketpp
++              src/core
+ 
+ DEPENDPATH += . \
+               src \

diff --git a/games-board/pokerth/pokerth-1.1.2.ebuild 
b/games-board/pokerth/pokerth-1.1.2.ebuild
index 5aa49bfc497..685ac05c300 100644
--- a/games-board/pokerth/pokerth-1.1.2.ebuild
+++ b/games-board/pokerth/pokerth-1.1.2.ebuild
@@ -15,7 +15,7 @@ KEYWORDS="~amd64 ~x86"
 IUSE="dedicated"
 
 RDEPEND="dev-db/sqlite:3
-       <dev-libs/boost-1.70:0=[threads(+)]
+       dev-libs/boost:0=[threads(+)]
        dev-libs/libgcrypt:0
        dev-libs/protobuf:0=
        dev-libs/tinyxml[stl]
@@ -31,6 +31,7 @@ RDEPEND="dev-db/sqlite:3
                media-libs/sdl-mixer[mod,vorbis]
        )"
 DEPEND="${RDEPEND}
+       dev-cpp/websocketpp
        !dedicated? ( dev-qt/qtsql:5 )
        virtual/pkgconfig"
 
@@ -39,11 +40,18 @@ S="${WORKDIR}/${P}-rc"
 PATCHES=(
        "${FILESDIR}"/${PN}-1.1.1-boost-1.65-ambiguous-advance.patch
        "${FILESDIR}"/${PN}-1.1.2-protobuf.patch
+       "${FILESDIR}"/${PN}-1.1.2-boost-1.66.patch
+       "${FILESDIR}"/${PN}-1.1.2-fix-includes.patch
+       # unbundle dev-cpp/websocketpp
+       "${FILESDIR}"/${PN}-1.1.2-system-websockets.patch
 )
 
 src_prepare() {
        default
        sed -i 's/!client//' *.pro || die
+
+       # delete bundled dev-cpp/websocketpp to be safe
+       rm -r src/third_party/websocketpp || die
 }
 
 src_configure() {

Reply via email to