commit a0be16c73e51ddb8545e650eccd38b4a2af37b10
Author: Jan RÄ™korajski <[email protected]>
Date:   Tue Dec 24 12:04:11 2024 +0100

    - fixes for boost 1.85 for now
    - build with system websocketpp

 boost-1.85.patch         | 374 +++++++++++++++++++++++++++++++++++++++++++++++
 pokerth.spec             |   5 +
 system-websocketpp.patch |  21 +++
 3 files changed, 400 insertions(+)
---
diff --git a/pokerth.spec b/pokerth.spec
index bccf23a..37983b1 100644
--- a/pokerth.spec
+++ b/pokerth.spec
@@ -16,6 +16,8 @@ Patch3:               %{name}-protobuf.patch
 Patch4:                %{name}-boost.patch
 # from 
https://github.com/zaphoyd/websocketpp/pull/814/commits/c769c9238ad62178f506038178714a1c35aa2769.patch
 Patch5:                %{name}-websocketpp-boost.patch
+Patch6:                boost-1.85.patch
+Patch7:                system-websocketpp.patch
 URL:           https://pokerth.net/
 BuildRequires: QtCore-devel >= 4.4.3
 BuildRequires: QtGui-devel >= 4.4.3
@@ -36,6 +38,7 @@ BuildRequires:        qt4-qmake >= 4.3.1
 BuildRequires: sed >= 4.0
 BuildRequires: sqlite3-devel >= 3
 BuildRequires: tinyxml-devel
+BuildRequires: websocketpp-devel
 BuildRequires: zlib-devel >= 1.2.3
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -59,6 +62,8 @@ Silnik gry dostępny jest na platformy Linux, Windows oraz 
MacOS X.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
 
 %{__rm} -r src/third_party/qtsingleapplication
 
