commit:     11c14efa0f7c41e5d8bf5ffec38957bcc583f827
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 21 21:09:10 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 21 21:09:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11c14efa

games-strategy/warzone2100: add 4.3.3

Signed-off-by: Sam James <sam <AT> gentoo.org>

 games-strategy/warzone2100/Manifest                |   1 +
 .../files/warzone2100-4.3.3-gcc13.patch            |  24 +++++
 .../warzone2100/warzone2100-4.3.3.ebuild           | 118 +++++++++++++++++++++
 3 files changed, 143 insertions(+)

diff --git a/games-strategy/warzone2100/Manifest 
b/games-strategy/warzone2100/Manifest
index 581f780c01ed..d41cd02ad9b6 100644
--- a/games-strategy/warzone2100/Manifest
+++ b/games-strategy/warzone2100/Manifest
@@ -1,3 +1,4 @@
 DIST warzone2100-4.2.7.tar.xz 338687576 BLAKE2B 
b504f8ed6b5c1b040b4368429394b7f077c279979ef7847734eeb333512fc374799c73119924fba206a6fc925db54697569a756e113d0a322dd46768c80d0b72
 SHA512 
af538f3bdf6ec543e5f919377c95c35c730fa6efa5c3ea8d140347595dd9f8056677d4b494677ea20c98da305e0fb588cdb00a3da1c497f96edc58ca8772e45b
 DIST warzone2100-4.3.1.tar.xz 320493184 BLAKE2B 
98f3fb13e36f3455532f0f054eaddb495b1f5fbf55fa30f356ab7d315536cd198697b0a084b47c5e1cb9ec0a5cc4bc0159be45669317469bdd2f7b24a62d46d2
 SHA512 
914d18a8226c11faa8bd03ab5b8f0a52e6e2b8531db501244ceb27f19b76209cbf668e51be59ce35b7203f74c5e62ad78e02ef0fb8505243948fa681f25d583e
+DIST warzone2100-4.3.3.tar.xz 320439712 BLAKE2B 
15d29a0d7dc8c10b41dabf210e2113f079731e7976932a44054fa86b90dddee68e46faa5e4cf1d25ba57fc5d14c6ddedaea0f1544deb5755d19ca2ff02b7cb56
 SHA512 
46ccf2720d09481dfc89c1e3abb9802a379d1bfe0b3823566b51f2ea177fd793653d5b2592f07c724f0121cafd014c1ea6226b8c2bc22ec12ac3ca1bfaf298f4
 DIST warzone2100-videos-2.2.wz 571937134 BLAKE2B 
60b70a71bd920e2d72ded5d519b17db2f3db4b0289edadeb58059a21aba7038b95219dc44cb807754461d1a9bdca60f0d7698be68622b8bd64a55efa949622d3
 SHA512 
ca1a1af51296afdaca137114821508c5783f077090e665eae0f6df895855f57c43f84434706309e819417f5f35d1c649bd14e96dc9fbbb1252d30a4f9a223cf6

diff --git a/games-strategy/warzone2100/files/warzone2100-4.3.3-gcc13.patch 
b/games-strategy/warzone2100/files/warzone2100-4.3.3-gcc13.patch
new file mode 100644
index 000000000000..a9b8c42cfe00
--- /dev/null
+++ b/games-strategy/warzone2100/files/warzone2100-4.3.3-gcc13.patch
@@ -0,0 +1,24 @@
+https://github.com/Warzone2100/warzone2100/pull/3090
+
+From 0b8eed53d99c0491ffbcd903463a3b6eb0081525 Mon Sep 17 00:00:00 2001
+From: Sam James <[email protected]>
+Date: Sat, 21 Jan 2023 21:00:02 +0000
+Subject: [PATCH] Fix build with GCC 13 (add missing <cstdint> include)
+
+GCC 13 (as usual for new compiler releases) shuffles around some
+internal includes and so <cstdint> is no longer transitively included.
+
+Explicitly include <cstdint> for uint32_t.
+
+Signed-off-by: Sam James <[email protected]>
+--- a/lib/framework/wzstring.h
++++ b/lib/framework/wzstring.h
+@@ -20,6 +20,7 @@
+ #ifndef _LIB_FRAMEWORK_WZSTRING_H
+ #define _LIB_FRAMEWORK_WZSTRING_H
+ 
++#include <cstdint>
+ #include <string>
+ #include <vector>
+ #include <locale>
+

