commit: 92aeba092b5b096a4db323465fc0620c25d610f0 Author: James Le Cuirot <chewi <AT> gentoo <DOT> org> AuthorDate: Sun Jun 16 20:27:40 2024 +0000 Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org> CommitDate: Sun Jun 16 20:34:03 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92aeba09
games-strategy/s25rttr: Fix compatibility with miniupnpc 2.2.8 with patch Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org> .../s25rttr/files/s25rttr-0.9.5-miniupnpc.patch | 34 ++++++++++++++++++++++ ...25rttr-0.9.5.ebuild => s25rttr-0.9.5-r1.ebuild} | 6 ++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/games-strategy/s25rttr/files/s25rttr-0.9.5-miniupnpc.patch b/games-strategy/s25rttr/files/s25rttr-0.9.5-miniupnpc.patch new file mode 100644 index 000000000000..e09c258e2b41 --- /dev/null +++ b/games-strategy/s25rttr/files/s25rttr-0.9.5-miniupnpc.patch @@ -0,0 +1,34 @@ +From c7b6e56337cbb03d9ed3aa601cb6e79e7858249a Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <[email protected]> +Date: Sun, 16 Jun 2024 21:22:08 +0100 +Subject: [PATCH] Support miniupnpc API version 18 (release 2.2.8) and adjust + status check + +getValidIGD was treating non-zero return codes as successful, but only 1 +should really be considered successful in this context. + +This maintains compatibility with earlier versions. +--- + libs/network/src/UPnP_Other.cpp | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/external/libutil/libs/network/src/UPnP_Other.cpp b/libs/network/src/UPnP_Other.cpp +index d684b9c..8fc9418 100644 +--- a/external/libutil/libs/network/src/UPnP_Other.cpp ++++ b/external/libutil/libs/network/src/UPnP_Other.cpp +@@ -91,7 +91,11 @@ inline DeviceList discover(int delay, const char* multicastIf = nullptr, const c + inline bool getValidIGD(const DeviceList& deviceList, Urls& urls, IGDdatas& data, std::string& lanAddr) + { + lanAddr.resize(15); // Format: aaa.bbb.ccc.ddd +- return UPNP_GetValidIGD(deviceList, &urls, &data, &lanAddr[0], lanAddr.size()) != 0; ++#if (MINIUPNPC_API_VERSION >= 18) ++ return UPNP_GetValidIGD(deviceList, &urls, &data, &lanAddr[0], lanAddr.size(), NULL, 0) == 1; ++#else ++ return UPNP_GetValidIGD(deviceList, &urls, &data, &lanAddr[0], lanAddr.size()) == 1; ++#endif + } + + inline void addPortMapping(const char* controlURL, const char* servicetype, const std::string& extPort, +-- +2.45.1 + diff --git a/games-strategy/s25rttr/s25rttr-0.9.5.ebuild b/games-strategy/s25rttr/s25rttr-0.9.5-r1.ebuild similarity index 96% rename from games-strategy/s25rttr/s25rttr-0.9.5.ebuild rename to games-strategy/s25rttr/s25rttr-0.9.5-r1.ebuild index 1184da066c3a..439ea5525533 100644 --- a/games-strategy/s25rttr/s25rttr-0.9.5.ebuild +++ b/games-strategy/s25rttr/s25rttr-0.9.5-r1.ebuild @@ -19,14 +19,15 @@ IUSE="test" RESTRICT="!test? ( test )" REQUIRED_USE="${LUA_REQUIRED_USE}" -RDEPEND="${LUA_DEPS} +RDEPEND=" + ${LUA_DEPS} app-arch/bzip2 dev-libs/boost:=[nls] >=media-libs/libsamplerate-0.1.9 >=media-libs/libsdl2-2.0.10-r2[opengl,sound,video] media-libs/libsndfile media-libs/sdl2-mixer[vorbis,wav] - net-libs/miniupnpc + net-libs/miniupnpc:= virtual/opengl " @@ -44,6 +45,7 @@ PATCHES=( "${FILESDIR}"/${PN}-0.9.0_pre20200723-cmake_lua_version.patch "${FILESDIR}"/${PN}-0.9.5-gcc-13.patch "${FILESDIR}"/${PN}-0.9.5-boost.patch + "${FILESDIR}"/${PN}-0.9.5-miniupnpc.patch ) # Build type is checked but blank is valid.
