summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-01-21 21:09:10 +0000
committerSam James <sam@gentoo.org>2023-01-21 21:09:23 +0000
commit11c14efa0f7c41e5d8bf5ffec38957bcc583f827 (patch)
tree3b1e43372493135bc86f040bbcf75fa8836860e0 /games-strategy
parentdev-ml/ocaml-process: fix test (diff)
downloadgentoo-11c14efa0f7c41e5d8bf5ffec38957bcc583f827.tar.gz
gentoo-11c14efa0f7c41e5d8bf5ffec38957bcc583f827.tar.bz2
gentoo-11c14efa0f7c41e5d8bf5ffec38957bcc583f827.zip
games-strategy/warzone2100: add 4.3.3
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'games-strategy')
-rw-r--r--games-strategy/warzone2100/Manifest1
-rw-r--r--games-strategy/warzone2100/files/warzone2100-4.3.3-gcc13.patch24
-rw-r--r--games-strategy/warzone2100/warzone2100-4.3.3.ebuild118
3 files changed, 143 insertions, 0 deletions
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 <sam@gentoo.org>
+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 <sam@gentoo.org>
+--- 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
+}