summaryrefslogtreecommitdiffstats
path: root/games/pokerth
diff options
context:
space:
mode:
author Matteo Bernardini2017-11-04 11:53:26 +0100
committer Matteo Bernardini2017-11-04 11:53:26 +0100
commit4474a706ee05db9ed1466ed16efa5ce87efdf21a (patch)
tree08b0e15955895ef2aec8296a7e714543b62f7584 /games/pokerth
parentf8100ac287c48c52491e83cec473363ceafab6a1 (diff)
downloadold.slackbuilds-4474a706ee05db9ed1466ed16efa5ce87efdf21a.tar.gz
20171104.1 global branch merge.current-20171104.1
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Diffstat (limited to 'games/pokerth')
-rw-r--r--games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch14
-rw-r--r--games/pokerth/pokerth-c++11.patch95
-rw-r--r--games/pokerth/pokerth-gcc6.patch41
-rw-r--r--games/pokerth/pokerth.SlackBuild10
-rw-r--r--games/pokerth/std-ifstream-and-std-ofstream.patch151
5 files changed, 311 insertions, 0 deletions
diff --git a/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch b/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
new file mode 100644
index 0000000000..2e8c9c50c5
--- /dev/null
+++ b/games/pokerth/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
@@ -0,0 +1,14 @@
+Boost 1.65 made 'advance()' ambiguous.
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=629966
+
+--- a/src/gui/qt/gametable/gametableimpl.cpp
++++ b/src/gui/qt/gametable/gametableimpl.cpp
+@@ -3859,7 +3859,7 @@
+ int playerCount = static_cast<int>(seatList->size());
+ if (id < playerCount) {
+ PlayerListIterator pos = seatList->begin();
+- advance(pos, id);
++ std::advance(pos, id);
+ myStartWindow->getSession()->startVoteKickPlayer((*pos)->getMyUniqueID());
+ }
+ }
diff --git a/games/pokerth/pokerth-c++11.patch b/games/pokerth/pokerth-c++11.patch
new file mode 100644
index 0000000000..3978ee263c
--- /dev/null
+++ b/games/pokerth/pokerth-c++11.patch
@@ -0,0 +1,95 @@
+From 924fcd64044bd17c683345627def83df044ce867 Mon Sep 17 00:00:00 2001
+From: Felix Hammer <f.hammer@web.de>
+Date: Wed, 19 Aug 2015 15:02:10 +0200
+Subject: [PATCH] Linux Desktop build fix
+
+---
+ pokerth_lib.pro | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/pokerth_lib.pro b/pokerth_lib.pro
+index 6ab18b9..e9f1e3a 100644
+--- a/pokerth_lib.pro
++++ b/pokerth_lib.pro
+@@ -256,6 +256,8 @@ win32{
+ ##### My release static build options
+ #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+ INCLUDEPATH += /opt/gsasl/include
++ DEFINES += _WEBSOCKETPP_CPP11_STL_
++ QMAKE_CXXFLAGS += -std=gnu++11
+ }
+
+ mac{
+#diff --git a/pokerth_qml-client.pro b/pokerth_qml-client.pro
+#index 6e5223f..eec1feb 100644
+#--- a/pokerth_qml-client.pro
+#+++ b/pokerth_qml-client.pro
+#@@ -6,7 +6,6 @@ isEmpty( PREFIX ){
+# DEFINES += PREFIX=\"$${PREFIX}\"
+#
+# TEMPLATE = app
+#-TARGET = pokerth
+# CODECFORSRC = UTF-8
+# QT += core qml quick widgets svg sql
+# CONFIG += qt thread embed_manifest_exe exceptions rtti stl warn_on
+diff --git a/src/net/common/sessiondata.cpp b/src/net/common/sessiondata.cpp
+index 06f7146..69bcdb7 100644
+--- a/src/net/common/sessiondata.cpp
++++ b/src/net/common/sessiondata.cpp
+@@ -318,8 +318,9 @@ void
+ SessionData::CloseWebSocketHandle()
+ {
+ if (m_webData) {
+- boost::system::error_code ec;
+- m_webData->webSocketServer->close(m_webData->webHandle, websocketpp::close::status::normal, "PokerTH server closed the connection.", ec);
++// boost::system::error_code ec;
++ std::error_code std_ec;
++ m_webData->webSocketServer->close(m_webData->webHandle, websocketpp::close::status::normal, "PokerTH server closed the connection.", std_ec);
+ }
+ }
+
+diff --git a/src/net/common/websendbuffer.cpp b/src/net/common/websendbuffer.cpp
+index 2ba665a..3130373 100644
+--- a/src/net/common/websendbuffer.cpp
++++ b/src/net/common/websendbuffer.cpp
+@@ -57,9 +57,10 @@ void
+ WebSendBuffer::AsyncSendNextPacket(boost::shared_ptr<SessionData> session)
+ {
+ if (closeAfterSend) {
+- boost::system::error_code ec;
++// boost::system::error_code ec;
++ std::error_code std_ec;
+ boost::shared_ptr<WebSocketData> webData = session->GetWebData();
+- webData->webSocketServer->close(webData->webHandle, websocketpp::close::status::normal, "PokerTH server closed the connection.", ec);
++ webData->webSocketServer->close(webData->webHandle, websocketpp::close::status::normal, "PokerTH server closed the connection.", std_ec);
+ }
+ }
+
+@@ -70,10 +71,11 @@ WebSendBuffer::InternalStorePacket(boost::shared_ptr<SessionData> session, boost
+ google::protobuf::uint8 *buf = new google::protobuf::uint8[packetSize];
+ packet->GetMsg()->SerializeWithCachedSizesToArray(buf);
+
+- boost::system::error_code ec;
++// boost::system::error_code ec;
++ std::error_code std_ec;
+ boost::shared_ptr<WebSocketData> webData = session->GetWebData();
+- webData->webSocketServer->send(webData->webHandle, string((const char *)buf, packetSize), websocketpp::frame::opcode::BINARY, ec);
+- if (ec) {
++ webData->webSocketServer->send(webData->webHandle, string((const char *)buf, packetSize), websocketpp::frame::opcode::BINARY, std_ec);
++ if (std_ec) {
+ SetCloseAfterSend();
+ }
+
+diff --git a/src/net/serveracceptwebhelper.h b/src/net/serveracceptwebhelper.h
+index a1d371e..f7e8123 100644
+--- a/src/net/serveracceptwebhelper.h
++++ b/src/net/serveracceptwebhelper.h
+@@ -52,7 +53,7 @@ class ServerAcceptWebHelper : public ServerAcceptInterface
+
+ protected:
+
+- typedef std::map<websocketpp::connection_hdl, boost::weak_ptr<SessionData> > SessionMap;
++ typedef std::map<websocketpp::connection_hdl, boost::weak_ptr<SessionData>, std::owner_less<websocketpp::connection_hdl> > SessionMap;
+
+ bool validate(websocketpp::connection_hdl hdl);
+ void on_open(websocketpp::connection_hdl hdl);
diff --git a/games/pokerth/pokerth-gcc6.patch b/games/pokerth/pokerth-gcc6.patch
new file mode 100644
index 0000000000..d663ab2133
--- /dev/null
+++ b/games/pokerth/pokerth-gcc6.patch
@@ -0,0 +1,41 @@
+--- PokerTH-1.1.1-src/pokerth_db.pro.orig 2016-05-12 20:20:57.336018308 +0000
++++ PokerTH-1.1.1-src/pokerth_db.pro 2016-05-12 20:21:14.335959204 +0000
+@@ -49,7 +49,6 @@
+ !win32{
+ ##### My release static build options
+ #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+- INCLUDEPATH += $${PREFIX}/include
+ }
+
+ mac{
+--- PokerTH-1.1.1-src/pokerth_lib.pro.orig 2016-05-12 20:24:53.581864921 +0000
++++ PokerTH-1.1.1-src/pokerth_lib.pro 2016-05-12 20:25:20.441771862 +0000
+@@ -243,7 +243,7 @@
+ !win32{
+ ##### My release static build options
+ #QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
+- INCLUDEPATH += $${PREFIX}/include /opt/gsasl/include
++ INCLUDEPATH += /opt/gsasl/include
+ }
+
+ mac{
+--- PokerTH-1.1.1-src/pokerth_game.pro.orig 2016-05-12 21:02:08.527791266 +0000
++++ PokerTH-1.1.1-src/pokerth_game.pro 2016-05-12 21:02:19.027758386 +0000
+@@ -402,7 +402,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
+--- PokerTH-1.1.1-src/pokerth_server.pro.orig 2016-05-12 21:10:02.469679181 +0000
++++ PokerTH-1.1.1-src/pokerth_server.pro 2016-05-12 21:10:34.106251260 +0000
+@@ -174,7 +174,6 @@
+ #QMAKE_LFLAGS += -Wl,--gc-sections
+
+ LIBPATH += lib $${PREFIX}/lib /opt/gsasl/lib
+- INCLUDEPATH += $${PREFIX}/include
+ LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64 $$system(qmake -query QT_INSTALL_LIBS)
+ BOOST_FS = boost_filesystem boost_filesystem-mt
+ BOOST_THREAD = boost_thread boost_thread-mt
diff --git a/games/pokerth/pokerth.SlackBuild b/games/pokerth/pokerth.SlackBuild
index 5412cb9fbe..249f2487e8 100644
--- a/games/pokerth/pokerth.SlackBuild
+++ b/games/pokerth/pokerth.SlackBuild
@@ -77,6 +77,16 @@ find -L . \
# Thanks ponce.
sed -i "s|libircclient/||" src/net/common/ircthread.cpp
+# Fix for the newest boost
+patch -p1 < $CWD/std-ifstream-and-std-ofstream.patch
+
+# Fix building with gcc-6.x - thanks Archlinux folks!
+patch -p1 < $CWD/pokerth-gcc6.patch
+patch -p1 < $CWD/pokerth-c++11.patch
+
+# Another fix for boost - thanks to Gentoo
+patch -p1 < $CWD/pokerth-1.1.1-boost-1.65-ambiguous-advance.patch
+
qmake pokerth.pro
make #CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS"
diff --git a/games/pokerth/std-ifstream-and-std-ofstream.patch b/games/pokerth/std-ifstream-and-std-ofstream.patch
new file mode 100644
index 0000000000..37030c331d
--- /dev/null
+++ b/games/pokerth/std-ifstream-and-std-ofstream.patch
@@ -0,0 +1,151 @@
+From: Jonathan Wakely <github@kayari.org>
+Date: Thu, 26 Nov 2015 16:27:52 +0000
+Subject: Qualify std::ifstream and std::ofstream
+
+Starting with Boost 1.60.0 <boost/filesystem.hpp> includes
+<boost/filesystem/fstream.hpp>, which declares ifstream and ofstream
+types that make the unqualified names ifstream and ofstream ambiguous.
+The names must be qualified to refer to the std versions.
+
+Upstream pull request at: https://github.com/pokerth/pokerth/pull/299
+---
+ src/core/common/avatarmanager.cpp | 4 ++--
+ src/core/common/loghelper_server.cpp | 6 +++---
+ src/net/common/clientstate.cpp | 4 ++--
+ src/net/common/clientthread.cpp | 4 ++--
+ src/net/common/downloaderthread.cpp | 2 +-
+ src/pokerth_server.cpp | 2 +-
+ src/zlib_compress.cpp | 4 ++--
+ 7 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/src/core/common/avatarmanager.cpp b/src/core/common/avatarmanager.cpp
+index d9b9fd4..d137a5c 100644
+--- a/src/core/common/avatarmanager.cpp
++++ b/src/core/common/avatarmanager.cpp
+@@ -61,7 +61,7 @@ using namespace std;
+ using namespace boost::filesystem;
+
+ struct AvatarFileState {
+- ifstream inputStream;
++ std::ifstream inputStream;
+ };
+
+ AvatarManager::AvatarManager(bool useExternalServer, const std::string &externalServerAddress,
+@@ -363,7 +363,7 @@ AvatarManager::StoreAvatarInCache(const MD5Buf &md5buf, AvatarFileType avatarFil
+ path tmpPath(cacheDir);
+ tmpPath /= (md5buf.ToString() + ext);
+ string fileName(tmpPath.file_string());
+- ofstream o(fileName.c_str(), ios_base::out | ios_base::binary | ios_base::trunc);
++ std::ofstream o(fileName.c_str(), ios_base::out | ios_base::binary | ios_base::trunc);
+ if (!o.fail()) {
+ o.write((const char *)data, size);
+ o.close();
+diff --git a/src/core/common/loghelper_server.cpp b/src/core/common/loghelper_server.cpp
+index f79e4ca..a0d0350 100644
+--- a/src/core/common/loghelper_server.cpp
++++ b/src/core/common/loghelper_server.cpp
+@@ -67,7 +67,7 @@ void
+ internal_log_err(const string &msg)
+ {
+ if (!g_logFile.empty()) {
+- ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
++ std::ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
+ if (!o.fail()) {
+ o << second_clock::local_time() << " ERR: " << msg;
+ o.flush();
+@@ -80,7 +80,7 @@ internal_log_msg(const std::string &msg)
+ {
+ if (g_logLevel) {
+ if (!g_logFile.empty()) {
+- ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
++ std::ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
+ if (!o.fail())
+ o << second_clock::local_time() << " MSG: " << msg;
+ }
+@@ -92,7 +92,7 @@ internal_log_level(const std::string &msg, int logLevel)
+ {
+ if (g_logLevel >= logLevel) {
+ if (!g_logFile.empty()) {
+- ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
++ std::ofstream o(g_logFile.c_str(), ios_base::out | ios_base::app);
+ if (!o.fail())
+ o << second_clock::local_time() << " OUT: " << msg;
+ }
+diff --git a/src/net/common/clientstate.cpp b/src/net/common/clientstate.cpp
+index 84921ce..58fd5fb 100644
+--- a/src/net/common/clientstate.cpp
++++ b/src/net/common/clientstate.cpp
+@@ -302,8 +302,8 @@ ClientStateReadingServerList::Enter(boost::shared_ptr<ClientThread> client)
+
+ // Unzip the file using zlib.
+ try {
+- ifstream inFile(zippedServerListPath.directory_string().c_str(), ios_base::in | ios_base::binary);
+- ofstream outFile(xmlServerListPath.directory_string().c_str(), ios_base::out | ios_base::trunc);
++ std::ifstream inFile(zippedServerListPath.directory_string().c_str(), ios_base::in | ios_base::binary);
++ std::ofstream outFile(xmlServerListPath.directory_string().c_str(), ios_base::out | ios_base::trunc);
+ boost::iostreams::filtering_streambuf<boost::iostreams::input> in;
+ in.push(boost::iostreams::zlib_decompressor());
+ in.push(inFile);
+diff --git a/src/net/common/clientthread.cpp b/src/net/common/clientthread.cpp
+index c36e94a..45b79cb 100644
+--- a/src/net/common/clientthread.cpp
++++ b/src/net/common/clientthread.cpp
+@@ -1604,7 +1604,7 @@ void
+ ClientThread::ReadSessionGuidFromFile()
+ {
+ string guidFileName(GetContext().GetCacheDir() + TEMP_GUID_FILENAME);
+- ifstream guidStream(guidFileName.c_str(), ios::in | ios::binary);
++ std::ifstream guidStream(guidFileName.c_str(), ios::in | ios::binary);
+ if (guidStream.good()) {
+ std::vector<char> tmpGuid(CLIENT_GUID_SIZE);
+ guidStream.read(&tmpGuid[0], CLIENT_GUID_SIZE);
+@@ -1616,7 +1616,7 @@ void
+ ClientThread::WriteSessionGuidToFile() const
+ {
+ string guidFileName(GetContext().GetCacheDir() + TEMP_GUID_FILENAME);
+- ofstream guidStream(guidFileName.c_str(), ios::out | ios::trunc | ios::binary);
++ std::ofstream guidStream(guidFileName.c_str(), ios::out | ios::trunc | ios::binary);
+ if (guidStream.good()) {
+ guidStream.write(GetContext().GetSessionGuid().c_str(), GetContext().GetSessionGuid().size());
+ }
+diff --git a/src/net/common/downloaderthread.cpp b/src/net/common/downloaderthread.cpp
+index e58e3f8..56a9526 100644
+--- a/src/net/common/downloaderthread.cpp
++++ b/src/net/common/downloaderthread.cpp
+@@ -96,7 +96,7 @@ DownloaderThread::Main()
+ // Previous download was finished.
+ if (m_curDownloadData) {
+ path filepath(m_curDownloadData->filename);
+- ifstream instream(filepath.file_string().c_str(), ios_base::in | ios_base::binary);
++ std::ifstream instream(filepath.file_string().c_str(), ios_base::in | ios_base::binary);
+ // Find out file size.
+ // Not fully portable, but works on win/linux/mac.
+ instream.seekg(0, ios_base::beg);
+diff --git a/src/pokerth_server.cpp b/src/pokerth_server.cpp
+index 3b93d46..450a47e 100644
+--- a/src/pokerth_server.cpp
++++ b/src/pokerth_server.cpp
+@@ -161,7 +161,7 @@ main(int argc, char *argv[])
+ pidFile = tmpPidPath.directory_string();
+ }
+ {
+- ofstream pidStream(pidFile.c_str(), ios_base::out | ios_base::trunc);
++ std::ofstream pidStream(pidFile.c_str(), ios_base::out | ios_base::trunc);
+ if (!pidStream.fail())
+ pidStream << getpid();
+ else
+diff --git a/src/zlib_compress.cpp b/src/zlib_compress.cpp
+index e3fd72d..4b04817 100644
+--- a/src/zlib_compress.cpp
++++ b/src/zlib_compress.cpp
+@@ -59,8 +59,8 @@ main(int argc, char *argv[])
+ return 2;
+ }
+ try {
+- ifstream inFile(inputFilePath.directory_string().c_str(), ios_base::in);
+- ofstream outFile(outputFilePath.directory_string().c_str(), ios_base::out | ios_base::binary);
++ std::ifstream inFile(inputFilePath.directory_string().c_str(), ios_base::in);
++ std::ofstream outFile(outputFilePath.directory_string().c_str(), ios_base::out | ios_base::binary);
+ boost::iostreams::filtering_streambuf<boost::iostreams::output> out;
+ out.push(boost::iostreams::zlib_compressor());
+ out.push(outFile);