Gentoo Archives: gentoo-commits

From: "Matt Turner (mattst88)" <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in games-fps/quake3: metadata.xml ChangeLog quake3-9999.ebuild quake3-1.36.ebuild
Date: Fri, 06 May 2011 22:21:30
Message-Id: 20110506222119.44BC720054@flycatcher.gentoo.org
1 mattst88 11/05/06 22:21:19
2
3 Modified: metadata.xml ChangeLog quake3-9999.ebuild
4 quake3-1.36.ebuild
5 Log:
6 rewritten ebuild, fixes bugs 222005 and 250080
7
8 (Portage version: 2.1.9.41/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.8 games-fps/quake3/metadata.xml
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/metadata.xml?rev=1.8&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/metadata.xml?rev=1.8&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/metadata.xml?r1=1.7&r2=1.8
16
17 Index: metadata.xml
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/games-fps/quake3/metadata.xml,v
20 retrieving revision 1.7
21 retrieving revision 1.8
22 diff -u -r1.7 -r1.8
23 --- metadata.xml 26 Jul 2008 03:55:27 -0000 1.7
24 +++ metadata.xml 6 May 2011 22:21:19 -0000 1.8
25 @@ -16,6 +16,8 @@
26 "emerge quake3-demo" to get the playable demo.
27 </longdescription>
28 <use>
29 + <flag name="mumble">Adds player-location (positional audio) support to VoIP</flag>
30 <flag name="teamarena">Adds support for Team Arena expansion pack</flag>
31 + <flag name="voice">Adds VoIP support</flag>
32 </use>
33 </pkgmetadata>
34
35
36
37 1.57 games-fps/quake3/ChangeLog
38
39 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/ChangeLog?rev=1.57&view=markup
40 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/ChangeLog?rev=1.57&content-type=text/plain
41 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/ChangeLog?r1=1.56&r2=1.57
42
43 Index: ChangeLog
44 ===================================================================
45 RCS file: /var/cvsroot/gentoo-x86/games-fps/quake3/ChangeLog,v
46 retrieving revision 1.56
47 retrieving revision 1.57
48 diff -u -r1.56 -r1.57
49 --- ChangeLog 31 Jan 2011 00:30:47 -0000 1.56
50 +++ ChangeLog 6 May 2011 22:21:19 -0000 1.57
51 @@ -1,6 +1,13 @@
52 # ChangeLog for games-fps/quake3
53 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
54 -# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/ChangeLog,v 1.56 2011/01/31 00:30:47 mr_bones_ Exp $
55 +# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/ChangeLog,v 1.57 2011/05/06 22:21:19 mattst88 Exp $
56 +
57 + 06 May 2011; Matt Turner <mattst88@g.o> quake3-1.36.ebuild,
58 + quake3-9999.ebuild, metadata.xml:
59 + Rewritten ebuild from Andrey Vihrov. Adds curl, mumble, opengl, openal,
60 + voice, and vorbis USE flags (Bug 222005). Removes bundled openal, curl,
61 + speex, sdl, zlib, and jpeg in favor of using system libraries and headers
62 + (Bug 250080). Huge thanks to Andrey Vihrov!
63
64 31 Jan 2011; Michael Sterrett <mr_bones_@g.o> quake3-1.36.ebuild,
65 +files/quake3-1.36-bots.patch:
66
67
68
69 1.20 games-fps/quake3/quake3-9999.ebuild
70
71 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-9999.ebuild?rev=1.20&view=markup
72 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-9999.ebuild?rev=1.20&content-type=text/plain
73 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-9999.ebuild?r1=1.19&r2=1.20
74
75 Index: quake3-9999.ebuild
76 ===================================================================
77 RCS file: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-9999.ebuild,v
78 retrieving revision 1.19
79 retrieving revision 1.20
80 diff -u -r1.19 -r1.20
81 --- quake3-9999.ebuild 9 Feb 2011 22:24:16 -0000 1.19
82 +++ quake3-9999.ebuild 6 May 2011 22:21:19 -0000 1.20
83 @@ -1,99 +1,142 @@
84 -# Copyright 1999-2010 Gentoo Foundation
85 +# Copyright 1999-2011 Gentoo Foundation
86 # Distributed under the terms of the GNU General Public License v2
87 -# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-9999.ebuild,v 1.19 2011/02/09 22:24:16 mr_bones_ Exp $
88 +# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-9999.ebuild,v 1.20 2011/05/06 22:21:19 mattst88 Exp $
89
90 # quake3-9999 -> latest svn
91 # quake3-9999.REV -> use svn REV
92 # quake3-VER_alphaREV -> svn snapshot REV for version VER
93 # quake3-VER -> normal quake release
94
95 -EAPI=2
96 -if [[ ${PV} == 9999* ]] ; then
97 - [[ ${PV} == 9999.* ]] && ESVN_UPDATE_CMD="svn up -r ${PV/9999./}"
98 - ESVN_REPO_URI="svn://svn.icculus.org/quake3/trunk"
99 - inherit subversion flag-o-matic toolchain-funcs eutils games
100 -
101 - SRC_URI=""
102 - KEYWORDS=""
103 - S=${WORKDIR}/trunk
104 -else
105 - inherit flag-o-matic toolchain-funcs eutils games
106 - SRC_URI="http://ioquake3.org/files/${PV}/ioquake3-${PV}.tar.bz2"
107 - KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
108 - S=${WORKDIR}/io${P}
109 -fi
110 +EAPI="2"
111 +
112 +inherit eutils flag-o-matic games toolchain-funcs
113 +[[ "${PV}" == 9999* ]] && inherit subversion
114 +
115 +MY_PN="ioquake3"
116 +MY_PV="${PV}"
117 +MY_P="${MY_PN}-${MY_PV}"
118
119 DESCRIPTION="Quake III Arena - 3rd installment of the classic id 3D first-person shooter"
120 HOMEPAGE="http://ioquake3.org/"
121 +[[ "${PV}" != 9999* ]] && SRC_URI="http://ioquake3.org/files/${MY_PV}/${MY_P}.tar.bz2"
122 +ESVN_REPO_URI="svn://svn.icculus.org/quake3/trunk"
123
124 LICENSE="GPL-2"
125 SLOT="0"
126 -IUSE="dedicated teamarena"
127 -
128 -DEPEND="!dedicated? (
129 - virtual/opengl
130 - media-libs/openal
131 - media-libs/libsdl[joystick,opengl]
132 - )"
133 +KEYWORDS=""
134 +# "smp" is omitted, because currently it does not work.
135 +IUSE="dedicated opengl teamarena +openal curl vorbis voice mumble"
136 +
137 +UIDEPEND="virtual/opengl
138 + media-libs/libsdl[audio,video,joystick,X,opengl]
139 + virtual/jpeg
140 + openal? ( media-libs/openal )
141 + vorbis? (
142 + media-libs/libogg
143 + media-libs/libvorbis
144 + )
145 + voice? ( media-libs/speex )
146 + curl? ( net-misc/curl )"
147 +DEPEND="opengl? ( ${UIDEPEND} )
148 + !dedicated? ( ${UIDEPEND} )"
149 +UIRDEPEND="voice? ( mumble? ( media-sound/mumble ) )"
150 RDEPEND="${DEPEND}
151 + opengl? ( ${UIRDEPEND} )
152 + !dedicated? ( ${UIRDEPEND} )
153 games-fps/quake3-data
154 teamarena? ( games-fps/quake3-teamarena )"
155
156 -src_unpack() {
157 - if [[ ${PV} == 9999* ]] ; then
158 - subversion_src_unpack
159 - else
160 - unpack ${A}
161 - fi
162 +if [[ "${PV}" == 9999* ]] ; then
163 + S="${WORKDIR}/trunk"
164 +else
165 + S="${WORKDIR}/${MY_P}"
166 +fi
167 +
168 +my_arch() {
169 + case "${ARCH}" in
170 + x86) echo "i386" ;;
171 + amd64) echo "x86_64" ;;
172 + *) tc-arch-kernel ;;
173 + esac
174 +}
175 +
176 +my_platform() {
177 + case "${ARCH}" in
178 + alpha|amd64|ppc|x86) echo "linux" ;;
179 + x86-fbsd) echo "freebsd" ;;
180 + esac
181 }
182
183 src_prepare() {
184 - sed -i -e '/INSTALL/s: -s : :' Makefile || die
185 + if [[ "${PV}" == 9999* ]] ; then
186 + # Workaround for the version string
187 + ln -s "${ESVN_WC_PATH}/.svn" .svn || die "ln ${ESVN_WC_PATH}/.svn"
188 + fi
189 }
190
191 src_compile() {
192 - filter-flags -mfpmath=sse
193 +
194 buildit() { use $1 && echo 1 || echo 0 ; }
195 +
196 + # This is the easiest way to pass CPPFLAGS to the build system, which
197 + # are otherwise ignored.
198 + append-flags ${CPPFLAGS}
199 +
200 + # OPTIMIZE is disabled in favor of CFLAGS.
201 + #
202 + # TODO: BUILD_CLIENT_SMP=$(buildit smp)
203 emake \
204 - V=1 \
205 - BUILD_SERVER=1 \
206 - BUILD_CLIENT=$(( $(buildit !dedicated) )) \
207 - TEMPDIR="${T}" \
208 - CC="$(tc-getCC)" \
209 - ARCH=$(tc-arch-kernel) \
210 - OPTIMIZE="${CFLAGS}" \
211 - DEFAULT_BASEDIR="${GAMES_DATADIR}/quake3" \
212 - DEFAULT_LIBDIR="$(games_get_libdir)/quake3" \
213 - Q3ASM_CFLAGS="${CFLAGS}" \
214 - || die
215 + ARCH="$(my_arch)" \
216 + BUILD_CLIENT=$(( $(buildit opengl) | $(buildit !dedicated) )) \
217 + BUILD_GAME_QVM=0 \
218 + BUILD_GAME_SO=0 \
219 + BUILD_SERVER=$(buildit dedicated) \
220 + DEFAULT_BASEDIR="${GAMES_DATADIR}/${PN}" \
221 + FULLBINEXT="" \
222 + GENERATE_DEPENDENCIES=0 \
223 + OPTIMIZE="" \
224 + PLATFORM="$(my_platform)" \
225 + USE_CODEC_VORBIS=$(buildit vorbis) \
226 + USE_CURL=$(buildit curl) \
227 + USE_CURL_DLOPEN=0 \
228 + USE_INTERNAL_JPEG=0 \
229 + USE_INTERNAL_SPEEX=0 \
230 + USE_INTERNAL_ZLIB=0 \
231 + USE_LOCAL_HEADERS=0 \
232 + USE_MUMBLE=$(buildit mumble) \
233 + USE_OPENAL=$(buildit openal) \
234 + USE_OPENAL_DLOPEN=0 \
235 + USE_VOIP=$(buildit voice) \
236 + || die "emake failed"
237 }
238
239 src_install() {
240 - dodoc id-readme.txt TODO README BUGS ChangeLog
241 + dodoc BUGS ChangeLog id-readme.txt md4-readme.txt NOTTODO README TODO || die
242 + if use voice ; then
243 + dodoc voip-readme.txt || die
244 + fi
245
246 - if ! use dedicated ; then
247 - doicon misc/quake3.png
248 + if use opengl || ! use dedicated ; then
249 + doicon misc/quake3.svg || die
250 make_desktop_entry quake3 "Quake III Arena"
251 + #use smp && make_desktop_entry quake3-smp "Quake III Arena (SMP)"
252 fi
253
254 - cd build/release*
255 - local old_x x
256 - for old_x in ioq* ; do
257 - x=${old_x%.*}
258 - newgamesbin ${old_x} ${x} || die "newgamesbin ${x}"
259 - dosym ${x} "${GAMES_BINDIR}"/${x/io}
260 + cd build/release-$(my_platform)-$(my_arch) || die
261 + local exe
262 + for exe in ioquake3 ioquake3-smp ioq3ded ; do
263 + if [[ -x ${exe} ]] ; then
264 + dogamesbin ${exe} || die "dogamesbin ${exe}"
265 + dosym ${exe} "${GAMES_BINDIR}/${exe/io}" || die "dosym ${exe}"
266 + fi
267 done
268 - exeinto "$(games_get_libdir)"/${PN}/baseq3
269 - doexe baseq3/*.so || die "baseq3 .so"
270 - exeinto "$(games_get_libdir)"/${PN}/missionpack
271 - doexe missionpack/*.so || die "missionpack .so"
272
273 prepgamesdirs
274 }
275
276 pkg_postinst() {
277 games_pkg_postinst
278 - ewarn "The source version of Quake 3 will not work with Punk Buster."
279 - ewarn "If you need pb support, then use the quake3-bin package."
280 - echo
281 +
282 + ewarn "The source version of Quake III Arena will not work with PunkBuster."
283 + ewarn "If you need PB support, then use the games-fps/quake3-bin package."
284 }
285
286
287
288 1.4 games-fps/quake3/quake3-1.36.ebuild
289
290 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild?rev=1.4&view=markup
291 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild?rev=1.4&content-type=text/plain
292 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild?r1=1.3&r2=1.4
293
294 Index: quake3-1.36.ebuild
295 ===================================================================
296 RCS file: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild,v
297 retrieving revision 1.3
298 retrieving revision 1.4
299 diff -u -r1.3 -r1.4
300 --- quake3-1.36.ebuild 31 Jan 2011 00:30:47 -0000 1.3
301 +++ quake3-1.36.ebuild 6 May 2011 22:21:19 -0000 1.4
302 @@ -1,102 +1,145 @@
303 # Copyright 1999-2011 Gentoo Foundation
304 # Distributed under the terms of the GNU General Public License v2
305 -# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild,v 1.3 2011/01/31 00:30:47 mr_bones_ Exp $
306 +# $Header: /var/cvsroot/gentoo-x86/games-fps/quake3/quake3-1.36.ebuild,v 1.4 2011/05/06 22:21:19 mattst88 Exp $
307
308 # quake3-9999 -> latest svn
309 # quake3-9999.REV -> use svn REV
310 # quake3-VER_alphaREV -> svn snapshot REV for version VER
311 # quake3-VER -> normal quake release
312
313 -EAPI=2
314 -if [[ ${PV} == 9999* ]] ; then
315 - [[ ${PV} == 9999.* ]] && ESVN_UPDATE_CMD="svn up -r ${PV/9999./}"
316 - ESVN_REPO_URI="svn://svn.icculus.org/quake3/trunk"
317 - inherit subversion flag-o-matic toolchain-funcs eutils games
318 -
319 - SRC_URI=""
320 - KEYWORDS=""
321 - S=${WORKDIR}/trunk
322 -else
323 - inherit flag-o-matic toolchain-funcs eutils games
324 - SRC_URI="http://ioquake3.org/files/${PV}/ioquake3-${PV}.tar.bz2"
325 - KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
326 - S=${WORKDIR}/io${P}
327 -fi
328 +EAPI="2"
329 +
330 +inherit eutils flag-o-matic games toolchain-funcs
331 +[[ "${PV}" == 9999* ]] && inherit subversion
332 +
333 +MY_PN="ioquake3"
334 +MY_PV="${PV}"
335 +MY_P="${MY_PN}-${MY_PV}"
336
337 DESCRIPTION="Quake III Arena - 3rd installment of the classic id 3D first-person shooter"
338 HOMEPAGE="http://ioquake3.org/"
339 +[[ "${PV}" != 9999* ]] && SRC_URI="http://ioquake3.org/files/${MY_PV}/${MY_P}.tar.bz2"
340 +ESVN_REPO_URI="svn://svn.icculus.org/quake3/trunk"
341
342 LICENSE="GPL-2"
343 SLOT="0"
344 -IUSE="dedicated teamarena"
345 -
346 -DEPEND="!dedicated? (
347 - virtual/opengl
348 - media-libs/openal
349 - media-libs/libsdl[joystick,opengl]
350 - )"
351 +KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
352 +# "smp" is omitted, because currently it does not work.
353 +IUSE="dedicated opengl teamarena +openal curl vorbis voice mumble"
354 +
355 +UIDEPEND="virtual/opengl
356 + media-libs/libsdl[audio,video,joystick,X,opengl]
357 + openal? ( media-libs/openal )
358 + vorbis? (
359 + media-libs/libogg
360 + media-libs/libvorbis
361 + )
362 + voice? ( media-libs/speex )
363 + curl? ( net-misc/curl )"
364 +DEPEND="opengl? ( ${UIDEPEND} )
365 + !dedicated? ( ${UIDEPEND} )"
366 +UIRDEPEND="voice? ( mumble? ( media-sound/mumble ) )"
367 RDEPEND="${DEPEND}
368 + opengl? ( ${UIRDEPEND} )
369 + !dedicated? ( ${UIRDEPEND} )
370 games-fps/quake3-data
371 teamarena? ( games-fps/quake3-teamarena )"
372
373 -src_unpack() {
374 - if [[ ${PV} == 9999* ]] ; then
375 - subversion_src_unpack
376 - else
377 - unpack ${A}
378 - fi
379 +if [[ "${PV}" == 9999* ]] ; then
380 + S="${WORKDIR}/trunk"
381 +else
382 + S="${WORKDIR}/${MY_P}"
383 +fi
384 +
385 +my_arch() {
386 + case "${ARCH}" in
387 + x86) echo "i386" ;;
388 + amd64) echo "x86_64" ;;
389 + *) tc-arch-kernel ;;
390 + esac
391 +}
392 +
393 +my_platform() {
394 + case "${ARCH}" in
395 + alpha|amd64|ppc|x86) echo "linux" ;;
396 + x86-fbsd) echo "freebsd" ;;
397 + esac
398 }
399
400 src_prepare() {
401 - sed -i -e '/INSTALL/s: -s : :' Makefile || die
402 - if [[ ${PV} != 9999* ]] ; then
403 + if [[ "${PV}" == 9999* ]] ; then
404 + # Workaround for the version string
405 + ln -s "${ESVN_WC_PATH}/.svn" .svn || die "ln ${ESVN_WC_PATH}/.svn"
406 + else
407 epatch "${FILESDIR}"/${P}-bots.patch
408 fi
409 +
410 + einfo "Fixing libspeex linking..."
411 + sed -i -e 's/\(-lspeex\)/\1 -lspeexdsp/' Makefile || die "sed failed"
412 }
413
414 src_compile() {
415 - filter-flags -mfpmath=sse
416 +
417 buildit() { use $1 && echo 1 || echo 0 ; }
418 +
419 + # This is the easiest way to pass CPPFLAGS to the build system, which
420 + # are otherwise ignored.
421 + append-flags ${CPPFLAGS}
422 +
423 + # OPTIMIZE is disabled in favor of CFLAGS.
424 + #
425 + # TODO: BUILD_CLIENT_SMP=$(buildit smp)
426 emake \
427 - V=1 \
428 - BUILD_SERVER=1 \
429 - BUILD_CLIENT=$(( $(buildit !dedicated) )) \
430 - TEMPDIR="${T}" \
431 - CC="$(tc-getCC)" \
432 - ARCH=$(tc-arch-kernel) \
433 - OPTIMIZE="${CFLAGS}" \
434 - DEFAULT_BASEDIR="${GAMES_DATADIR}/quake3" \
435 - DEFAULT_LIBDIR="$(games_get_libdir)/quake3" \
436 - Q3ASM_CFLAGS="${CFLAGS}" \
437 - || die
438 + ARCH="$(my_arch)" \
439 + BUILD_CLIENT=$(( $(buildit opengl) | $(buildit !dedicated) )) \
440 + BUILD_GAME_QVM=0 \
441 + BUILD_GAME_SO=0 \
442 + BUILD_SERVER=$(buildit dedicated) \
443 + DEFAULT_BASEDIR="${GAMES_DATADIR}/${PN}" \
444 + GENERATE_DEPENDENCIES=0 \
445 + OPTIMIZE="" \
446 + PLATFORM="$(my_platform)" \
447 + USE_CODEC_VORBIS=$(buildit vorbis) \
448 + USE_CURL=$(buildit curl) \
449 + USE_CURL_DLOPEN=0 \
450 + USE_INTERNAL_SPEEX=0 \
451 + USE_INTERNAL_ZLIB=0 \
452 + USE_LOCAL_HEADERS=0 \
453 + USE_MUMBLE=$(buildit mumble) \
454 + USE_OPENAL=$(buildit openal) \
455 + USE_OPENAL_DLOPEN=0 \
456 + USE_VOIP=$(buildit voice) \
457 + || die "emake failed"
458 }
459
460 src_install() {
461 - dodoc id-readme.txt TODO README BUGS ChangeLog
462 + dodoc BUGS ChangeLog id-readme.txt md4-readme.txt NOTTODO README TODO || die
463 + if use voice ; then
464 + dodoc voip-readme.txt || die
465 + fi
466
467 - if ! use dedicated ; then
468 - doicon misc/quake3.png
469 + if use opengl || ! use dedicated ; then
470 + doicon misc/quake3.svg || die
471 make_desktop_entry quake3 "Quake III Arena"
472 + #use smp && make_desktop_entry quake3-smp "Quake III Arena (SMP)"
473 fi
474
475 - cd build/release*
476 - local old_x x
477 - for old_x in ioq* ; do
478 - x=${old_x%.*}
479 - newgamesbin ${old_x} ${x} || die "newgamesbin ${x}"
480 - dosym ${x} "${GAMES_BINDIR}"/${x/io}
481 + cd build/release-$(my_platform)-$(my_arch) || die
482 + local exe target
483 + for exe in {ioquake3,ioquake3-smp,ioq3ded}.$(my_arch) ; do
484 + if [[ -x ${exe} ]] ; then
485 + target=${exe%.*}
486 + newgamesbin ${exe} ${target} || die "newgamesbin ${target}"
487 + dosym ${target} "${GAMES_BINDIR}/${target/io}" || die "dosym ${target}"
488 + fi
489 done
490 - exeinto "$(games_get_libdir)"/${PN}/baseq3
491 - doexe baseq3/*.so || die "baseq3 .so"
492 - exeinto "$(games_get_libdir)"/${PN}/missionpack
493 - doexe missionpack/*.so || die "missionpack .so"
494
495 prepgamesdirs
496 }
497
498 pkg_postinst() {
499 games_pkg_postinst
500 - ewarn "The source version of Quake 3 will not work with Punk Buster."
501 - ewarn "If you need pb support, then use the quake3-bin package."
502 - echo
503 +
504 + ewarn "The source version of Quake III Arena will not work with PunkBuster."
505 + ewarn "If you need PB support, then use the games-fps/quake3-bin package."
506 }