commit:     63f249dda98e967f2e447851a1d822233e9fd997
Author:     Alexander Tsoy <alexander <AT> tsoy <DOT> me>
AuthorDate: Sat Oct  1 22:41:01 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Oct  3 18:34:25 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63f249dd

games-fps/yamagi-quake2: version bump to 8.10

Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
Closes: https://github.com/gentoo/gentoo/pull/27564
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 games-fps/yamagi-quake2/Manifest                  |   4 +
 games-fps/yamagi-quake2/metadata.xml              |   1 +
 games-fps/yamagi-quake2/yamagi-quake2-8.10.ebuild | 148 ++++++++++++++++++++++
 3 files changed, 153 insertions(+)

diff --git a/games-fps/yamagi-quake2/Manifest b/games-fps/yamagi-quake2/Manifest
index 1f2e3c6c6498..0e925852b4b6 100644
--- a/games-fps/yamagi-quake2/Manifest
+++ b/games-fps/yamagi-quake2/Manifest
@@ -1,5 +1,9 @@
 DIST quake2-8.01.tar.xz 2109408 BLAKE2B 
a68fe6ea3a0ab44ba9776bf99a3a826afe0ee25c842d6169296eb8837a3b22146f481defd7a66294dc9e42e75e5848225199e4314bf94756606e7325ba789db2
 SHA512 
8f616f8f09ad9e44bb34227d5492cc0d63180cecebcc39760582590078f4a63a0a4433d66cdffefb26a68d070b2ea1223334de9ae7c32e6c46e42a5aab721a06
+DIST quake2-8.10.tar.xz 2138064 BLAKE2B 
80fbb467977d365aa19015eade8d6cb6004895f8f5a605cdbd840ac41ad2d8a51da1ef3653f401bd1e597c39185f273a5f9720570ad9899815e6bc064a323027
 SHA512 
390a3971d5473166e4c24ef93b1866ae4ca05d17f6c5906d0b7a5bd81d3fbfbff6756b8222af5e3bf2a2f738215375a9eb2947b8690aceb99ac2bf4125d19d25
 DIST quake2-ctf-1.08.tar.xz 136468 BLAKE2B 
cce9f75333c03494dccc1a693c3c0a62194457673c17c59cd5d08a06a11daa769dabaf787c04d9de291c7cc255b4decef06ae5f045c5bc7bc3f4008f0e6babdb
 SHA512 
3d3343ae5287c5f01efd3363ede19f2e41cc8d083691c928afd9e4a81c0b46f6002eb2ed99d11742b7c04f8ea728a1dbb3b5d26ce4fd1066b4f49e3fb664317e
 DIST quake2-ref_vk-1.0.1.tar.gz 290799 BLAKE2B 
0716d539704a58067fd2d6d4f21b27976c6bd073b2722584a804c9702f2886b252701d81f2fe1e5aba22ab83fbddd1e35ce3574c3e3d41b609ebac417ee7cfe4
 SHA512 
99a6b7191a2eed714f70ec389a1f1972f430b9ba324e6880ce96101336beac640fef2d45adc1a6bf04c386a1d088fafd401d303704079ed7207fe7b56d2758db
+DIST quake2-ref_vk-1.0.2.tar.gz 295693 BLAKE2B 
422fa9f406302140c0cad4994f4e33a6b145dd954417635a73406fd5d888ed8884d335a15e13069881d8102aa87157f0061553c3c3dc253b5fdb40b389b0027f
 SHA512 
5b6d72a6a769cd9171a6ac2776f9c637e527800b3214e1799041e0c19c9b258130b6fb67812e5c889a1b1f593edd14c23ea4aa00cbfec06e68ef8aeb132a7102
 DIST quake2-rogue-2.08.tar.xz 282140 BLAKE2B 
e4ead304f35028010f4ffea6eed15753feac99cfa301975f8cae88d9ac10313c9e1a9e29e37d4f186df34abf659dd45b79bda04b5f420565f256bde8b69ab199
 SHA512 