diff --git a/games-strategy/warzone2100/warzone2100-4.3.3.ebuild 
b/games-strategy/warzone2100/warzone2100-4.3.3.ebuild
new file mode 100644
index 000000000000..2e921f4e824e
--- /dev/null
+++ b/games-strategy/warzone2100/warzone2100-4.3.3.ebuild
@@ -0,0 +1,118 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="af_ZA bg_BG ca_ES cs da de el en_GB eo es et_EE fa_IR fi fr fy ga 
he_IL hr hu id_ID id it ko la lt nb nl pl pt_BR pt ro ru sk sl tr tt_RU uk_UA 
zh_CN zh_TW"
+inherit cmake plocale xdg
+
+MY_PV=$(ver_cut 1-2)
+VIDEOS_PV=2.2
+VIDEOS_P=${PN}-videos-${VIDEOS_PV}.wz
+DESCRIPTION="3D real-time strategy game"
+HOMEPAGE="https://wz2100.net/";
+SRC_URI="mirror://sourceforge/warzone2100/releases/${PV}/${PN}_src.tar.xz -> 
${P}.tar.xz
+       videos? ( 
mirror://sourceforge/warzone2100/warzone2100/Videos/${VIDEOS_PV}/high-quality-en/sequences.wz
 -> ${VIDEOS_P} )"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2+ CC-BY-SA-3.0 public-domain vulkan? ( GPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# Upstream requested debug support
+IUSE="debug discord nls videos vulkan"
+
+CDEPEND="
+       >=dev-games/physfs-2[zip]
+       dev-db/sqlite:3
+       >=dev-libs/libsodium-1.0.14:=
+       media-libs/freetype:2
+       media-libs/harfbuzz:=
+       media-libs/libogg
+       media-libs/libpng:=
+       media-libs/libsdl2[opengl,video,X]
+       media-libs/libtheora
+       media-libs/libvorbis
+       media-libs/openal
+       net-libs/miniupnpc:=
+       net-misc/curl
+       sys-libs/zlib
+       nls? ( virtual/libintl )
+       vulkan? ( media-libs/libsdl2:=[vulkan] )
+"
+DEPEND="
+       ${CDEPEND}
+       dev-libs/fribidi
+       media-libs/fontconfig
+"
+RDEPEND="
+       ${CDEPEND}
+       media-fonts/dejavu
+"
+BDEPEND="
+       app-arch/zip
+       app-text/asciidoc
+       virtual/pkgconfig
+       nls? ( sys-devel/gettext )
+"
+
+HTML_DOCS=( doc/quickstartguide.html doc/docbook-xsl.css 
doc/ScriptingManual.htm )
+DOCS=( README.md doc/images doc/Scripting.md doc/js-globals.md )
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-4.1.3-no-compress-manpages.patch
+       "${FILESDIR}"/${PN}-4.3.3-gcc13.patch
+)
+
+src_unpack() {
+       unpack ${P}.tar.xz
+}
+
+src_prepare() {
+       sed -i -e 's/#top_builddir/top_builddir/' po/Makevars || die
+
+       # Delete translations we're not using
+       cleanup_po() {
+               local locale=${1}
+               einfo "Cleaning up disabled locale: ${locale}"
+               rm po/${locale}.po || die
+       }
+
+       plocale_for_each_disabled_locale cleanup_po
+
+       cmake_src_prepare
+}
+
+src_configure() {
+       # TODO: unbundle basisu (needs packaging)
+       # TODO: unbundle nlohmann-json
+       # TODO: unbundle fmt
+       local mycmakeargs=(
+               -DWZ_DISTRIBUTOR="Gentoo Linux"
+               -DWZ_ENABLE_WARNINGS_AS_ERRORS=OFF
+               -DWZ_ENABLE_BACKEND_VULKAN=$(usex vulkan)
+               -DBUILD_SHARED_LIBS=OFF
+               -DENABLE_NLS=$(usex nls)
+               -DENABLE_DISCORD=$(usex discord)
+       )
+
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+
+       asciidoc -b html5 doc/quickstartguide.asciidoc || die
+}
+
+src_install() {
+       cmake_src_install
+
+       # We cover licencing within the ebuild itself
+       rm "${ED}"/usr/share/doc/${PF}/COPYING* \
+               "${ED}"/usr/share/doc/${PF}/copyright || die
+
+       if use videos ; then
+               insinto /usr/share/${PN}
+               newins "${DISTDIR}"/${VIDEOS_P} sequences.wz
+       fi
+}

Reply via email to