public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Conrad Kostecki" <conikost@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: games-fps/eduke32/
Date: Thu, 28 Mar 2024 14:10:09 +0000 (UTC)	[thread overview]
Message-ID: <1711634979.96231980be50c2ff3ce2b82d82fcdbda438c2306.conikost@gentoo> (raw)

commit:     96231980be50c2ff3ce2b82d82fcdbda438c2306
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 28 14:01:42 2024 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Mar 28 14:09:39 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96231980

games-fps/eduke32: add 20240316.10564

Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 games-fps/eduke32/Manifest                      |   1 +
 games-fps/eduke32/eduke32-20240316.10564.ebuild | 218 ++++++++++++++++++++++++
 2 files changed, 219 insertions(+)

diff --git a/games-fps/eduke32/Manifest b/games-fps/eduke32/Manifest
index b54cacce835e..b89c887d6fad 100644
--- a/games-fps/eduke32/Manifest
+++ b/games-fps/eduke32/Manifest
@@ -7,3 +7,4 @@ DIST duke3d_xxx-1.33.zip 26586453 BLAKE2B 7e3c46172d3db1b2eb49eb07f243a9ead4f260
 DIST eduke32_classic.png 5129 BLAKE2B 332ad44b7f6b4f51362387aa6870e7db54423ca5a1f0586cb5019322fb72317d8e88e0bbf46ac89b56290db7e2e4a8442179a6eb87a615fd741b5f00ce96a1c8 SHA512 b41dece8f1ddcadde3367a83f6029ffdc5805811b40380e270169684fb3b368258bd8caeb55623dadffb6fb9d72faf9a3d75907722623f4fac94a4347f8ce833
 DIST eduke32_src_20231007-10494-17844a2f6.tar.xz 19190776 BLAKE2B 87652f3705efb66d7777427307de0fa91e3b4bc221e75bb16d8cecdeb91e1f9f26addbc2c49dcc703bc4589f747854c4978cbd53ac4fc954d2e0eb8e45218472 SHA512 4f3cea4e84630a8ec9c125d7b3b0cba12da8d4b6879a757165a59a7fa7bcda32dd16a471560859f7ea5951d8e475fe5d1414bdc3eec05ec765f79fed405a8a9d
 DIST eduke32_src_20231224-10548-842047589.tar.xz 19149340 BLAKE2B 28fad72a934b1f8b008d949c447fe5180496acb8aa6d511a071c82119c8aa094fa1ee0d990c7ed58999ab67c3887c38d3f1d410bc983aea4766c7ee9b68032c1 SHA512 bfbaf9c4529d8e187b277f1fb4a93d56b7480fc54ebfdc1773c20e8d6e562192b7256a9b3f470d42687cdf0b2225537a3a17f96cb7a3e7a638898545073943b2
+DIST eduke32_src_20240316-10564-0bc78c53d.tar.xz 19232976 BLAKE2B 321183f3c41edcdcff1b72b91974e1a338eabaa42a7b34abff562b2f22c69fcd3cb5bacef9a5776328d6c66dba7267cd94b4c57ad642c29a23d20039bc0702d7 SHA512 111a86be4a516638b2e54883cc4af1a99346cdd410acaecc3ab5feed25a5799c8531b64a56f10e10efc987611801c1c807fd6161098f9e36674071d4cdaf648b

