diff options
author | Alexander Tsoy <alexander@tsoy.me> | 2018-04-10 02:06:54 +0300 |
---|---|---|
committer | Patrice Clement <monsieurp@gentoo.org> | 2018-04-11 23:47:25 +0200 |
commit | 547b426dc4c4f660a9262ad4a2fa21a2f55f247f (patch) | |
tree | 87ecf1f340f88f65c8dd5e6c2dde18b4c5dfa73a /games-fps/yamagi-quake2 | |
parent | 49d6041d75085f03d5a09a0df5da170aef44fdeb (diff) | |
download | gentoo-547b426dc4c4f660a9262ad4a2fa21a2f55f247f.tar.gz gentoo-547b426dc4c4f660a9262ad4a2fa21a2f55f247f.tar.xz |
games-fps/yamagi-quake2: version bump to 7.20.
Closes: https://github.com/gentoo/gentoo/pull/7921
Diffstat (limited to 'games-fps/yamagi-quake2')
-rw-r--r-- | games-fps/yamagi-quake2/Manifest | 1 | ||||
-rw-r--r-- | games-fps/yamagi-quake2/files/yamagi-quake2-zlib.patch | 17 | ||||
-rw-r--r-- | games-fps/yamagi-quake2/yamagi-quake2-7.20.ebuild | 146 |
3 files changed, 164 insertions, 0 deletions
diff --git a/games-fps/yamagi-quake2/Manifest b/games-fps/yamagi-quake2/Manifest index d608a375340..cb700cafbe4 100644 --- a/games-fps/yamagi-quake2/Manifest +++ b/games-fps/yamagi-quake2/Manifest @@ -1,4 +1,5 @@ DIST quake2-7.10.tar.xz 1792748 BLAKE2B 853d6db1eec46ce40952fd413a259653275081599a940941fc883921b310f436be62b80a1d911a0d8f95a33e540e60bd6db2377370cc443cbaa9c3eec6ae055f SHA512 46247c3e2c8e6dcb056dfc7785dd63bf4f896719894a1c5467f2eb313cc3d8a892fda9bafc2ca760a9ac96f6b8e23485a8740b03e118cf9a524f68657183fbb9 +DIST quake2-7.20.tar.xz 1852212 BLAKE2B 87a19be70680866b8b697ea4632239d33fe196dc648553d4a113025d9dc7996a27db2ec0178b28c04ad77854400d9f159bd800681a2bdf5a0121ef764e163ecb SHA512 466c21777e07da6aaec29cf9d3c9246a23d2157398a7e5ff1ad006f0fa7fd89e379b109936780361f03722f896ac34a188d12fc0a51cb543079e07aa6c9240df DIST quake2-ctf-1.05.tar.xz 134872 BLAKE2B eb987004b1c1b1743ec532b6bea96a257957377cbdb0571d6c6e7b2dae6c1b7abc154233d4f9d3af6fb546d7810e5c041b8e9293de2e409a7cace88aa455f526 SHA512 9eb951f4a9d7abc5f9a2ca53d886f68b745c1efdf3fea14db2e071b8d1592d33579c5fa56326aa583269a4810e16a7eda8dcd8930e36782cb4fcb8578c44951b DIST quake2-rogue-2.04.tar.xz 240436 BLAKE2B e7c3660378fe40b3f514b6e1de8714e3d3550baa244897b98bb81f362fa2b0aa57e3abceb5a38ea77cfec7621e2fcfab342a45bf9b66ccd0e44cc70292888fc2 SHA512 546deb74175c60ed7e5600a3d4b1c983fc0b1fae5922ebdb8fc3cdc5584931a0a5e34914ec2cd4ef9815323ba82cb56d427986d5c91dc040d6b68baff68ca5a8 DIST quake2-xatrix-2.05.tar.xz 189888 BLAKE2B 9d884af6033d529ce8cca7a70a36608e45db47dab74ab0d88c04f4d928425cf22901b1299a69330bfa83810034c9f1eff2d9618b222db68564d81d569f0596cd SHA512 f7e14bb870eaf4515405f5f1162057669351a334993410101973b75e52d6d576c35c91112911f961ad122ebe664b294649e94e88a2f62b79f51e28d02f50487a diff --git a/games-fps/yamagi-quake2/files/yamagi-quake2-zlib.patch b/games-fps/yamagi-quake2/files/yamagi-quake2-zlib.patch new file mode 100644 index 00000000000..1de79c98690 --- /dev/null +++ b/games-fps/yamagi-quake2/files/yamagi-quake2-zlib.patch @@ -0,0 +1,17 @@ +https://bugs.gentoo.org/383179 + +Upstream removed OF macro definition: +https://github.com/yquake2/yquake2/commit/716d72a295c9247b3c88ccd180bb7a517ed99e13 + +--- a/src/common/unzip/ioapi.h 2018-03-10 20:24:21.000000000 +0300 ++++ b/src/common/unzip/ioapi.h 2018-04-10 00:34:08.688675097 +0300 +@@ -120,6 +120,9 @@ + #define ZLIB_FILEFUNC_MODE_EXISTING (4) + #define ZLIB_FILEFUNC_MODE_CREATE (8) + ++#ifdef _Z_OF ++#define OF _Z_OF ++#endif + + #ifndef ZCALLBACK + #if (defined(WIN32) || defined(_WIN32) || defined (WINDOWS) || defined (_WINDOWS)) && defined(CALLBACK) && defined (USEWINDOWS_CALLBACK) diff --git a/games-fps/yamagi-quake2/yamagi-quake2-7.20.ebuild b/games-fps/yamagi-quake2/yamagi-quake2-7.20.ebuild new file mode 100644 index 00000000000..779346e191f --- /dev/null +++ b/games-fps/yamagi-quake2/yamagi-quake2-7.20.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit desktop eutils + +CTF_V=1.05 +ROGUE_V=2.04 +XATRIX_V=2.05 + +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 )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+client ctf dedicated ogg openal rogue xatrix" +REQUIRED_USE="|| ( client dedicated )" + +RDEPEND="sys-libs/zlib:0= + client? ( + media-libs/libsdl2[opengl,video] + virtual/opengl + ogg? ( + media-libs/libogg + media-libs/libvorbis + ) + openal? ( media-libs/openal ) + !openal? ( media-libs/libsdl2[sound] ) + ) +" + +DEPEND="${RDEPEND}" + +S="${WORKDIR}/quake2-${PV}" + +PATCHES=( + "${FILESDIR}"/${PN}-respect-flags.patch + "${FILESDIR}"/${PN}-zlib.patch +) +DOCS=( CHANGELOG CONTRIBUTE README.md ) + +mymake() { + emake \ + VERBOSE=1 \ + DLOPEN_OPENAL=no \ + WITH_CDA=no \ + WITH_SYSTEMWIDE=yes \ + WITH_SYSTEMDIR="${EPREFIX}"/usr/share/games/quake2 \ + WITH_ZIP=yes \ + WITH_OGG=$(usex ogg) \ + WITH_OPENAL=$(usex openal) \ + "$@" +} + +src_prepare() { + local addon + for addon in ctf rogue xatrix; do + use ${addon} || continue + + pushd "${WORKDIR}"/quake2-${addon}-* >/dev/null || die + eapply -l -- "${FILESDIR}"/${PN}-addon-respect-flags.patch + popd >/dev/null || die + done + + default +} + +src_compile() { + local targets=( game ) + use client && targets+=( client ref_gl1 ref_gl3 ) + use dedicated && targets+=( server ) + + mymake config + mymake "${targets[@]}" + + local addon + for addon in ctf rogue xatrix; do + use ${addon} || continue + 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 stuff/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" + 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 ctf rogue xatrix; do + use ${addon} || continue + + insinto /usr/lib/yamagi-quake2/${addon} + doins "${WORKDIR}"/quake2-${addon}-*/release/game.so + + 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}" + done + + 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 must at least install:" + elog "games-fps/quake2-data or games-fps/quake2-demodata or copy game" + elog "data files to ~/.yq2/ or ${EPREFIX}/usr/share/games/quake2/ manually." + elog "Read ${EPREFIX}/usr/share/doc/${PF}/README.md* for more information." + elog + fi +} |