summaryrefslogtreecommitdiff
path: root/games-strategy/wesnoth
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/wesnoth')
-rw-r--r--games-strategy/wesnoth/Manifest3
-rw-r--r--games-strategy/wesnoth/files/wesnoth-1.18.3-boost-1.87.patch175
-rw-r--r--games-strategy/wesnoth/wesnoth-1.18.3.ebuild6
3 files changed, 181 insertions, 3 deletions
diff --git a/games-strategy/wesnoth/Manifest b/games-strategy/wesnoth/Manifest
index 20dd9a4cd91d..1ac33d87429c 100644
--- a/games-strategy/wesnoth/Manifest
+++ b/games-strategy/wesnoth/Manifest
@@ -1,8 +1,9 @@
+AUX wesnoth-1.18.3-boost-1.87.patch 9270 BLAKE2B 92300f2b4df75fd2f1539cb840b0bc04c1d0bbc451c20f87845f60583b87e8f1636abc5df7b3a1a197fa134363a1aedbe21f96fcb0e1c5620ce9ce0f7b1a4a77 SHA512 00d31155a51a7fcab43d9bbdfe1782f193749627739e67fd937b7deca2fc74cf351c83cf5a6e6042a2983e116d1400a06ad48cb18e43f382fb2bf163a11072e6
AUX wesnothd.rc-r1 511 BLAKE2B 57e8b21313e5cb677dcdac3b046caf5b1e5f690f357373c48779afa9ea969de855e8ea4849298963891d0c2b029cc1897d97d0069b5087a1496db9061a468d7f SHA512 609c3c2eb2846735610904bcc913a0db9c8daeedde77da8911ea7e85deec805ba103519785cea1c767444c46df5985c6c630ceed550085ab5527e51ff01d65ab
DIST wesnoth-1.18.3.tar.bz2 461694247 BLAKE2B 1998e2fdff56271dd86c390e3c25dcbaa98b4f131f15584e5d3f2f5866856a69aebf9c8d97b1126601b3e08467a9410f3ba7b53c253737c6bbf62ccb1e9ba96f SHA512 def324c9ed66ac59e2a9d0ab9ab95f00ddab2d31dacb2d0b5cfba42c5acdba210937f7dd6afde8870a387847a6d021a28dffcb04ce513272df6a4b52a626f30a
DIST wesnoth-1.19.5.tar.bz2 509947975 BLAKE2B 26ae05b709a2643af493b98531a8456a57ad725baac31e11b2ab2207b3fbbfe655389d80bae01aece08b14df2046bcb80092eca7691fce5b838b9c3ef9727930 SHA512 e0332cb20469ba74aa60d109a0abf536767c04ce5007fa2ec7512c3e5d88b4fa32aacafb0fb729647dc0eb922fa8846fcbc24ffb681cd59bad8a07e4db0968da
DIST wesnoth-1.19.7.tar.bz2 501064088 BLAKE2B 202f2ed3fcb9810cc3d98bd003ab60ad3e78f199eae2d0fa135455dadc3305f46f154549337386b508472779ed707b27226d15a868705147bd2fc04ffcf91a0c SHA512 d39ecaa1dbea6c547e3767b555c6d1fa9c47dc8a06af0fb8d9171f01822520657c44e12f7bbfe7bd2a696f8b8cecb115e7fb6fff4e5ebc35278cca794b26c3e5
-EBUILD wesnoth-1.18.3.ebuild 2346 BLAKE2B 2b28275cd43c0392a6c763ea60885dfc42ac4841afa64ed5b8cad12994dc6d863e4b4c079f721ad32b2c0ea82a7bfa4dc2aa2b76c808888d72ef4545bcbf7d0f SHA512 4da20189773ed38a24a516bc19b00444b9804319eb3e5687c621d09bd9e1889f66f37f522e19bf1941a8e722e03c36ec65b67a5d53eb4611c9983f368f5f39e7
+EBUILD wesnoth-1.18.3.ebuild 2404 BLAKE2B 75608f36d52f78889c88a0f52cdbe2fceaaf311d61370a4c136bb34a1e9a3595e9a62e0a8df8ba4517ebb713c1ff6903df839591dbdc77e41eb7807f438541c6 SHA512 7eef1a7a456011624775dcd3259d3c2ea9b345685b631d3e1381e9443d6e95e823f0989863ad8087d0cf1b14560125a21b200a133d1147885a83f138dbcc6318
EBUILD wesnoth-1.19.5.ebuild 2346 BLAKE2B 7e6e442c416c5c0b3e700f5eb89fafa037d1cf71ed7ae3d5e2f56d2f30f3f569164c19e88283479769c897f44458e6dd42d65105afcd4bbdb2221994d3d44e79 SHA512 6ac04ec964bd9585734b0d23a0991abe6d73a874e552af08d9cdf5a5dbe046bcbf6673cdad628b4071dcef7f7bdd3618d1df2dac4f913fe11884000aa14ca0e7
EBUILD wesnoth-1.19.7.ebuild 2346 BLAKE2B 7e6e442c416c5c0b3e700f5eb89fafa037d1cf71ed7ae3d5e2f56d2f30f3f569164c19e88283479769c897f44458e6dd42d65105afcd4bbdb2221994d3d44e79 SHA512 6ac04ec964bd9585734b0d23a0991abe6d73a874e552af08d9cdf5a5dbe046bcbf6673cdad628b4071dcef7f7bdd3618d1df2dac4f913fe11884000aa14ca0e7
MISC metadata.xml 475 BLAKE2B fe3a0b92f39b2158ec38fe2d7528463bb243cc44df562f7ad450227b35bab1d59a1638fe1d702cd70358a0137851e08be1878d590afbcc28dd19176b2a7df7fd SHA512 6293671db448eef2a211ae8dbb88624a42ac46712331db441a55d44566e7843f820047dde7936d725fea6d24a8196223e30712ffbd3864e63614f7f849cda6b4
diff --git a/games-strategy/wesnoth/files/wesnoth-1.18.3-boost-1.87.patch b/games-strategy/wesnoth/files/wesnoth-1.18.3-boost-1.87.patch
new file mode 100644
index 000000000000..cba83d57afac
--- /dev/null
+++ b/games-strategy/wesnoth/files/wesnoth-1.18.3-boost-1.87.patch
@@ -0,0 +1,175 @@
+diff --git a/src/server/campaignd/server.cpp b/src/server/campaignd/server.cpp
+index 31a7df8..88a141a 100644
+--- a/src/server/campaignd/server.cpp
++++ b/src/server/campaignd/server.cpp
+@@ -735,7 +735,7 @@ void server::handle_sighup(const boost::system::error_code&, int)
+
+ void server::flush_cfg()
+ {
+- flush_timer_.expires_from_now(std::chrono::minutes(10));
++ flush_timer_.expires_after(std::chrono::minutes(10));
+ flush_timer_.async_wait(std::bind(&server::handle_flush, this, std::placeholders::_1));
+ }
+
+diff --git a/src/server/common/forum_user_handler.cpp b/src/server/common/forum_user_handler.cpp
+index ed689cb..1fbac6e 100644
+--- a/src/server/common/forum_user_handler.cpp
++++ b/src/server/common/forum_user_handler.cpp
+@@ -207,7 +207,7 @@ std::string fuh::get_tournaments(){
+ return conn_.get_tournaments();
+ }
+
+-void fuh::async_get_and_send_game_history(boost::asio::io_service& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content) {
++void fuh::async_get_and_send_game_history(boost::asio::io_context& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content) {
+ boost::asio::post([this, &s, player, player_id, offset, &io_service, search_game_name, search_content_type, search_content] {
+ boost::asio::post(io_service, [player, &s, doc = conn_.get_game_history(player_id, offset, search_game_name, search_content_type, search_content)]{
+ s.send_to_player(player, *doc);
+@@ -235,7 +235,7 @@ void fuh::db_set_oos_flag(const std::string& uuid, int game_id){
+ conn_.set_oos_flag(uuid, game_id);
+ }
+
+-void fuh::async_test_query(boost::asio::io_service& io_service, int limit) {
++void fuh::async_test_query(boost::asio::io_context& io_service, int limit) {
+ boost::asio::post([this, limit, &io_service] {
+ ERR_UH << "async test query starts!";
+ int i = conn_.async_test_query(limit);
+diff --git a/src/server/common/forum_user_handler.hpp b/src/server/common/forum_user_handler.hpp
+index d050f90..f8c2b01 100644
+--- a/src/server/common/forum_user_handler.hpp
++++ b/src/server/common/forum_user_handler.hpp
+@@ -133,7 +133,7 @@ public:
+ * @param search_content_type The content type to query for (ie: scenario)
+ * @param search_content Query for games using this content ID. Supports leading and/or trailing wildcards.
+ */
+- void async_get_and_send_game_history(boost::asio::io_service& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content);
++ void async_get_and_send_game_history(boost::asio::io_context& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content);
+
+ /**
+ * Inserts game related information.
+@@ -203,7 +203,7 @@ public:
+ * @param io_service The boost io_service to use to post the query results back to the main boost::asio thread.
+ * @param limit How many recursions to make in the query.
+ */
+- void async_test_query(boost::asio::io_service& io_service, int limit);
++ void async_test_query(boost::asio::io_context& io_service, int limit);
+
+ /**
+ * Checks whether a forum thread with @a topic_id exists.
+diff --git a/src/server/common/server_base.cpp b/src/server/common/server_base.cpp
+index 2c1a581..0aca915 100644
+--- a/src/server/common/server_base.cpp
++++ b/src/server/common/server_base.cpp
+@@ -41,6 +41,10 @@
+ #ifndef _WIN32
+ #include <boost/asio/read_until.hpp>
+ #endif
++#ifndef BOOST_NO_EXCEPTIONS
++#include <boost/exception/diagnostic_information.hpp>
++#endif
++
+ #include <boost/asio/write.hpp>
+
+ #include <array>
+diff --git a/src/server/common/server_base.hpp b/src/server/common/server_base.hpp
+index 94aac7e..e40b6ca 100644
+--- a/src/server/common/server_base.hpp
++++ b/src/server/common/server_base.hpp
+@@ -30,7 +30,7 @@
+ #include "serialization/unicode_cast.hpp"
+ #endif
+
+-#include <boost/asio/io_service.hpp>
++#include <boost/asio/io_context.hpp>
+ #include <boost/asio/ip/tcp.hpp>
+ #ifndef _WIN32
+ #include <boost/asio/posix/stream_descriptor.hpp>
+@@ -150,7 +150,7 @@ public:
+ protected:
+ unsigned short port_;
+ bool keep_alive_;
+- boost::asio::io_service io_service_;
++ boost::asio::io_context io_service_;
+ boost::asio::ssl::context tls_context_ { boost::asio::ssl::context::sslv23 };
+ bool tls_enabled_ { false };
+ boost::asio::ip::tcp::acceptor acceptor_v6_;
+diff --git a/src/server/common/user_handler.hpp b/src/server/common/user_handler.hpp
+index d8e72f1..24b727f 100644
+--- a/src/server/common/user_handler.hpp
++++ b/src/server/common/user_handler.hpp
+@@ -22,7 +22,7 @@ class config;
+ #include <ctime>
+ #include <string>
+
+-#include <boost/asio/io_service.hpp>
++#include <boost/asio/io_context.hpp>
+
+ #include "server/wesnothd/player_connection.hpp"
+
+@@ -139,13 +139,13 @@ public:
+
+ virtual std::string get_uuid() = 0;
+ virtual std::string get_tournaments() = 0;
+- virtual void async_get_and_send_game_history(boost::asio::io_service& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content) =0;
++ virtual void async_get_and_send_game_history(boost::asio::io_context& io_service, wesnothd::server& s, wesnothd::player_iterator player, int player_id, int offset, std::string& search_game_name, int search_content_type, std::string& search_content) =0;
+ virtual void db_insert_game_info(const std::string& uuid, int game_id, const std::string& version, const std::string& name, int reload, int observers, int is_public, int has_password) = 0;
+ virtual void db_update_game_end(const std::string& uuid, int game_id, const std::string& replay_location) = 0;
+ virtual void db_insert_game_player_info(const std::string& uuid, int game_id, const std::string& username, int side_number, int is_host, const std::string& faction, const std::string& version, const std::string& source, const std::string& current_user, const std::string& leaders) = 0;
+ virtual unsigned long long db_insert_game_content_info(const std::string& uuid, int game_id, const std::string& type, const std::string& name, const std::string& id, const std::string& addon_id, const std::string& addon_version) = 0;
+ virtual void db_set_oos_flag(const std::string& uuid, int game_id) = 0;
+- virtual void async_test_query(boost::asio::io_service& io_service, int limit) = 0;
++ virtual void async_test_query(boost::asio::io_context& io_service, int limit) = 0;
+ virtual bool db_topic_id_exists(int topic_id) = 0;
+ virtual void db_insert_addon_info(const std::string& instance_version, const std::string& id, const std::string& name, const std::string& type, const std::string& version, bool forum_auth, int topic_id, const std::string uploader) = 0;
+ virtual unsigned long long db_insert_login(const std::string& username, const std::string& ip, const std::string& version) = 0;
+diff --git a/src/server/wesnothd/game.cpp b/src/server/wesnothd/game.cpp
+index faeb255..ec95bd4 100644
+--- a/src/server/wesnothd/game.cpp
++++ b/src/server/wesnothd/game.cpp
+@@ -27,6 +27,8 @@
+ #include <iomanip>
+ #include <sstream>
+
++#include <boost/coroutine/exceptions.hpp>
++
+ static lg::log_domain log_server("server");
+ #define ERR_GAME LOG_STREAM(err, log_server)
+ #define WRN_GAME LOG_STREAM(warn, log_server)
+diff --git a/src/server/wesnothd/server.cpp b/src/server/wesnothd/server.cpp
+index 7c4b2a0..587b02a 100644
+--- a/src/server/wesnothd/server.cpp
++++ b/src/server/wesnothd/server.cpp
+@@ -293,14 +293,14 @@ void server::handle_graceful_timeout(const boost::system::error_code& error)
+ process_command("msg All games ended. Shutting down now. Reconnect to the new server instance.", "system");
+ BOOST_THROW_EXCEPTION(server_shutdown("graceful shutdown timeout"));
+ } else {
+- timer_.expires_from_now(std::chrono::seconds(1));
++ timer_.expires_after(std::chrono::seconds(1));
+ timer_.async_wait(std::bind(&server::handle_graceful_timeout, this, std::placeholders::_1));
+ }
+ }
+
+ void server::start_lan_server_timer()
+ {
+- lan_server_timer_.expires_from_now(std::chrono::seconds(lan_server_));
++ lan_server_timer_.expires_after(std::chrono::seconds(lan_server_));
+ lan_server_timer_.async_wait([this](const boost::system::error_code& ec) { handle_lan_server_shutdown(ec); });
+ }
+
+@@ -2120,7 +2120,7 @@ void server::shut_down_handler(
+ acceptor_v6_.close();
+ acceptor_v4_.close();
+
+- timer_.expires_from_now(std::chrono::seconds(10));
++ timer_.expires_after(std::chrono::seconds(10));
+ timer_.async_wait(std::bind(&server::handle_graceful_timeout, this, std::placeholders::_1));
+
+ process_command(
+@@ -2151,7 +2151,7 @@ void server::restart_handler(const std::string& issuer_name,
+ graceful_restart = true;
+ acceptor_v6_.close();
+ acceptor_v4_.close();
+- timer_.expires_from_now(std::chrono::seconds(10));
++ timer_.expires_after(std::chrono::seconds(10));
+ timer_.async_wait(std::bind(&server::handle_graceful_timeout, this, std::placeholders::_1));
+
+ start_new_server();
diff --git a/games-strategy/wesnoth/wesnoth-1.18.3.ebuild b/games-strategy/wesnoth/wesnoth-1.18.3.ebuild
index 4b40f0539945..f12b18fb00fc 100644
--- a/games-strategy/wesnoth/wesnoth-1.18.3.ebuild
+++ b/games-strategy/wesnoth/wesnoth-1.18.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,7 +6,7 @@ EAPI=8
inherit cmake flag-o-matic xdg
DESCRIPTION="Battle for Wesnoth - A fantasy turn-based strategy game"
-HOMEPAGE="http://www.wesnoth.org
+HOMEPAGE="https://www.wesnoth.org
https://github.com/wesnoth/wesnoth"
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
@@ -43,6 +43,8 @@ BDEPEND="
virtual/pkgconfig
"
+PATCHES=( "${FILESDIR}"/${PN}-1.18.3-boost-1.87.patch )
+
src_prepare() {
cmake_src_prepare