# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils toolchain-funcs games DESCRIPTION="Team-based aliens vs humans FPS with buildable structures" HOMEPAGE="http://tremulous.net/" SRC_URI="mirror://sourceforge/${PN}/${P}.zip http://0day.icculus.org/mirrors/${PN}/${P}.zip ftp://ftp.wireplay.co.uk/pub/quake3arena/mods/${PN}/${P}.zip" LICENSE="GPL-2 CCPL-Attribution-ShareAlike-2.5" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="dedicated custom-cflags openal opengl sdl vorbis" RESTRICT="primaryuri" UIDEPEND="media-libs/alsa-lib openal? ( media-libs/openal ) sdl? ( media-libs/libsdl ) vorbis? ( media-libs/libogg media-libs/libvorbis ) virtual/opengl || ( ( x11-libs/libX11 x11-libs/libXau x11-libs/libXdmcp x11-libs/libXext !sdl? ( x11-libs/libXxf86dga x11-libs/libXxf86vm ) ) virtual/x11 )" RDEPEND="opengl? ( ${UIDEPEND} ) !opengl? ( sdl? ( ${UIDEPEND} ) ) !opengl? ( !sdl? ( !dedicated? ( ${UIDEPEND} ) ) )" DEPEND="${RDEPEND} app-arch/unzip" home=${WORKDIR}/${PN} S=${home}/${P}-src dir=${GAMES_DATADIR}/${PN} pkg_setup() { games_pkg_setup if has_version =media-libs/openal-20050504* ; then ewarn "Upgrade media-libs/openal to a later version," ewarn "e.g. openal-20051024 or openal-0.0.8" die "Need a more recent version of media-libs/openal" fi } src_unpack() { unpack ${P}.zip cd "${WORKDIR}/${PN}" unpack ./${P}-src.tar.gz } src_compile() { buildit() { use $1 && echo 1 || echo 0 ; } local build_client=1 if use dedicated && ! use opengl && ! use sdl ; then build_client=0 fi local opts="BUILD_SERVER=$(buildit dedicated) BUILD_CLIENT=${build_client} CC=\"$(tc-getCC)\" DEFAULT_BASEDIR=\"${GAMES_DATADIR}/${PN}\" DEFAULT_LIBDIR=\"${GAMES_LIBDIR}/${PN}\" USE_OPENAL=$(buildit openal) USE_OPENAL_DLOPEN=$(buildit openal) USE_SDL=$(buildit sdl) USE_CODEC_VORBIS=$(buildit vorbis) USE_LOCAL_HEADERS=0" if use custom-cflags ; then # Override default CFLAGS in OPTIMIZE opts="${opts} OPTIMIZE=" fi emake ${opts} \ || die "emake failed" } src_install() { insinto "${dir}" doins -r "${home}"/{base,*.pdf} || die "doins -r failed" if use opengl || use sdl || ! use dedicated ; then # Install client newgamesbin build/release-linux-${ARCH}/${PN}.${ARCH} ${PN} \ || die "newgamesbin client failed" doicon "${home}"/${PN}.xpm make_desktop_entry ${PN} "Tremulous" ${PN}.xpm fi if use dedicated ; then # Install server newgamesbin build/release-linux-${ARCH}/tremded.${ARCH} ${PN}-ded \ || die "newgamesbin ded failed" fi dodoc "${home}"/ChangeLog prepgamesdirs } pkg_postinst() { games_pkg_postinst einfo "Read http://tremulous.net/manual/" einfo "or ${dir}/manual.pdf" echo }