216b8a9862c7f189bdabc68770306ead4fa2173f9051a8fd2a7927eae8aa4e42116bbde947591432d200832a3038c79316325549822fa531fc0e76a2bec57762
+DIST quake2-rogue-2.09.tar.xz 305548 BLAKE2B 
d0623a68b52faf87caa974ba9bcf511e24b132b3fb371dea312c8ff8edab943fcdcfd0bf4278cb996c9b8b85da5c61a1b276e3f0d4493d2e69615908c4f6c01e
 SHA512 
f69fe00c1d3484280231b4ec625aff5f3135f013398014d01ed3823834f17bcbc8930911843b00b088a8247e42ce5074f5b2a029ff2a695ed65e8561ed563de5
 DIST quake2-xatrix-2.09.tar.xz 214096 BLAKE2B 
a4115da0d5624245d1065a67379d95a2b22330e1a5a999d7493d832d5edca4c83752f3a447ab1934c6709b7ed9247d5edd2b3f4b9b398a04982a9428381f2f9d
 SHA512 
a4cf351eca2a72e6b5d8eeecf5d582a3c2c677b71dcf6bcdea310f1503f55ad8ccaf7225461bd78fc695e90d57525fd9a53c5d17e1eabd3a1d28e9386331399c
+DIST quake2-xatrix-2.10.tar.xz 214664 BLAKE2B 
858a33c10ad3378449cf96cf4cec45bbbeb0680eb7296a6ab9a266dcb83053a1ea784f171b3b163426583ce2bd4b5631daa0b327a9c4ab1c13ab469a62a3d85d
 SHA512 
fa6c008fba766e0ec159ab0a9ea72fb4bcf33c428f5b5c37a0611c9f2052f147d14af9872bbccdfdf4ab485bf523398c32dfa91a767b715a2dc84355b7e1d204

diff --git a/games-fps/yamagi-quake2/metadata.xml 
b/games-fps/yamagi-quake2/metadata.xml
index f8c75f96e318..109c79bc1f83 100644
--- a/games-fps/yamagi-quake2/metadata.xml
+++ b/games-fps/yamagi-quake2/metadata.xml
@@ -19,6 +19,7 @@
        <use>
                <flag name="client">Build client</flag>
                <flag name="ctf">Build support for the 'Capture The Flag' 
addon</flag>
+               <flag name="gles">Build GLES3 renderer</flag>
                <flag name="rogue">Build support for the 'Ground Zero' Mission 
Pack</flag>
                <flag name="softrender">Build software renderer</flag>
                <flag name="vulkan">Build experimental Vulkan renderer</flag>

