# Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: inherit eutils flag-o-matic games DESCRIPTION="Enhanced engine for iD Software's Quake" HOMEPAGE="http://icculus.org/twilight/darkplaces/" MY_PV="20050902beta1" SRC_URI="http://icculus.org/twilight/darkplaces/files/darkplacesengine${MY_PV}.zip" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~ia64 ~x86" IUSE="alsa cdsound dedicated opengl oss sdl" DEPEND="app-arch/unzip" RDEPEND="alsa? ( media-libs/alsa-lib ) opengl? ( virtual/opengl ) sdl? ( media-libs/libsdl media-libs/sdl-mixer )" pkg_setup() { (use opengl || use sdl || use dedicated) || \ die "At least one of the USE flags 'opengl', 'sdl' and 'dedicated' are required." (use alsa && use oss) && die \ "Cannot choose both USE flags 'alsa' and 'oss'." } src_unpack() { unpack ${A} cd ${WORKDIR}/ unzip darkplacesenginesource${MY_PV}.zip || die cd ${WORKDIR}/darkplaces # Only CFLAGS optimization is the -march flag local MARCH=`get-flag -march` sed -i "s/CPUOPTIMIZATIONS=/CPUOPTIMIZATIONS=${MARCH}/" makefile.inc use cdsound || sed -i "s/cd_linux/cd_null/" makefile.inc # Default sound is alsa. if ! use alsa ; then if use oss ; then sed -i "s/DEFAULT_SNDAPI=ALSA/DEFAULT_SNDAPI=OSS/" \ makefile else sed -i "s/DEFAULT_SNDAPI=ALSA/DEFAULT_SNDAPI=NULL/" \ makefile fi fi } src_compile() { cd ${WORKDIR}/darkplaces if use opengl ; then emake cl-release || die "make opengl failed" fi if use sdl ; then emake sdl-release || die "make sdl failed" fi if use dedicated ; then emake sv-release || die "emake dedicated failed" fi } src_install() { cd ${WORKDIR}/darkplaces if use opengl ; then games_make_wrapper darkplaces-glx \ "${GAMES_BINDIR}/darkplaces-glx.bin" \ "${GAMES_DATADIR}/quake-data" newgamesbin darkplaces-glx darkplaces-glx.bin fi if use sdl ; then games_make_wrapper darkplaces-sdl \ "${GAMES_BINDIR}/darkplaces-sdl.bin" \ "${GAMES_DATADIR}/quake-data" newgamesbin darkplaces-sdl darkplaces-sdl.bin fi if use dedicated ; then games_make_wrapper darkplaces-dedicated \ "${GAMES_BINDIR}/darkplaces-dedicated.bin" \ "${GAMES_DATADIR}/quake-data" newgamesbin darkplaces-dedicated darkplaces-dedicated.bin fi dodoc darkplaces.txt COPYING ChangeLog todo prepgamesdirs } pkg_postinst() { einfo "Put the data files into ${GAMES_DATADIR}/quake-data/id1" games_pkg_postinst }