diff --git a/games-fps/eduke32/eduke32-20240316.10564.ebuild b/games-fps/eduke32/eduke32-20240316.10564.ebuild
new file mode 100644
index 000000000000..b4ffbd52df70
--- /dev/null
+++ b/games-fps/eduke32/eduke32-20240316.10564.ebuild
@@ -0,0 +1,218 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs xdg-utils
+
+EGIT_COMMIT="0bc78c53d"
+MY_BUILD="$(ver_cut 2)"
+MY_DATE="$(ver_cut 1)"
+MY_PV_HRP="5.4"
+MY_PV_OFFENSIVE_XXX="1.33"
+MY_PV_OPL="2.01"
+MY_PV_PSX="1.11"
+MY_PV_SC55="4.02"
+MY_PV_VOXELS="1.21"
+
+DESCRIPTION="An open source engine port of the classic PC first person shooter Duke Nukem 3D"
+HOMEPAGE="http://www.eduke32.com/"
+SRC_URI="
+	http://dukeworld.com/eduke32/synthesis/${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}/${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.tar.xz
+	http://www.eduke32.com/images/eduke32_classic.png
+	hrp? ( http://www.duke4.org/files/nightfright/hrp/duke3d_hrp.zip -> duke3d_hrp-${MY_PV_HRP}.zip )
+	offensive? ( http://www.duke4.org/files/nightfright/related/duke3d_xxx.zip -> duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip )
+	opl? ( https://www.moddb.com/downloads/mirror/95750/102/ce9e8f422c6cccdb297852426e96740a -> duke3d_musopl-${MY_PV_OPL}.zip )
+	psx? ( http://www.duke4.org/files/nightfright/related/duke3d_psx.zip -> duke3d_psx-${MY_PV_PSX}.zip )
+	sc-55? ( http://www.duke4.org/files/nightfright/music/duke3d_music-sc55.zip -> duke3d_music-sc55-${MY_PV_SC55}.zip )
+	voxels? ( https://www.dropbox.com/s/yaxfahyvskyvt4r/duke3d_voxels.zip -> duke3d_voxels-${MY_PV_VOXELS}.zip )
+"
+S="${WORKDIR}/${PN}_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}"
+
+LICENSE="BUILDLIC GPL-2 HRP"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="duke3d fluidsynth gtk hrp offensive opengl opl png psx sc-55 server sdk timidity tools voidsw voxels vpx xmp"
+REQUIRED_USE="
+	hrp? ( duke3d !voxels )
+	offensive? ( duke3d )
+	opl? ( duke3d !sc-55 )
+	psx? ( duke3d )
+	sc-55? ( duke3d !opl )
+	voxels? ( !hrp )
+	vpx? ( opengl )
+"
+
+# There are no tests,
+# instead it tries to build a test game, which does not compile
+RESTRICT="bindist test"
+
+RDEPEND="
+	media-libs/flac:=
+	media-libs/libogg
+	media-libs/libsdl2[alsa,joystick,opengl?,sound,video]
+	media-libs/libvorbis
+	media-libs/sdl2-mixer[flac,fluidsynth?,midi,timidity?,vorbis]
+	sys-libs/zlib
+	gtk? ( x11-libs/gtk+:2 )
+	opengl? (
+		virtual/glu
+		virtual/opengl
+	)
+	png? ( media-libs/libpng:0= )
+	vpx? ( media-libs/libvpx:= )
+	xmp? ( media-libs/exempi:2= )
+"
+
+DEPEND="
+	${RDEPEND}
+	timidity? ( media-sound/timidity++ )
+"
+
+BDEPEND="
+	app-arch/unzip
+	x86? ( dev-lang/nasm )
+"
+
+PDEPEND="duke3d? ( games-fps/duke3d-data )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-20200505.8904-gcc10.patch"
+	"${FILESDIR}/${PN}-20220204.9957-log-to-tmpdir.patch"
+	"${FILESDIR}/${PN}-20230926.10459-search-duke3d-path.patch"
+)
+
+src_unpack() {
+	# Extract only the eduke32 archive
+	unpack ${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.tar.xz
+
+	# Unpack only the documentation
+	if use hrp; then
+		unzip -q "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip hrp_readme.txt hrp_todo.txt || die
+	fi
+	if use offensive; then
+		unzip -q "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip xxx_readme.txt || die
+	fi
+	if use opl; then
+		unzip -q "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip readme.txt || die
+		mv readme.txt opl_readme.txt || die
+	fi
+	if use sc-55; then
+		unzip -q "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip readme/music_readme.txt || die
+	fi
+	if use voxels; then
+		unzip -q "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip voxelpack_readme.txt || die
+	fi
+}
+
+src_compile() {
+	local myemakeopts=(
+		ALLOCACHE_AS_MALLOC=0
+		AS="$(tc-getAS)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+		CLANG=0
+		CPLUSPLUS=1
+		CUSTOMOPT=""
+		DEBUGANYWAY=0
+		F_JUMP_TABLES=""
+		FORCEDEBUG=0
+		HAVE_FLAC=1
+		HAVE_GTK2=$(usex gtk 1 0)
+		HAVE_XMP=$(usex xmp 1 0)
+		LINKED_GTK=$(usex gtk 1 0)
+		LTO=1
+		LUNATIC=0
+		KRANDDEBUG=0
+		MEMMAP=0
+		MIXERTYPE=SDL
+		NETCODE=$(usex server 1 0)
+		NOASM=0
+		OPTLEVEL=0
+		OPTOPT=""
+		PACKAGE_REPOSITORY=1
+		POLYMER=$(usex opengl 1 0)
+		PRETTY_OUTPUT=0
+		PROFILER=0
+		RELEASE=1
+		RENDERTYPE=SDL
+		SDL_TARGET=2
+		SIMPLE_MENU=0
+		STRIP=""
+		STANDALONE=0
+		STARTUP_WINDOW=$(usex gtk 1 0)
+		USE_OPENGL=$(usex opengl 1 0)
+		USE_LIBVPX=$(usex vpx 1 0)
+		USE_LIBPNG=$(usex png 1 0)
+		USE_LUAJIT_2_1=0
+		WITHOUT_GTK=$(usex gtk 0 1)
+	)
+
+	emake "${myemakeopts[@]}"
+
+	use tools && emake utils "${myemakeopts[@]}"
+	use voidsw && emake sw "${myemakeopts[@]}"
+}
+
+src_install() {
+	dobin eduke32 mapster32 "${FILESDIR}"/eduke32-bin
+	use voidsw && dobin voidsw "${FILESDIR}"/voidsw-bin
+
+	if use tools; then
+		local tools=(
+			arttool
+			bsuite
+			cacheinfo
+			generateicon
+			givedepth
+			ivfrate
+			kextract
+			kgroup
+			kmd2tool
+			makesdlkeytrans
+			map2stl
+			md2tool
+			mkpalette
+			transpal
+			unpackssi
+			wad2art
+			wad2map
+		)
+
+		dobin "${tools[@]}"
+	fi
+
+	keepdir /usr/share/games/eduke32
+	insinto /usr/share/games/eduke32
+
+	use hrp && doins "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip
+	use offensive && doins "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip
+	use opl && doins "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip
+	use psx && doins "${DISTDIR}"/duke3d_psx-${MY_PV_PSX}.zip
+	use sc-55 && doins "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip
+	use sdk && doins -r package/sdk
+	use voxels && doins "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip
+
+	newicon "${DISTDIR}"/eduke32_classic.png eduke32.png
+
+	make_desktop_entry eduke32-bin EDuke32 eduke32 Game
+	make_desktop_entry mapster32 Mapster32 eduke32 Game
+	use voidsw && make_desktop_entry voidsw-bin VoidSW voidsw Game
+
+	local DOCS=( package/sdk/samples/*.txt source/build/doc/*.txt )
+	use hrp && DOCS+=( "${WORKDIR}"/hrp_readme.txt "${WORKDIR}"/hrp_todo.txt )
+	use offensive && DOCS+=( "${WORKDIR}"/xxx_readme.txt )
+	use opl && DOCS+=( "${WORKDIR}"/opl_readme.txt )
+	use sc-55 && DOCS+=( "${WORKDIR}"/readme/music_readme.txt )
+	use voxels && DOCS+=( "${WORKDIR}"/voxelpack_readme.txt )
+
+	einstalldocs
+}
+
+pkg_postinst() {
+	xdg_icon_cache_update
+}
+
+pkg_postrm() {
+	xdg_icon_cache_update
+}


             reply	other threads:[~2024-03-28 14:10 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-28 14:10 Conrad Kostecki [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-11-09  1:41 [gentoo-commits] repo/gentoo:master commit in: games-fps/eduke32/ Conrad Kostecki
2024-06-22 20:01 Conrad Kostecki
2024-03-28 14:10 Conrad Kostecki
2023-12-29 20:37 Conrad Kostecki
2023-10-12  0:07 Conrad Kostecki
2023-10-12  0:07 Conrad Kostecki
2023-10-02 18:40 Conrad Kostecki
2023-09-17 21:41 Conrad Kostecki
2023-08-26 23:42 Conrad Kostecki
2023-08-26 23:42 Conrad Kostecki
2023-01-31 15:17 Conrad Kostecki
2023-01-31 15:17 Conrad Kostecki
2022-11-15 22:41 Conrad Kostecki
2022-11-15 22:41 Conrad Kostecki
2022-10-01 23:33 Conrad Kostecki
2022-10-01 23:33 Conrad Kostecki
2022-09-10  8:41 Sam James
2022-08-11  7:37 Ionen Wolkens
2022-07-10 20:11 Conrad Kostecki
2022-06-25 14:57 Conrad Kostecki
2022-06-25 14:35 Conrad Kostecki
2022-04-23 21:24 Conrad Kostecki
2022-03-19 23:39 Sam James
2021-12-05 21:45 Conrad Kostecki
2021-12-05 21:45 Conrad Kostecki
2021-10-23 12:27 Conrad Kostecki
2021-10-23 12:27 Conrad Kostecki
2021-09-18 22:09 Conrad Kostecki
2021-09-18 22:09 Conrad Kostecki
2021-08-07 22:49 Conrad Kostecki
2021-08-07 22:49 Conrad Kostecki
2021-07-07 19:49 Conrad Kostecki
2021-06-28 19:19 Conrad Kostecki
2021-06-26 20:26 Conrad Kostecki
2021-06-26 20:26 Conrad Kostecki
2021-04-07 17:29 Conrad Kostecki
2021-04-07 17:29 Conrad Kostecki
2021-02-27 15:31 Conrad Kostecki
2021-02-27 14:58 Conrad Kostecki
2021-02-27 14:58 Conrad Kostecki
2021-01-30 22:00 Conrad Kostecki
2021-01-30 22:00 Conrad Kostecki
2021-01-24  4:53 Sam James
2021-01-10 23:21 Conrad Kostecki
2021-01-10 23:21 Conrad Kostecki
2021-01-09 14:29 Conrad Kostecki
2021-01-09 14:29 Conrad Kostecki
2020-12-15 14:28 Conrad Kostecki
2020-12-15 14:28 Conrad Kostecki
2020-12-02 21:22 Conrad Kostecki
2020-12-02 21:22 Conrad Kostecki
2020-11-16 23:06 Conrad Kostecki
2020-09-05 11:45 Conrad Kostecki
2020-09-05 11:45 Conrad Kostecki
2020-09-04 23:14 Sam James
2020-08-25 22:19 Conrad Kostecki
2020-08-25 21:59 Conrad Kostecki
2020-08-25 21:59 Conrad Kostecki
2020-08-09 20:00 Conrad Kostecki
2020-05-10 19:25 Conrad Kostecki
2020-05-10 19:25 Conrad Kostecki
2020-03-20 21:53 Matt Turner
2020-03-12 22:48 Conrad Kostecki
2020-03-12 22:48 Conrad Kostecki
2020-02-04 18:09 Conrad Kostecki
2020-02-04 18:09 Conrad Kostecki
2019-12-07  1:34 Conrad Kostecki
2019-12-05 21:47 Conrad Kostecki
2019-12-05 21:47 Conrad Kostecki
2019-10-16 21:54 James Le Cuirot
2019-10-16 21:54 James Le Cuirot
2019-10-08 22:47 James Le Cuirot
2019-10-08 22:47 James Le Cuirot
2019-09-19 21:32 James Le Cuirot
2019-09-19 21:32 James Le Cuirot
2019-08-24 19:51 James Le Cuirot
2019-08-24 19:51 James Le Cuirot
2019-07-21 21:36 James Le Cuirot
2019-07-21 21:36 James Le Cuirot
2019-04-22 22:00 James Le Cuirot
2019-04-07 22:34 James Le Cuirot
2019-04-07 22:34 James Le Cuirot
2019-03-09 22:50 James Le Cuirot
2019-03-09 22:50 James Le Cuirot
2019-03-09 22:50 James Le Cuirot
2019-01-28 23:02 Patrice Clement
2019-01-28 23:02 Patrice Clement
2018-10-30 10:34 Patrice Clement
2018-10-21 17:42 Michał Górny
2018-09-16 22:10 James Le Cuirot
2018-09-16 22:10 James Le Cuirot
2018-08-21 21:55 Patrice Clement
2018-08-21 21:55 Patrice Clement
2018-08-05 21:48 Patrice Clement
2018-08-05 21:48 Patrice Clement
2018-07-10 21:32 Tony Vroon
2018-07-02 11:22 Jeroen Roovers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1711634979.96231980be50c2ff3ce2b82d82fcdbda438c2306.conikost@gentoo \
    --to=conikost@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox