summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Tsoy <alexander@tsoy.me>2022-04-17 02:11:10 +0300
committerIonen Wolkens <ionen@gentoo.org>2022-04-18 09:01:51 -0400
commit36f659abc87b72ec00f27e2370fe4d07826701ac (patch)
tree97ae3130d17427000b4ceac6958dbca1a0afdd04 /games-fps
parentdev-java/tomcat-servlet-api: removed obsolete 10.0.17, 9.0.59 & 8.5.76 (diff)
downloadgentoo-36f659abc87b72ec00f27e2370fe4d07826701ac.tar.gz
gentoo-36f659abc87b72ec00f27e2370fe4d07826701ac.tar.bz2
gentoo-36f659abc87b72ec00f27e2370fe4d07826701ac.zip
games-fps/yamagi-quake2: Version bump to 8.01
Signed-off-by: Alexander Tsoy <alexander@tsoy.me> Closes: https://github.com/gentoo/gentoo/pull/25051 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'games-fps')
-rw-r--r--games-fps/yamagi-quake2/Manifest1
-rw-r--r--games-fps/yamagi-quake2/yamagi-quake2-8.01.ebuild143
2 files changed, 144 insertions, 0 deletions
diff --git a/games-fps/yamagi-quake2/Manifest b/games-fps/yamagi-quake2/Manifest
index adc6933fda86..0574ba5f5b12 100644
--- a/games-fps/yamagi-quake2/Manifest
+++ b/games-fps/yamagi-quake2/Manifest
@@ -1,4 +1,5 @@
DIST quake2-8.00.tar.xz 2086776 BLAKE2B 6a525b0d3703e17ca6ff85cbef7cf0c0522308fb71f8db4649e7bfbe3326c610d878d6a4af36ed6a578c700c5e1d004be7c0a9dd86cb495a27c8deb8b761eab9 SHA512 886c0df687e7e64a534f6e6f0b212084212d4d5c1278d2567b25bdd48df9ffab9ce75894ab6cfc2fd3a070adf9c1e3d7bb2e823d4f5aef8ef2cbc21c21c063bd
+DIST quake2-8.01.tar.xz 2109408 BLAKE2B a68fe6ea3a0ab44ba9776bf99a3a826afe0ee25c842d6169296eb8837a3b22146f481defd7a66294dc9e42e75e5848225199e4314bf94756606e7325ba789db2 SHA512 8f616f8f09ad9e44bb34227d5492cc0d63180cecebcc39760582590078f4a63a0a4433d66cdffefb26a68d070b2ea1223334de9ae7c32e6c46e42a5aab721a06
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-rogue-2.08.tar.xz 282140 BLAKE2B e4ead304f35028010f4ffea6eed15753feac99cfa301975f8cae88d9ac10313c9e1a9e29e37d4f186df34abf659dd45b79bda04b5f420565f256bde8b69ab199 SHA512 216b8a9862c7f189bdabc68770306ead4fa2173f9051a8fd2a7927eae8aa4e42116bbde947591432d200832a3038c79316325549822fa531fc0e76a2bec57762
diff --git a/games-fps/yamagi-quake2/yamagi-quake2-8.01.ebuild b/games-fps/yamagi-quake2/yamagi-quake2-8.01.ebuild
new file mode 100644
index 000000000000..2b7bbeeab057
--- /dev/null
+++ b/games-fps/yamagi-quake2/yamagi-quake2-8.01.ebuild
@@ -0,0 +1,143 @@
+# 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.08"
+XATRIX_V="2.09"
+REF_VK_V="1.0.1"
+
+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 ~x86"
+IUSE="+client ctf dedicated 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 )
+ )
+"
+DEPEND="${RDEPEND}
+ client? ( vulkan? ( dev-util/vulkan-headers ) )
+"
+
+DOCS=( CHANGELOG README.md doc )
+
+src_compile() {
+ tc-export CC
+
+ local targets=( game )
+ local emakeargs=(
+ VERBOSE=1
+ WITH_SYSTEMWIDE=yes
+ WITH_SYSTEMDIR="${EPREFIX}"/usr/share/quake2
+ WITH_OPENAL=$(usex openal)
+ )
+
+ if use client; then
+ targets+=( client )
+ 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
+}