diff options
Diffstat (limited to 'games-fps/quake2-icculus')
-rw-r--r-- | games-fps/quake2-icculus/ChangeLog | 8 | ||||
-rw-r--r-- | games-fps/quake2-icculus/files/digest-quake2-icculus-0.16.1-r1 | 12 | ||||
-rw-r--r-- | games-fps/quake2-icculus/quake2-icculus-0.16.1-r1.ebuild | 199 |
3 files changed, 218 insertions, 1 deletions
diff --git a/games-fps/quake2-icculus/ChangeLog b/games-fps/quake2-icculus/ChangeLog index 7b288c66856d..b96b8beb7122 100644 --- a/games-fps/quake2-icculus/ChangeLog +++ b/games-fps/quake2-icculus/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for games-fps/quake2-icculus # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/games-fps/quake2-icculus/ChangeLog,v 1.21 2006/06/05 21:49:04 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/games-fps/quake2-icculus/ChangeLog,v 1.22 2006/06/27 21:09:50 wolf31o2 Exp $ + +*quake2-icculus-0.16.1-r1 (27 Jun 2006) + + 27 Jun 2006; Chris Gianelloni <wolf31o2@gentoo.org> + +quake2-icculus-0.16.1-r1.ebuild: + Revision bump to add support for the demo data. Closing bug #137522. 05 Jun 2006; Diego Pettenò <flameeyes@gentoo.org> quake2-icculus-0.16.1.ebuild: diff --git a/games-fps/quake2-icculus/files/digest-quake2-icculus-0.16.1-r1 b/games-fps/quake2-icculus/files/digest-quake2-icculus-0.16.1-r1 new file mode 100644 index 000000000000..505b44fc5c95 --- /dev/null +++ b/games-fps/quake2-icculus/files/digest-quake2-icculus-0.16.1-r1 @@ -0,0 +1,12 @@ +MD5 04d3f1fb7fb4dada7175a41f4595c7eb maxpak.pak 3282742 +RMD160 6b5223fee63dbb2c886e3c1e39d9e157d65f589f maxpak.pak 3282742 +SHA256 653569fe880f1ed5f7529483ac961b22078482e6ff0e83f4d9d1bc503c866770 maxpak.pak 3282742 +MD5 6b0e3fff324a5db58a8f8309dcabb47a quake2-r0.16.1.tar.gz 1525384 +RMD160 dbbf9cad08ab381e0c2cd037e317104085455c23 quake2-r0.16.1.tar.gz 1525384 +SHA256 49f4d3d53772b6ffd7733506f5d121c7893bfd8884133bfc36a28039c0744642 quake2-r0.16.1.tar.gz 1525384 +MD5 7d5e052839c9e629bad0a6570aa70554 roguesrc320.shar.Z 626769 +RMD160 767c5b1a7a1123370e9c924282656dfdcc6cebba roguesrc320.shar.Z 626769 +SHA256 ceefb2fd748961cb0bc3244220f3eb09d8f7b8ca2eb32cdf9b284727a2fdc919 roguesrc320.shar.Z 626769 +MD5 41fc4ecc4f25c068e7d1f488bd4a1e1a xatrixsrc320.shar.Z 455917 +RMD160 357182dcd760a95b27942cdf807ba1242bcb1160 xatrixsrc320.shar.Z 455917 +SHA256 94bf596cd85d38ea294b99ccb0ebb5e4b9776cca335001b3803e2d8407395589 xatrixsrc320.shar.Z 455917 diff --git a/games-fps/quake2-icculus/quake2-icculus-0.16.1-r1.ebuild b/games-fps/quake2-icculus/quake2-icculus-0.16.1-r1.ebuild new file mode 100644 index 000000000000..c2d55c191036 --- /dev/null +++ b/games-fps/quake2-icculus/quake2-icculus-0.16.1-r1.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-fps/quake2-icculus/quake2-icculus-0.16.1-r1.ebuild,v 1.1 2006/06/27 21:09:50 wolf31o2 Exp $ + +inherit eutils toolchain-funcs games + +MY_P="quake2-r${PV}" +DESCRIPTION="The icculus.org Linux port of iD's Quake 2 engine" +HOMEPAGE="http://icculus.org/quake2/" +SRC_URI="http://icculus.org/quake2/files/${MY_P}.tar.gz + qmax? ( http://icculus.org/quake2/files/maxpak.pak ) + rogue? ( mirror://idsoftware/quake2/source/roguesrc320.shar.Z ) + xatrix? ( mirror://idsoftware/quake2/source/xatrixsrc320.shar.Z )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86 ~x86-fbsd" +IUSE="aalib alsa arts cdinstall dedicated demo ipv6 joystick opengl qmax rogue sdl svga X xatrix" + +UIDEPEND="aalib? ( media-libs/aalib ) + alsa? ( media-libs/alsa-lib ) + arts? ( kde-base/arts ) + opengl? ( virtual/opengl ) + svga? ( media-libs/svgalib ) + sdl? ( media-libs/libsdl )" +RDEPEND="${UIDEPEND} + cdinstall? ( games-fps/quake2-data ) + demo? ( games-fps/quake2-demodata )" +DEPEND="${UIDEPEND} + X? ( || ( + ( x11-proto/xproto x11-proto/xextproto x11-proto/xf86dgaproto x11-proto/xf86vidmodeproto ) + virtual/x11 + ) ) + rogue? ( || ( sys-freebsd/freebsd-ubin app-arch/sharutils ) ) + xatrix? ( || ( sys-freebsd/freebsd-ubin app-arch/sharutils ) )" + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + games_pkg_setup + + local alert_user + + if ! use qmax && $( use opengl || use sdl ) ; then + einfo "The 'qmax' graphical improvements are recommended." + echo + alert_user=y + fi + + if ! use sdl ; then + ewarn "The ALSA sound driver for this game is broken." + ewarn "The 'sdl' USE flag is recommended instead." + echo + alert_user=y + fi + + if [[ -n "${alert_user}" ]] ; then + ebeep + epause + fi +} + +src_unpack() { + unpack ${MY_P}.tar.gz + cd "${S}" + sed -i -e 's:BUILD_SOFTX:BUILD_X11:' Makefile + epatch "${FILESDIR}"/${P}-amd64.patch # make sure this is still needed in future versions + epatch "${FILESDIR}"/${P}-gentoo-paths.patch + + # Now we deal with the silly rogue / xatrix addons ... this is ugly :/ + ln -s $(which echo) "${T}"/more + for g in rogue xatrix ; do + use ${g} || continue + mkdir -p "${S}"/src/${g} + cd "${S}"/src/${g} + local shar=${g}src320.shar + unpack ${shar}.Z + sed -i \ + -e 's:^read ans:ans=yes :' ${shar} \ + || die "sed ${shar} failed" + echo ">>> Unpacking ${shar} to ${PWD}" + env PATH=${T}:${PATH} unshar ${shar} || die "unpacking ${shar} failed" + rm ${shar} + done + if use xatrix ; then + epatch "${FILESDIR}/${P}"-gcc41.patch + fi + if use rogue ; then + cd "${S}"/src + epatch "${FILESDIR}"/0.16-rogue-nan.patch + fi +} + +yesno() { + for f in "$@" ; do + if ! useq $f ; then + echo NO + return 1 + fi + done + echo YES + return 0 +} + +src_compile() { + # xatrix fails to build + # rogue fails to build + local libsuffix + for BUILD_QMAX in YES NO ; do + use qmax && [[ ${BUILD_QMAX} == "NO" ]] && continue + [[ ${BUILD_QMAX} == "YES" ]] \ + && libsuffix=-qmax \ + || libsuffix= + make clean || die "cleaning failed" + emake -j1 build_release \ + BUILD_SDLQUAKE2=$(yesno sdl) \ + BUILD_SVGA=$(yesno svga) \ + BUILD_X11=$(yesno X) \ + BUILD_GLX=$(yesno opengl) \ + BUILD_SDL=$(yesno sdl) \ + BUILD_SDLGL=$(yesno sdl opengl) \ + BUILD_CTFDLL=YES \ + BUILD_XATRIX=$(yesno xatrix) \ + BUILD_ROGUE=$(yesno rogue) \ + BUILD_JOYSTICK=$(yesno joystick) \ + BUILD_DEDICATED=$(yesno dedicated) \ + BUILD_AA=$(yesno aalib) \ + BUILD_QMAX=${BUILD_QMAX} \ + HAVE_IPV6=$(yesno ipv6) \ + BUILD_ARTS=$(yesno arts) \ + BUILD_ALSA=$(yesno alsa) \ + SDLDIR=/usr/lib \ + DEFAULT_BASEDIR="${GAMES_DATADIR}/quake2" \ + DEFAULT_LIBDIR="${GAMES_LIBDIR}/${PN}${libsuffix}" \ + OPT_CFLAGS="${CFLAGS}" \ + CC="$(tc-getCC)" \ + || die "make failed" + # now we save the build dir ... except for the object files ... + rm release*/*/*.o + mv release* my-rel-${BUILD_QMAX} + cd my-rel-${BUILD_QMAX} + rm -rf ref_{gl,soft} ded game client ctf/*.o + mkdir baseq2 + mv game*.so baseq2/ + cd .. + done +} + +src_install() { + local q2dir=${GAMES_LIBDIR}/${PN} + local q2maxdir=${GAMES_LIBDIR}/${PN}-qmax + + dodoc readme.txt README TODO "${FILESDIR}"/README-postinstall + + # regular q2 files + dodir "${q2dir}" + cp -rf my-rel-NO/* "${D}/${q2dir}"/ + dogamesbin "${D}/${q2dir}"/{quake2,q2ded} + rm "${D}/${q2dir}"/{quake2,q2ded} + use sdl \ + && dogamesbin "${D}/${q2dir}"/sdlquake2 \ + && rm "${D}/${q2dir}"/sdlquake2 + + doicon "${FILESDIR}"/quake2.xpm + make_desktop_entry quake2 "Quake 2" quake2.xpm + + # q2max files + if use qmax ; then + dodir "${q2maxdir}" + cp -rf my-rel-YES/* "${D}/${q2maxdir}"/ + newgamesbin "${D}/${q2maxdir}"/quake2 quake2-qmax + newgamesbin "${D}/${q2maxdir}"/q2ded q2ded-qmax + rm "${D}/${q2maxdir}"/{quake2,q2ded} + use sdl \ + && newgamesbin "${D}/${q2maxdir}"/sdlquake2 sdlquake2-qmax \ + && rm "${D}/${q2maxdir}"/sdlquake2 + + insinto "${q2maxdir}"/baseq2 + doins "${DISTDIR}"/maxpak.pak + + make_desktop_entry quake2-qmax Quake2-qmax quake2.xpm + fi + + prepgamesdirs +} + +pkg_postinst() { + games_pkg_postinst + + einfo "Go read /usr/share/doc/${PF}/README-postinstall.gz right now!" + einfo "It's important - This install is just the engine, you still need" + einfo "the data paks. Go read." + + if use demo && ! built_with_use "games-fps/quake2-demodata" symlink ; then + ewarn "To play the Quake 2 demo," + ewarn "emerge games-fps/quake2-demodata with the 'symlink' USE flag." + echo + fi +} |