diff options
Diffstat (limited to 'games-fps/duke3d/duke3d-20030817-r1.ebuild')
-rw-r--r-- | games-fps/duke3d/duke3d-20030817-r1.ebuild | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/games-fps/duke3d/duke3d-20030817-r1.ebuild b/games-fps/duke3d/duke3d-20030817-r1.ebuild new file mode 100644 index 000000000000..ea33ffba3803 --- /dev/null +++ b/games-fps/duke3d/duke3d-20030817-r1.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-fps/duke3d/duke3d-20030817-r1.ebuild,v 1.1 2003/09/19 00:09:00 vapier Exp $ + +ECVS_PASS="anonymous" +ECVS_SERVER="icculus.org:/cvs/cvsroot" +ECVS_MODULE="duke3d" +inherit flag-o-matic cvs games + +DESCRIPTION="port of the original DukeNukem 3D" +HOMEPAGE="http://icculus.org/projects/duke3d/" +SRC_URI="mirror://gentoo/${P}.tbz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="x86" +IUSE="perl opengl" # nophysfs" + +DEPEND="virtual/x11 + >=sys-apps/sed-4 + media-libs/libsdl + media-libs/sdl-mixer + media-sound/timidity++ + media-sound/timidity-eawpatches + opengl? ( virtual/opengl )" +# !nophysfs? ( dev-games/physfs )" + +S=${WORKDIR}/${ECVS_MODULE} + +use_tf() { [ `use ${1}` ] && echo true || echo false; } +use_ft() { [ `use ${1}` ] && echo false || echo true; } + +src_unpack() { + local fromcvs=0 + if [ ${fromcvs} -eq 1 ] ; then + cvs_src_unpack + cd duke3d/source + ECVS_MODULE="buildengine" + cvs_src_unpack + else + unpack ${A} + fi + + # configure buildengine + cd ${S}/source/buildengine +# -e "/^usephysfs := /s:=.*:= `use_ft nophysfs`:" \ + sed -i \ + -e "/^useperl := /s:=.*:= `use_tf perl`:" \ + -e "/^useopengl := /s:=.*:= `use_tf opengl`:" \ + -e "/^usephysfs := /s:=.*:= false:" \ + Makefile + [ `use x86` ] && sed -i 's:^#USE_ASM:USE_ASM:' Makefile + epatch ${FILESDIR}/${PV}-buildengine-makefile-cflags.patch + sed -i 's:/usr/lib/perl5/i386-linux/CORE/libperl.a::' Makefile + + # configure duke3d + cd ${S}/source + epatch ${FILESDIR}/${PV}-duke3d-makefile-opts.patch + [ `use x86` ] && sed -i '/^#use_asm/s:#::' Makefile + [ `use opengl` ] && sed -i '/^#use_opengl/s:#::' Makefile +# [ `use nophysfs` ] || sed -i '/^#use_physfs/s:#::' Makefile +} + +src_compile() { + # -O3 fails on athlon with gcc 3.2.3, maybe others. + replace-flags "-O3" "-O2" + cd source/buildengine + emake OPTFLAGS="${CFLAGS}" || die "buildengine failed" + cd .. + emake OPTIMIZE="${CFLAGS}" || die "duke3d failed" +} + +src_install() { + dogamesbin ${FILESDIR}/duke3d + dosed "s:GENTOO_DIR:${GAMES_DATADIR}/${PN}:" ${GAMES_BINDIR}/duke3d + newgamesbin source/duke3d duke3d.bin + + dodoc readme.txt + + cd testdata + insinto ${GAMES_DATADIR}/${PN} + newins defs.con DEFS.CON + newins game.con GAME.CON + newins user.con USER.CON + doins ${FILESDIR}/network.cfg + insinto ${GAMES_SYSCONFDIR} + doins ${FILESDIR}/duke3d.cfg + dosym ${GAMES_SYSCONFDIR}/duke3d.cfg ${GAMES_DATADIR}/${PN}/DUKE3D.CFG + + prepgamesdirs +} + +pkg_postinst() { + games_pkg_postinst + einfo "Just put the data files in ${GAMES_DATADIR}/${PN}" + einfo "before playing !" +} |