--- /usr/portage/games-fps/doomsday/doomsday-1.8.6-r1.ebuild 2006-03-13 21:33:02.000000000 +0000 +++ doomsday-1.8.6-r2.ebuild 2006-03-24 08:53:08.000000000 +0000 @@ -1,17 +1,20 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/games-fps/doomsday/doomsday-1.8.6-r1.ebuild,v 1.1 2006/03/13 21:33:02 tupone Exp $ +# $Header: $ -inherit eutils games +inherit eutils versionator games -DESCRIPTION="A modern gaming engine for Doom, Heretic, and Hexen" +# For compatibility with both 1.8.6-r2 & 1.9.0_beta3 +MY_PV=$(replace_version_separator 3 '-') + +DESCRIPTION="Modern gaming engine for Doom, Heretic and Hexen" HOMEPAGE="http://www.doomsdayhq.com/" -SRC_URI="mirror://sourceforge/deng/deng-${PV}.tar.gz" +SRC_URI="mirror://sourceforge/deng/deng-${MY_PV}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~ppc ~x86" -IUSE="openal" +IUSE="freedoom openal demo" DEPEND="virtual/opengl virtual/glu @@ -19,35 +22,69 @@ media-libs/sdl-mixer media-libs/sdl-net media-libs/libpng - || ( x11-libs/libXext virtual/x11 ) - openal? ( media-libs/openal )" + freedoom? ( >=games-fps/freedoom-0.4.1-r1 ) + demo? ( >=games-fps/doom-data-1-r1 ) + openal? ( media-libs/openal ) + || ( + x11-libs/libXext + virtual/x11 )" -S=${WORKDIR}/deng-${PV} +S=${WORKDIR}/deng-${MY_PV} src_unpack() { unpack ${A} cd "${S}" - # Fixing music driver init - sed -i \ + # Fix music driver init + sed -i Src/s_mus.c \ -e "s/musd_loaded.Init/musd_loaded.Init \&\& musd_loaded.Init/" \ -e "s/musd_loaded.Shut/if (musd_loaded.Shutdown) musd_loaded.Shut/" \ - Src/s_mus.c + || die "sed s_mus failed" } src_install() { make DESTDIR="${D}" install || die "make install failed" rmdir "${D}/${GAMES_PREFIX}/include" - mv "${D}/${GAMES_DATADIR}/"{deng/Data/jDoom,doom-data} + mv "${D}/${GAMES_DATADIR}/"{deng/Data/jDoom,doom-data} || die "mv failed" dosym "${GAMES_DATADIR}"/doom-data "${GAMES_DATADIR}"/deng/Data/jDoom local game for game in jdoom jheretic jhexen ; do newgamesbin "${FILESDIR}/wrapper" ${game} - sed -i \ - -e "s:GAME:${game}:" "${D}"/${GAMES_BINDIR}/${game} \ + sed -i "${D}"/${GAMES_BINDIR}/${game} \ + -e "s:GAME:${game}:" \ || die "sed ${GAMES_BINDIR}/${game} failed" done + # Make wrappers for the common wads + for n in doom doom2 ; do + games_make_wrapper ${PN}-${n} "jdoom -file ${GAMES_DATADIR}/doom-data/${n}.wad" + done + + if use freedoom ; then + # Make wrapper for the freedoom episode + games_make_wrapper ${PN}-freedoom "jdoom -file ${GAMES_DATADIR}/doom-data/freedoom/*.wad" + make_desktop_entry ${PN}-freedoom "Doomsday - Freedoom" + fi + + if use demo ; then + # Make wrapper for the demo episode (1st episode of Doom 1) + games_make_wrapper ${PN}-demo "jdoom -file ${GAMES_DATADIR}/doom-data/doom1.wad" + make_desktop_entry ${PN}-demo "Doomsday - Demo" + fi + dodoc Doc/*.txt Doc/*/*.txt README + prepgamesdirs } + +pkg_postinst() { + einfo "To play the original Doom levels, place doom.wad and/or doom2.wad into:" + einfo " ${GAMES_DATADIR}/doom-data" + einfo "Then run doomsday-doom or doomsday-doom2 accordingly." + echo + einfo "doom1.wad is the shareware demo wad consisting of 1 episode, and doom.wad" + einfo "is the full Doom 1 set of 3 episodes (or 4 in the Final Doom wad)." + echo + + games_pkg_postinst +}