summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/duke3d/duke3d-20030817-r1.ebuild')
-rw-r--r--games-fps/duke3d/duke3d-20030817-r1.ebuild97
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 !"
+}