commit: 6b4865a1287c56951646a800bec27e406d0e6e49 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Tue Aug 12 20:55:52 2025 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Tue Aug 12 21:06:34 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b4865a1
games-fps/worldofpadman: update EAPI 7 -> 8, fix build issues, style Closes: https://bugs.gentoo.org/921029 Closes: https://bugs.gentoo.org/944329 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> games-fps/worldofpadman/Manifest | 1 + .../files/worldofpadman-1.6-c23.patch | 75 +++++++++++++++ .../worldofpadman/worldofpadman-1.6-r4.ebuild | 105 +++++++++++++++++++++ 3 files changed, 181 insertions(+) diff --git a/games-fps/worldofpadman/Manifest b/games-fps/worldofpadman/Manifest index 9422ff6081dc..180e0ba9fd81 100644 --- a/games-fps/worldofpadman/Manifest +++ b/games-fps/worldofpadman/Manifest @@ -1,2 +1,3 @@ DIST wop-1.5-unified.zip 947290087 BLAKE2B 5fb87cde661882fc095376012d9aca134d6399b4cedd4f3c78b739dd19e126360070278045d74c3318306e17490338111b8621e1c543b46e6bbecfbcd3658675 SHA512 fea0207efadf15afab7001227e27126aef4a673bd478dccb513c3011d0811074b2788083862f07e2f02f1a80ccb57a45ff64de8de155d8f8f7f1ab53ecf2402b DIST wop-1.5.x-to-1.6-patch-unified.zip 122204892 BLAKE2B a0f9feb04a15ec04dd64dbacdf5a158738d625651b2293bc8b3740067e849f33cdd144bce6afd11914524d89fe4bcfd48dbcbc455e51017b1216439e9bae484a SHA512 a45018bd79e9e23c57bcaf692fa14c323671103558caad6acb794c2990cc5fe9cc8bdbe6a6c8254c4560d81eb59f5e3b9a6800a61b21a15870c4439f7179d936 +DIST worldofpadman-1.6-bison-3.patch.xz 14284 BLAKE2B 9083243d12f59067c796c466e98061f601cf8fd07b9dd12718fd22ff1a9694fb57f2c55e204cddbd035209c9b7526f5b7297e53f742cf01a19a3cd0df491c5a8 SHA512 a8d54ed6041a3907e9d5fa2c61046e33022a1a80e10bf18db2140d8dfab42173f2fbdebcadf707f81d21395a574e68a20829170ca2067f1434874ea5856e4cce diff --git a/games-fps/worldofpadman/files/worldofpadman-1.6-c23.patch b/games-fps/worldofpadman/files/worldofpadman-1.6-c23.patch new file mode 100644 index 000000000000..b060afcf1641 --- /dev/null +++ b/games-fps/worldofpadman/files/worldofpadman-1.6-c23.patch @@ -0,0 +1,75 @@ +From 5604ddf69b47e314150191c56a04b7009d885160 Mon Sep 17 00:00:00 2001 +From: Tim Angus <[email protected]> +Date: Sat, 8 Mar 2025 13:00:48 +0000 +Subject: [PATCH] Rename LCC constexpr function to constantexpr, avoiding C23 + keyword clash + +fixes #349 +--- + code/tools/lcc/src/c.h | 2 +- + code/tools/lcc/src/init.c | 2 +- + code/tools/lcc/src/simp.c | 4 ++-- + code/tools/lcc/src/stmt.c | 2 +- + 4 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/code/tools/lcc/src/c.h b/code/tools/lcc/src/c.h +index d8560a020..2260141e3 100644 +--- a/code/tools/lcc/src/c.h ++++ b/code/tools/lcc/src/c.h +@@ -529,7 +529,7 @@ extern int process(char *); + extern int findfunc(char *, char *); + extern int findcount(char *, int, int); + +-extern Tree constexpr(int); ++extern Tree constantexpr(int); + extern int intexpr(int, int); + extern Tree simplify(int, Type, Tree, Tree); + extern int ispow2(unsigned long u); +diff --git a/code/tools/lcc/src/init.c b/code/tools/lcc/src/init.c +index 64d73d319..972abf530 100644 +--- a/code/tools/lcc/src/init.c ++++ b/code/tools/lcc/src/init.c +@@ -190,7 +190,7 @@ static int initstruct(int len, Type ty, int lev) { + return n; + } + +-/* initializer - constexpr | { constexpr ( , constexpr )* [ , ] } */ ++/* initializer - constantexpr | { constantexpr ( , constantexpr )* [ , ] } */ + Type initializer(Type ty, int lev) { + int n = 0; + Tree e; +diff --git a/code/tools/lcc/src/simp.c b/code/tools/lcc/src/simp.c +index 9f4e3ecc3..50e83e484 100644 +--- a/code/tools/lcc/src/simp.c ++++ b/code/tools/lcc/src/simp.c +@@ -167,7 +167,7 @@ static int subi(long x, long y, long min, long max, int needconst) { + static int subd(double x, double y, double min, double max, int needconst) { + return addd(x, -y, min, max, needconst); + } +-Tree constexpr(int tok) { ++Tree constantexpr(int tok) { + Tree p; + + needconst++; +@@ -177,7 +177,7 @@ Tree constexpr(int tok) { + } + + int intexpr(int tok, int n) { +- Tree p = constexpr(tok); ++ Tree p = constantexpr(tok); + + needconst++; + if (p->op == CNST + I || p->op == CNST + U) +diff --git a/code/tools/lcc/src/stmt.c b/code/tools/lcc/src/stmt.c +index fe83e21f8..a65efc0ec 100644 +--- a/code/tools/lcc/src/stmt.c ++++ b/code/tools/lcc/src/stmt.c +@@ -119,7 +119,7 @@ + static char stop[] = { IF, ID, 0 }; + Tree p; + t = gettok(); +- p = constexpr(0); ++ p = constantexpr(0); + if (generic(p->op) == CNST && isint(p->type)) { + if (swp) { + needconst++; diff --git a/games-fps/worldofpadman/worldofpadman-1.6-r4.ebuild b/games-fps/worldofpadman/worldofpadman-1.6-r4.ebuild new file mode 100644 index 000000000000..f3d6af6b0180 --- /dev/null +++ b/games-fps/worldofpadman/worldofpadman-1.6-r4.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop + +DESCRIPTION="Cartoon style multiplayer first-person shooter" +HOMEPAGE="https://worldofpadman.net/" +SRC_URI="https://downloads.sourceforge.net/${PN}/wop-1.5-unified.zip + https://downloads.sourceforge.net/${PN}/wop-1.5.x-to-1.6-patch-unified.zip + https://dev.gentoo.org/~asturm/distfiles/${P}-bison-3.patch.xz" +S="${WORKDIR}/${P}_svn2178-src" + +LICENSE="GPL-2 worldofpadman" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+curl dedicated maps +openal +theora +vorbis" + +RDEPEND=" + sys-libs/zlib + !dedicated? ( + media-libs/libjpeg-turbo + media-libs/libsdl[joystick,opengl,video,X] + >=media-libs/speex-1.2.0 + media-libs/speexdsp + virtual/glu + virtual/opengl + curl? ( net-misc/curl ) + openal? ( media-libs/openal ) + theora? ( + media-libs/libogg + media-libs/libtheora:= + ) + vorbis? ( media-libs/libvorbis ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND="app-arch/unzip" + +DOCS=( id-readme.txt IOQ3-README voip-readme.txt ../XTRAS/{changelog.txt,sounds_readme.txt} ) + +PATCHES=( + "${FILESDIR}"/${P}-gentoo.patch + "${WORKDIR}"/${P}-bison-3.patch # bug 921029, in 1.6.1 + "${FILESDIR}"/${P}-c23.patch # bug 944329, git main +) + +src_unpack() { + unpack ${A} + unzip XTRAS/"editing files"/${P}-src.zip +} + +src_prepare() { + default + sed -i \ + -e 's:JPEG_LIB_VERSION < 80:JPEG_LIB_VERSION < 62:' \ + code/renderer/tr_image_jpg.c || die #479652 +} + +src_compile() { + local arch + + if use amd64 ; then + arch=x86_64 + elif use x86 ; then + arch=i386 + fi + + local myemakeargs=( + V=1 + ARCH=${arch} + BUILD_CLIENT=$(use dedicated && echo 0) + DEFAULT_BASEDIR=/usr/share/${PN} + OPTIMIZE= + USE_CURL=$(usex curl 1 0) + USE_CURL_DLOPEN=0 + USE_OPENAL=$(usex openal 1 0) + USE_OPENAL_DLOPEN=0 + USE_CODEC_VORBIS=$(usex vorbis 1 0) + USE_CIN_THEORA=$(usex theora 1 0) + USE_RENDERER_DLOPEN=0 + USE_INTERNAL_ZLIB=0 + USE_INTERNAL_JPEG=0 + USE_INTERNAL_SPEEX=0 + ) + + emake ${myemakeargs[@]} +} + +src_install() { + newbin build/release-*/wopded.* ${PN}-ded + + if ! use dedicated ; then + newbin build/release-*/wop.* ${PN} + newicon misc/quake3.png ${PN}.png + make_desktop_entry ${PN} "World of Padman" + fi + + insinto /usr/share/${PN} + doins -r ../wop + + local HTML_DOCS=( ../XTRAS/{readme,readme.html} ) + einstalldocs +}