diff --git a/games-fps/yamagi-quake2/yamagi-quake2-8.10.ebuild 
b/games-fps/yamagi-quake2/yamagi-quake2-8.10.ebuild
new file mode 100644
index 000000000000..3ae5a8fc5ca0
--- /dev/null
+++ b/games-fps/yamagi-quake2/yamagi-quake2-8.10.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs wrapper
+
+CTF_V="1.08"
+ROGUE_V="2.09"
+XATRIX_V="2.10"
+REF_VK_V="1.0.2"
+
+DESCRIPTION="Quake 2 engine focused on single player"
+HOMEPAGE="https://www.yamagi.org/quake2/";
+SRC_URI="https://deponie.yamagi.org/quake2/quake2-${PV}.tar.xz
+       ctf? ( https://deponie.yamagi.org/quake2/quake2-ctf-${CTF_V}.tar.xz )
+       rogue? ( 
https://deponie.yamagi.org/quake2/quake2-rogue-${ROGUE_V}.tar.xz )
+       xatrix? ( 
https://deponie.yamagi.org/quake2/quake2-xatrix-${XATRIX_V}.tar.xz )
+       vulkan? ( 
https://github.com/yquake2/ref_vk/archive/refs/tags/v${REF_VK_V}.tar.gz ->
+               quake2-ref_vk-${REF_VK_V}.tar.gz )
+"
+S="${WORKDIR}/quake2-${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="+client ctf dedicated gles openal +opengl rogue softrender vulkan xatrix"
+REQUIRED_USE="
+       || ( client dedicated )
+       client? ( || ( opengl softrender vulkan ) )
+"
+
+RDEPEND="
+       client? (
+               media-libs/libsdl2[opengl?,video,vulkan?]
+               net-misc/curl
+               openal? ( media-libs/openal )
+               !openal? ( media-libs/libsdl2[sound] )
+               opengl? ( virtual/opengl )
+               gles? ( media-libs/mesa[gles2] )
+       )
+"
+DEPEND="${RDEPEND}
+       client? ( vulkan? ( dev-util/vulkan-headers ) )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-8.01-execinfo.patch )
+
+DOCS=( CHANGELOG README.md doc )
+
+src_compile() {
+       tc-export CC
+
+       local targets=( game )
+       local emakeargs=(
+               VERBOSE=1
+               WITH_EXECINFO=$(usex elibc_musl no yes)
+               WITH_SYSTEMWIDE=yes
+               WITH_SYSTEMDIR="${EPREFIX}"/usr/share/quake2
+               WITH_OPENAL=$(usex openal)
+       )
+
+       if use client; then
+               targets+=( client )
+               use gles && targets+=( ref_gles3 )
+               use opengl && targets+=( ref_gl1 ref_gl3 )
+               use softrender && targets+=( ref_soft )
+       fi
+       use dedicated && targets+=( server )
+
+       emake "${emakeargs[@]}" config
+       emake "${emakeargs[@]}" "${targets[@]}"
+
+       if use client && use vulkan; then
+               emake -C "${WORKDIR}"/ref_vk-${REF_VK_V} VERBOSE=1
+       fi
+
+       local addon
+       for addon in $(usev ctf) $(usev rogue) $(usev xatrix); do
+               emake -C "${WORKDIR}"/quake2-${addon}-* VERBOSE=1
+       done
+}
+
+src_install() {
+       insinto /usr/lib/yamagi-quake2
+       # Yamagi Quake II expects all binaries to be in the same directory
+       # See doc/070_packaging.md for more info
+       exeinto /usr/lib/yamagi-quake2
+       doins -r release/.
+
+       if use client; then
+               doexe release/quake2
+               dosym ../lib/yamagi-quake2/quake2 /usr/bin/yquake2
+
+               newicon stuff/icon/Quake2.svg "yamagi-quake2.svg"
+               make_desktop_entry "yquake2" "Yamagi Quake II"
+
+               if use vulkan; then
+                       doins "${WORKDIR}"/ref_vk-${REF_VK_V}/release/ref_vk.so
+               fi
+       fi
+
+       if use dedicated; then
+               doexe release/q2ded
+               dosym ../lib/yamagi-quake2/q2ded /usr/bin/yq2ded
+       fi
+
+       insinto /usr/lib/yamagi-quake2/baseq2
+       doins stuff/yq2.cfg
+
+       local addon
+       for addon in $(usev ctf) $(usev rogue) $(usev xatrix); do
+               insinto /usr/lib/yamagi-quake2/${addon}
+               doins "${WORKDIR}"/quake2-${addon}-*/release/game.so
+
+               if use client; then
+                       local addon_name
+                       case ${addon} in
+                               ctf)    addon_name="CTF" ;;
+                               rogue)  addon_name="Ground Zero" ;;
+                               xatrix) addon_name="The Reckoning" ;;
+                       esac
+
+                       make_wrapper "yquake2-${addon}" "yquake2 +set game 
${addon}"
+                       make_desktop_entry "yquake2-${addon}" "Yamagi Quake II: 
${addon_name}"
+               fi
+       done
+
+       keepdir /usr/share/quake2
+
+       einstalldocs
+       if use client; then
+               docinto examples
+               dodoc stuff/cdripper.sh
+       fi
+}
+
+pkg_postinst() {
+       if [[ -z ${REPLACING_VERSIONS} ]]; then
+               elog
+               elog "In order to play, you should do one of the following 
things:"
+               elog " - install games-fps/quake2-data or 
games-fps/quake2-demodata;"
+               elog " - manually copy game data files into ~/.yq2/ or"
+               elog "   ${EROOT}/usr/share/quake2/."
+               elog "Read ${EROOT}/usr/share/doc/${PF}/README.md* for more 
information."
+               elog
+       fi
+}

Reply via email to