# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ ESVN_UPDATE_CMD="svn co" ESVN_REPO_URI="https://svn.sourceforge.net/svnroot/vavoom/trunk/vavoom" inherit subversion games eutils flag-o-matic DESCRIPTION="Vavoom is a source port based on sources of Doom, Heretic, Hexen and a little bit from Quake." HOMEPAGE="http://www.vavoom-engine.com/" LICENSE="GPL-2" SLOT="0" KEYWORDS="-*" IUSE="debug opengl openal external-glbsp vorbis mad mikmod flac dedicated" DEPEND="media-libs/libpng sys-libs/zlib media-sound/timidity++ media-libs/libsdl media-libs/sdl-mixer opengl? ( virtual/opengl ) openal? ( media-libs/openal ) vorbis? ( media-libs/libvorbis ) mad? ( media-libs/libmad ) mikmod? ( media-libs/libmikmod ) flac? ( media-libs/flac ) external-glbsp? ( games-util/glbsp )" pkg_setup() { if use opengl ; then if ! built_with_use media-libs/libsdl opengl ; then eerror "Recompile media-libs/libsdl with then opengl USE flag" die "libsdl without opengl detected" fi fi games_pkg_setup } src_unpack() { subversion_src_unpack || die "svn_unpack failed" } src_compile() { if use debug ; then append-flags -g fi cd ${WORKDIR}/${P} einfo "Running autogen.sh..." ./autogen.sh || die "autogen.sh failed" local mydir mydir="${GAMES_DATADIR}/${PN}" egamesconf \ --with-sdl \ --with-iwaddir=${mydir} \ $(use_with opengl) \ $(use_with openal) \ $(use_with external-glbsp) \ $(use_with vorbis) \ $(use_with mad libmad) \ $(use_with mikmod) \ $(use_with flac) \ $(use_enable dedicated server) \ $(use_enable debug) || die "configure failed" emake -j1 || die "emake failed" } src_install() { # make install of SVN doesn't run properly in sandbox #make DESTDIR=${D} install # Install files manually local mydir mydir="${GAMES_DATADIR}/${PN}" exeinto "${mydir}/" newexe ${PN}.`uname -m` ${PN} || die "newexe failed" games_make_wrapper ${PN} "./${PN} -iwaddir ${mydir}" "${mydir}" "${mydir}" insinto "${mydir}/basev" doins basev/games.txt || die "doins failed" insinto "${mydir}/basev/common" doins basev/common/default.cfg || die "doins failed" doins basev/common/startup.vs || die "doins failed" doins basev/common/wad0.wad || die "doins failed" insinto "${mydir}/basev/doom" doins basev/doom/wad0.wad || die "doins failed" insinto "${mydir}/basev/doom1" doins basev/doom1/base.txt || die "doins failed" doins basev/doom1/wad0.wad || die "doins failed" insinto "${mydir}/basev/doom2" doins basev/doom2/base.txt || die "doins failed" doins basev/doom2/wad0.wad || die "doins failed" insinto "${mydir}/basev/heretic" doins basev/heretic/wad0.wad || die "doins failed" insinto "${mydir}/basev/hexen" doins basev/hexen/wad0.wad || die "doins failed" insinto "${mydir}/basev/plutonia" doins basev/plutonia/base.txt || die "doins failed" doins basev/plutonia/wad0.wad || die "doins failed" insinto "${mydir}/basev/strife" doins basev/strife/wad0.wad || die "doins failed" insinto "${mydir}/basev/tnt" doins basev/tnt/base.txt || die "doins failed" doins basev/tnt/wad0.wad || die "doins failed" dodoc docs/*.txt prepgamesdirs } pkg_postinst() { local mydir mydir="${GAMES_DATADIR}/${PN}" games_pkg_postinst einfo "Copy WAD files in ${mydir} with correct permissions:" einfo "Example: (run as root) chmod 640 doom.wad && chgrp games doom.wad" einfo einfo "Example command line:" einfo " vavoom -doom -opengl -window" einfo einfo "See documentation for further details" }