diff --git a/boost-1.85.patch b/boost-1.85.patch
new file mode 100644
index 0000000..9f8a111
--- /dev/null
+++ b/boost-1.85.patch
@@ -0,0 +1,374 @@
+From f42fa9a604f9f4faa1addd1b02c491cd0fe59736 Mon Sep 17 00:00:00 2001
+From: "[email protected]" <[email protected]>
+Date: Sat, 20 Apr 2024 13:29:24 -0400
+Subject: [PATCH] Changes for boost-1.85
+
+---
+ src/core/common/avatarmanager.cpp             | 49 +++++++++++++++++++
+ src/core/common/loghelper_server.cpp          |  4 ++
+ src/engine/log.cpp                            |  4 ++
+ src/engine/log.h                              |  4 ++
+ .../qt/qttools/nonqthelper/nonqthelper.cpp    |  8 +++
+ src/net/common/clientstate.cpp                | 19 +++++++
+ src/net/common/clientthread.cpp               |  4 ++
+ src/net/common/downloaderthread.cpp           |  8 +++
+ src/net/common/serverlobbythread.cpp          |  8 +++
+ src/net/common/uploaderthread.cpp             |  4 ++
+ src/pokerth_server.cpp                        |  4 ++
+ 11 files changed, 116 insertions(+)
+
+diff --git a/src/core/common/avatarmanager.cpp 
b/src/core/common/avatarmanager.cpp
+index d137a5c44..9b2f4abaa 100644
+--- a/src/core/common/avatarmanager.cpp
++++ b/src/core/common/avatarmanager.cpp
+@@ -87,20 +87,36 @@ AvatarManager::Init(const string &dataDir, const string 
&cacheDir)
+       path tmpDataPath(dataDir);
+       {
+               boost::mutex::scoped_lock lock(m_cacheDirMutex);
++#if BOOST_VERSION < 108500
+               m_cacheDir = tmpCachePath.directory_string();
++#else
++              m_cacheDir = tmpCachePath.string();
++#endif
+       }
+       {
+               boost::mutex::scoped_lock lock(m_avatarsMutex);
++#if BOOST_VERSION < 108500
+               tmpRet = InternalReadDirectory((tmpDataPath / 
"gfx/avatars/default/people/").directory_string(), m_avatars);
++#else
++              tmpRet = InternalReadDirectory((tmpDataPath / 
"gfx/avatars/default/people/").string(), m_avatars);
++#endif
+               retVal = retVal && tmpRet;
++#if BOOST_VERSION < 108500
+               tmpRet = InternalReadDirectory((tmpDataPath / 
"gfx/avatars/default/misc/").directory_string(), m_avatars);
++#else
++              tmpRet = InternalReadDirectory((tmpDataPath / 
"gfx/avatars/default/misc/").string(), m_avatars);
++#endif
+               retVal = retVal && tmpRet;
+       }
+       if (cacheDir.empty() || tmpCachePath.empty())
+               LOG_ERROR("Cache directory was not set!");
+       else {
+               boost::mutex::scoped_lock lock(m_cachedAvatarsMutex);
++#if BOOST_VERSION < 108500
+               tmpRet = InternalReadDirectory(tmpCachePath.directory_string(), 
m_cachedAvatars);
++#else
++              tmpRet = InternalReadDirectory(tmpCachePath.string(), 
m_cachedAvatars);
++#endif
+               retVal = retVal && tmpRet;
+       }
+ 
+@@ -113,7 +129,11 @@ AvatarManager::AddSingleAvatar(const std::string 
&fileName)
+ {
+       bool retVal = false;
+       path filePath(fileName);
++#if BOOST_VERSION < 108500
+       string tmpFileName(filePath.file_string());
++#else
++      string tmpFileName(filePath.string());
++#endif
+ 
+       if (!fileName.empty() && !tmpFileName.empty()) {
+               unsigned outFileSize = 0;
+@@ -240,7 +260,11 @@ AvatarManager::GetAvatarFileType(const string &fileName)
+       AvatarFileType fileType;
+ 
+       path filePath(fileName);
++#if BOOST_VERSION < 108500
+       string ext(extension(filePath));
++#else
++      string ext(filePath.extension().string());
++#endif
+       if (boost::algorithm::iequals(ext, ".png"))
+               fileType = AVATAR_FILE_TYPE_PNG;
+       else if (boost::algorithm::iequals(ext, ".jpg") || 
boost::algorithm::iequals(ext, ".jpeg"))
+@@ -362,7 +386,11 @@ AvatarManager::StoreAvatarInCache(const MD5Buf &md5buf, 
AvatarFileType avatarFil
+                       if (IsValidAvatarFileType(avatarFileType, data, size)) {
+                               path tmpPath(cacheDir);
+                               tmpPath /= (md5buf.ToString() + ext);
++#if BOOST_VERSION < 108500
+                               string fileName(tmpPath.file_string());
++#else
++                              string fileName(tmpPath.string());
++#endif
+                               std::ofstream o(fileName.c_str(), ios_base::out 
| ios_base::binary | ios_base::trunc);
+                               if (!o.fail()) {
+                                       o.write((const char *)data, size);
+@@ -426,7 +454,11 @@ AvatarManager::RemoveOldAvatarCacheEntries()
+       }
+       try {
+               path cachePath(cacheDir);
++#if BOOST_VERSION < 108500
+               cacheDir = cachePath.directory_string();
++#else
++              cacheDir = cachePath.string();
++#endif
+               // Never delete anything if we do not have a special cache dir 
set.
+               if (!cacheDir.empty()) {
+                       boost::mutex::scoped_lock lock(m_cachedAvatarsMutex);
+@@ -441,12 +473,20 @@ AvatarManager::RemoveOldAvatarCacheEntries()
+                               while (i != end) {
+                                       bool keepFile = false;
+                                       path filePath(i->second);
++#if BOOST_VERSION < 108500
+                                       string 
fileString(filePath.file_string());
++#else
++                                      string fileString(filePath.string());
++#endif
+                                       // Only consider files which are 
definitely in the cache dir.
+                                       if (fileString.size() > cacheDir.size() 
&& fileString.substr(0, cacheDir.size()) == cacheDir) {
+                                               // Only consider files with MD5 
as file name.
+                                               MD5Buf tmpBuf;
++#if BOOST_VERSION < 108500
+                                               if (exists(filePath) && 
tmpBuf.FromString(basename(filePath))) {
++#else
++                                              if (exists(filePath) && 
tmpBuf.FromString(filePath.stem().string())) {
++#endif
+                                                       
timeMap.insert(TimeAvatarMap::value_type(last_write_time(filePath), i->first));
+                                                       keepFile = true;
+                                               }
+@@ -520,10 +560,19 @@ AvatarManager::InternalReadDirectory(const std::string 
&dir, AvatarMap &avatars)
+                       directory_iterator end;
+ 
+                       while (i != end) {
++#if BOOST_VERSION < 108500
+                               if (is_regular(i->status())) {
+                                       string md5sum(basename(i->path()));
++#else
++                              if (is_regular_file(i->status())) {
++                                      string 
md5sum(i->path().stem().string());
++#endif
+                                       MD5Buf md5buf;
++#if BOOST_VERSION < 108500
+                                       string 
fileName(i->path().file_string());
++#else
++                                      string fileName(i->path().string());
++#endif
+                                       if (md5buf.FromString(md5sum)) {
+                                               // Only consider files with 
md5sum as name.
+                                               
avatars.insert(AvatarMap::value_type(md5buf, fileName));
+diff --git a/src/core/common/loghelper_server.cpp 
b/src/core/common/loghelper_server.cpp
+index a0d0350ed..f3e8366b2 100644
+--- a/src/core/common/loghelper_server.cpp
++++ b/src/core/common/loghelper_server.cpp
+@@ -59,7 +59,11 @@ loghelper_init(const string &logDir, int logLevel)
+       path tmpLogFile(logDir);
+       tmpLogFile /= SERVER_MSG_LOG_FILE_NAME;
+ 
++#if BOOST_VERSION < 108500
+       g_logFile = tmpLogFile.directory_string();
++#else
++      g_logFile = tmpLogFile.string();
++#endif
+       g_logLevel = logLevel;
+ }
+ 
+diff --git a/src/engine/log.cpp b/src/engine/log.cpp
+index 1f50fde2e..c6fe7f8e1 100644
+--- a/src/engine/log.cpp
++++ b/src/engine/log.cpp
+@@ -84,7 +84,11 @@ Log::init()
+                               mySqliteLogFileName /= string("pokerth-log-") + 
curDateTime + ".pdb";
+ 
+                               // open sqlite-db
++#if BOOST_VERSION < 108500
+                               
sqlite3_open(mySqliteLogFileName.directory_string().c_str(), &mySqliteLogDb);
++#else
++                              
sqlite3_open(mySqliteLogFileName.string().c_str(), &mySqliteLogDb);
++#endif
+                               if( mySqliteLogDb != 0 ) {
+ 
+                                       int i;
+diff --git a/src/engine/log.h b/src/engine/log.h
+index 7dbf2514d..0a79c5377 100644
+--- a/src/engine/log.h
++++ b/src/engine/log.h
+@@ -73,7 +73,11 @@ class Log
+ 
+       std::string getMySqliteLogFileName()
+       {
++#if BOOST_VERSION < 108500
+               return mySqliteLogFileName.directory_string();
++#else
++              return mySqliteLogFileName.string();
++#endif
+       }
+ 
+ private:
+diff --git a/src/gui/qt/qttools/nonqthelper/nonqthelper.cpp 
b/src/gui/qt/qttools/nonqthelper/nonqthelper.cpp
+index 2acfeeb45..bdc625b4a 100644
+--- a/src/gui/qt/qttools/nonqthelper/nonqthelper.cpp
++++ b/src/gui/qt/qttools/nonqthelper/nonqthelper.cpp
+@@ -65,7 +65,15 @@ std::string
+ NonQtHelper::getDataPathStdString(const char *argv0)
+ {
+       boost::filesystem::path startPath(argv0);
++#if BOOST_VERSION < 108500
+       startPath = startPath.remove_leaf();
++#else
++      startPath = startPath.remove_filename();
++#endif
+       startPath /= "data";
++#if BOOST_VERSION < 108500
+       return stringToUtf8(startPath.directory_string());
++#else
++      return stringToUtf8(startPath.string());
++#endif
+ }
+diff --git a/src/net/common/clientstate.cpp b/src/net/common/clientstate.cpp
+index d7fc7285a..9d35e99ff 100644
+--- a/src/net/common/clientstate.cpp
++++ b/src/net/common/clientstate.cpp
+@@ -211,7 +211,11 @@ 
ClientStateStartServerListDownload::Enter(boost::shared_ptr<ClientThread> client
+       } else {
+               // Download the server list.
+               boost::shared_ptr<DownloadHelper> downloader(new 
DownloadHelper);
++#if BOOST_VERSION < 108500
+               downloader->Init(client->GetContext().GetServerListUrl(), 
tmpServerListPath.directory_string());
++#else
++              downloader->Init(client->GetContext().GetServerListUrl(), 
tmpServerListPath.string());
++#endif
+               
ClientStateDownloadingServerList::Instance().SetDownloadHelper(downloader);
+               client->SetState(ClientStateDownloadingServerList::Instance());
+       }
+@@ -303,13 +307,24 @@ 
ClientStateReadingServerList::Enter(boost::shared_ptr<ClientThread> client)
+       path zippedServerListPath(context.GetCacheDir());
+       zippedServerListPath /= 
context.GetServerListUrl().substr(context.GetServerListUrl().find_last_of('/') 
+ 1);
+       path xmlServerListPath;
++#if BOOST_VERSION < 108500
+       if (extension(zippedServerListPath) == ".z") {
+               xmlServerListPath = change_extension(zippedServerListPath, "");
++#else
++      if (zippedServerListPath.extension().string() == ".z") {
++              xmlServerListPath = zippedServerListPath;
++              xmlServerListPath.replace_extension("");
++#endif
+ 
+               // Unzip the file using zlib.
+               try {
++#if BOOST_VERSION < 108500
+                       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);
++#else
++                      std::ifstream 
inFile(zippedServerListPath.string().c_str(), ios_base::in | ios_base::binary);
++                      std::ofstream 
outFile(xmlServerListPath.string().c_str(), ios_base::out | ios_base::trunc);
++#endif
+                       
boost::iostreams::filtering_streambuf<boost::iostreams::input> in;
+                       in.push(boost::iostreams::zlib_decompressor());
+                       in.push(inFile);
+@@ -321,7 +336,11 @@ 
ClientStateReadingServerList::Enter(boost::shared_ptr<ClientThread> client)
+               xmlServerListPath = zippedServerListPath;
+ 
+       // Parse the server address.
++#if BOOST_VERSION < 108500
+       TiXmlDocument doc(xmlServerListPath.directory_string());
++#else
++      TiXmlDocument doc(xmlServerListPath.string());
++#endif
+ 
+       if (doc.LoadFile()) {
+               client->ClearServerInfoMap();
+diff --git a/src/net/common/clientthread.cpp b/src/net/common/clientthread.cpp
+index dee5daf68..e24413d14 100644
+--- a/src/net/common/clientthread.cpp
++++ b/src/net/common/clientthread.cpp
+@@ -977,7 +977,11 @@ ClientThread::GetCacheServerListFileName()
+       size_t pos = serverListUrl.find_last_of('/');
+       if (!GetContext().GetCacheDir().empty() && !serverListUrl.empty() && 
pos != string::npos && ++pos < serverListUrl.length()) {
+               tmpServerListPath /= serverListUrl.substr(pos);
++#if BOOST_VERSION < 108500
+               fileName = tmpServerListPath.directory_string();
++#else
++              fileName = tmpServerListPath.string();
++#endif
+       }
+       return fileName;
+ }
+diff --git a/src/net/common/downloaderthread.cpp 
b/src/net/common/downloaderthread.cpp
+index 56a9526ec..7984cb410 100644
+--- a/src/net/common/downloaderthread.cpp
++++ b/src/net/common/downloaderthread.cpp
+@@ -96,7 +96,11 @@ DownloaderThread::Main()
+                               // Previous download was finished.
+                               if (m_curDownloadData) {
+                                       path 
filepath(m_curDownloadData->filename);
++#if BOOST_VERSION < 108500
+                                       std::ifstream 
instream(filepath.file_string().c_str(), ios_base::in | ios_base::binary);
++#else
++                                      std::ifstream 
instream(filepath.string().c_str(), ios_base::in | ios_base::binary);
++#endif
+                                       // Find out file size.
+                                       // Not fully portable, but works on 
win/linux/mac.
+                                       instream.seekg(0, ios_base::beg);
+@@ -132,7 +136,11 @@ DownloaderThread::Main()
+                               }
+                               if (m_curDownloadData && 
!m_curDownloadData->filename.empty()) {
+                                       path 
filepath(m_curDownloadData->filename);
++#if BOOST_VERSION < 108500
+                                       
m_downloadHelper->Init(m_curDownloadData->address, filepath.file_string());
++#else
++                                      
m_downloadHelper->Init(m_curDownloadData->address, filepath.string());
++#endif
+                                       m_downloadInProgress = true;
+                               }
+                       }
+diff --git a/src/net/common/serverlobbythread.cpp 
b/src/net/common/serverlobbythread.cpp
+index 1cb341eaa..d3964895d 100644
+--- a/src/net/common/serverlobbythread.cpp
++++ b/src/net/common/serverlobbythread.cpp
+@@ -277,7 +277,11 @@ ServerLobbyThread::Init(const string &logDir)
+               boost::filesystem::path logPath(logDir);
+               if (!logDir.empty()) {
+                       logPath /= SERVER_STATISTICS_FILE_NAME;
++#if BOOST_VERSION < 108500
+                       m_statisticsFileName = logPath.directory_string();
++#else
++                      m_statisticsFileName = logPath.string();
++#endif
+                       ReadStatisticsFile();
+               }
+       }
+@@ -1264,7 +1268,11 @@ 
ServerLobbyThread::HandleNetPacketAvatarEnd(boost::shared_ptr<SessionData> sessi
+                               // Init finished - start session.
+                               EstablishSession(session);
+                               LOG_MSG("Client \"" << session->GetClientAddr() 
<< "\" uploaded avatar \""
++#if BOOST_VERSION < 108500
+                                               << 
boost::filesystem::path(avatarFileName).file_string() << "\".");
++#else
++                                              << 
boost::filesystem::path(avatarFileName).string() << "\".");
++#endif
+                       } else
+                               SessionError(session, 
ERR_NET_WRONG_AVATAR_SIZE);
+               }
+diff --git a/src/net/common/uploaderthread.cpp 
b/src/net/common/uploaderthread.cpp
+index f1eefea6c..ecf1436d9 100644
+--- a/src/net/common/uploaderthread.cpp
++++ b/src/net/common/uploaderthread.cpp
+@@ -94,7 +94,11 @@ UploaderThread::Main()
+                                               url += 
filepath.filename().string();
+ #endif
+                                       }
++#if BOOST_VERSION < 108500
+                                       m_uploadHelper->Init(url, 
filepath.file_string(), data.user, data.pwd, data.filesize, data.httpPost);
++#else
++                                      m_uploadHelper->Init(url, 
filepath.string(), data.user, data.pwd, data.filesize, data.httpPost);
++#endif
+                                       m_uploadInProgress = true;
+                               }
+                       }
+diff --git a/src/pokerth_server.cpp b/src/pokerth_server.cpp
+index 450a47e9d..1ee0db80e 100644
+--- a/src/pokerth_server.cpp
++++ b/src/pokerth_server.cpp
+@@ -158,7 +158,11 @@ main(int argc, char *argv[])
+       if (pidFile.empty()) {
+               path tmpPidPath(myConfig->readConfigString("LogDir"));
+               tmpPidPath /= "pokerth.pid";
++#if BOOST_VERSION < 108500
+               pidFile = tmpPidPath.directory_string();
++#else
++              pidFile = tmpPidPath.string();
++#endif
+       }
+       {
+               std::ofstream pidStream(pidFile.c_str(), ios_base::out | 
ios_base::trunc);
diff --git a/system-websocketpp.patch b/system-websocketpp.patch
new file mode 100644
index 0000000..9dc6c84
--- /dev/null
+++ b/system-websocketpp.patch
@@ -0,0 +1,21 @@
+--- pokerth-1.1.2-rc/pokerth_lib.pro~  2024-12-24 10:43:11.653333270 +0100
++++ pokerth-1.1.2-rc/pokerth_lib.pro   2024-12-24 10:43:11.509999936 +0100
+@@ -7,7 +7,7 @@
+ TEMPLATE = lib
+ CODECFORSRC = UTF-8
+ 
+-CONFIG += staticlib thread exceptions rtti stl warn_on
++CONFIG += websocketpp staticlib thread exceptions rtti stl warn_on
+ UI_DIR = uics
+ TARGET = lib/pokerth_lib
+ QMAKE_CLEAN += ./lib/libpokerth_lib.a
+@@ -30,8 +30,7 @@
+               src/engine/local_engine \
+               src/engine/network_engine \
+               src/config \
+-              src/core \
+-              src/third_party/websocketpp
++              src/core
+ 
+ DEPENDPATH += . \
+               src \
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/pokerth.git/commitdiff/a0be16c73e51ddb8545e650eccd38b4a2af37b10

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to