Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-fps/yamagi-quake2/
Date: Wed, 28 Oct 2020 07:51:24
Message-Id: 1603871466.0173c7857729b9eae87ecfe68c002c201999581a.juippis@gentoo
1 commit: 0173c7857729b9eae87ecfe68c002c201999581a
2 Author: Alexander Tsoy <alexander <AT> tsoy <DOT> me>
3 AuthorDate: Sat Oct 24 23:11:31 2020 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Wed Oct 28 07:51:06 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0173c785
7
8 games-fps/yamagi-quake2: Version bump to 7.45
9
10 Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me>
11 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
12
13 games-fps/yamagi-quake2/Manifest | 1 +
14 games-fps/yamagi-quake2/yamagi-quake2-7.45.ebuild | 149 ++++++++++++++++++++++
15 2 files changed, 150 insertions(+)
16
17 diff --git a/games-fps/yamagi-quake2/Manifest b/games-fps/yamagi-quake2/Manifest
18 index d0d70974745..1dea6a99fb5 100644
19 --- a/games-fps/yamagi-quake2/Manifest
20 +++ b/games-fps/yamagi-quake2/Manifest
21 @@ -1,5 +1,6 @@
22 DIST quake2-7.42.tar.xz 1987332 BLAKE2B 63ced75746eb031faf949c6b094ec607076f481b8d97eca242f9bf6fd6325afc8dfb5f98fe4f8ba5c5e87b721392f613031fc204b775634fc5292a26fef1d76c SHA512 0f51204fcf14ecb3f1f654e6ee19207836cf4642022569ef202bc12f312f76dbd43695aa4d9f9fb70c8b023f42d1a8fcec25f472a32175ebb0a308211fa40cc0
23 DIST quake2-7.43.tar.xz 1989812 BLAKE2B dbce9e3b65a63637726dda375f0fc64193529a3c1744643290778ee8f1a0eff3067f96dd3e76fa4d138cfbb5e9237f7517f608277e4f5b21729473849b7c8ac3 SHA512 c728609e277330b39fc423d66bbd098e360e7fc8c54500fa5accbc4aaeb9145a00c8ff8be67ce8f36047dbe6d98480bdbe1f330da5b0037517607ada8a63e4b8
24 +DIST quake2-7.45.tar.xz 1997816 BLAKE2B 1025a3e226e80b456c48fcd76100f46fa03e3ef2c61d70071136f8119f2b2af39b24fa859239217d34d14501127e4880ff7b61b79dc61c79e64dd22fcc44ce0b SHA512 1aa161ca03782eba14feecd142d65eb5a9ca5af4b384f21d3e68338cd8d88bd5e71c1678d44285eea692d5d1b2161429270745d880b4caacd6c87c7e76ed404b
25 DIST quake2-ctf-1.06.tar.xz 135464 BLAKE2B 457ab883ba9ecfb723d890f5c9e3da710aae4ed5fa4e530c8028b0fa93186350e6ed1b483b89ddf98cbb3f3b1992a15c33af5d181073395b61e5b9a7c9987d88 SHA512 24c58f895d4056127e6f714c618d53b80bd75968758d8aa729deba750297efd5d6c40bd69afd98ebbf0d231bd59909e6438ec64b258883d8cfd33d33e928b2f9
26 DIST quake2-ctf-1.07.tar.xz 135880 BLAKE2B 7501d5db676cbc7b523313bf4e5d572cc8711efd09e2390d6aa6980d45bc682e7f137581b8a9a8d4b491de8f8ed7dd1cb32a66c9ed2cc456e114f672cedf2a1c SHA512 de2ab94fc7bb43327170f6aefbaf811e7a0071da2e5c4602354854e46e4c8cfc687a6300e7162c8f1be2f0b42cf2d3edc255c2f44fb0e39adc873a521197a316
27 DIST quake2-rogue-2.06.tar.xz 243872 BLAKE2B fa289bb9ecd988dd77dd4d581212fc1c2f964371109123ed77ea0a740b65bc117d787c144d9f246d091df3ff19f1c9f5ed42571cd2d450061de63f032cc3c1d6 SHA512 4f8646f6b6cc2b522291e89f63a6d0273353e27bcafed6fcd5c2e509e938ab76504bfe9e92d398c8cee708af64ffbb7d81e98ea0df1e13ba593db4dff8ddfcf6
28
29 diff --git a/games-fps/yamagi-quake2/yamagi-quake2-7.45.ebuild b/games-fps/yamagi-quake2/yamagi-quake2-7.45.ebuild
30 new file mode 100644
31 index 00000000000..0dc97a719c1
32 --- /dev/null
33 +++ b/games-fps/yamagi-quake2/yamagi-quake2-7.45.ebuild
34 @@ -0,0 +1,149 @@
35 +# Copyright 1999-2020 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +
40 +inherit desktop eutils
41 +
42 +CTF_V="1.07"
43 +ROGUE_V="2.07"
44 +XATRIX_V="2.08"
45 +
46 +DESCRIPTION="Quake 2 engine focused on single player"
47 +HOMEPAGE="https://www.yamagi.org/quake2/"
48 +SRC_URI="https://deponie.yamagi.org/quake2/quake2-${PV}.tar.xz
49 + ctf? ( https://deponie.yamagi.org/quake2/quake2-ctf-${CTF_V}.tar.xz )
50 + rogue? ( https://deponie.yamagi.org/quake2/quake2-rogue-${ROGUE_V}.tar.xz )
51 + xatrix? ( https://deponie.yamagi.org/quake2/quake2-xatrix-${XATRIX_V}.tar.xz )"
52 +S="${WORKDIR}/quake2-${PV}"
53 +
54 +LICENSE="GPL-2"
55 +SLOT="0"
56 +KEYWORDS="~amd64 ~arm64 ~x86"
57 +IUSE="+client ctf dedicated openal +opengl rogue softrender xatrix"
58 +REQUIRED_USE="
59 + || ( client dedicated )
60 + client? ( || ( opengl softrender ) )
61 +"
62 +
63 +DEPEND="
64 + client? (
65 + media-libs/libsdl2[video]
66 + !openal? ( media-libs/libsdl2[sound] )
67 + opengl? (
68 + media-libs/libsdl2[opengl]
69 + virtual/opengl
70 + )
71 + )
72 +"
73 +RDEPEND="${DEPEND}
74 + client? ( openal? ( media-libs/openal ) )
75 +"
76 +
77 +DOCS=( CHANGELOG README.md doc )
78 +
79 +mymake() {
80 + emake \
81 + VERBOSE=1 \
82 + WITH_SYSTEMWIDE=yes \
83 + WITH_SYSTEMDIR="${EPREFIX}"/usr/share/games/quake2 \
84 + WITH_OPENAL=$(usex openal) \
85 + "$@"
86 +}
87 +
88 +src_prepare() {
89 + local addon
90 + for addon in ctf rogue xatrix; do
91 + use ${addon} || continue
92 +
93 + pushd "${WORKDIR}"/quake2-${addon}-* >/dev/null || die
94 + if [[ ${addon} = ctf ]]; then
95 + eapply -l -- "${FILESDIR}"/${PN}-addon-respect-flags-r4.patch
96 + else
97 + eapply -l -- "${FILESDIR}"/${PN}-addon-respect-flags-r3.patch
98 + fi
99 + popd >/dev/null || die
100 + done
101 +
102 + default
103 +}
104 +
105 +src_compile() {
106 + local targets=( game )
107 + if use client; then
108 + targets+=( client )
109 + use opengl && targets+=( ref_gl1 ref_gl3 )
110 + use softrender && targets+=( ref_soft )
111 + fi
112 + use dedicated && targets+=( server )
113 +
114 + mymake config
115 + mymake "${targets[@]}"
116 +
117 + local addon
118 + for addon in ctf rogue xatrix; do
119 + use ${addon} || continue
120 + emake -C "${WORKDIR}"/quake2-${addon}-* VERBOSE=1
121 + done
122 +}
123 +
124 +src_install() {
125 + insinto /usr/lib/yamagi-quake2
126 + # Yamagi Quake II expects all binaries to be in the same directory
127 + # See stuff/packaging.md for more info
128 + exeinto /usr/lib/yamagi-quake2
129 + doins -r release/.
130 +
131 + if use client; then
132 + doexe release/quake2
133 + dosym ../lib/yamagi-quake2/quake2 /usr/bin/yquake2
134 +
135 + newicon stuff/icon/Quake2.svg "yamagi-quake2.svg"
136 + make_desktop_entry "yquake2" "Yamagi Quake II"
137 + fi
138 +
139 + if use dedicated; then
140 + doexe release/q2ded
141 + dosym ../lib/yamagi-quake2/q2ded /usr/bin/yq2ded
142 + fi
143 +
144 + insinto /usr/lib/yamagi-quake2/baseq2
145 + doins stuff/yq2.cfg
146 +
147 + local addon
148 + for addon in ctf rogue xatrix; do
149 + use ${addon} || continue
150 +
151 + insinto /usr/lib/yamagi-quake2/${addon}
152 + doins "${WORKDIR}"/quake2-${addon}-*/release/game.so
153 +
154 + if use client; then
155 + local addon_name
156 + case ${addon} in
157 + ctf) addon_name="CTF" ;;
158 + rogue) addon_name="Ground Zero" ;;
159 + xatrix) addon_name="The Reckoning" ;;
160 + esac
161 +
162 + make_wrapper "yquake2-${addon}" "yquake2 +set game ${addon}"
163 + make_desktop_entry "yquake2-${addon}" "Yamagi Quake II: ${addon_name}"
164 + fi
165 + done
166 +
167 + einstalldocs
168 + if use client; then
169 + docinto examples
170 + dodoc stuff/cdripper.sh
171 + fi
172 +}
173 +
174 +pkg_postinst() {
175 + if [[ -z ${REPLACING_VERSIONS} ]]; then
176 + elog
177 + elog "In order to play, you must at least install:"
178 + elog "games-fps/quake2-data or games-fps/quake2-demodata or copy game"
179 + elog "data files to ~/.yq2/ or ${EPREFIX}/usr/share/games/quake2/ manually."
180 + elog "Read ${EPREFIX}/usr/share/doc/${PF}/README.md* for more information."
181 + elog
182 + fi
183 +}