summaryrefslogtreecommitdiff
path: root/games-engines
diff options
context:
space:
mode:
authorNick White <git@njw.me.uk>2009-06-14 19:42:51 +0100
committerNick White <git@njw.me.uk>2009-06-14 19:42:51 +0100
commitdb58686ea91f7276adbf68e9db40fba0a4112405 (patch)
treec1afdd244def5611db551bb25f9a319e7a2aa93b /games-engines
downloadnjw-gentoo-local-db58686ea91f7276adbf68e9db40fba0a4112405.tar.bz2
njw-gentoo-local-db58686ea91f7276adbf68e9db40fba0a4112405.zip
Initial commit
Diffstat (limited to 'games-engines')
-rw-r--r--games-engines/gemrb/files/GemRB.cfg.sample228
-rw-r--r--games-engines/gemrb/files/digest-gemrb-0.2.93
-rw-r--r--games-engines/gemrb/files/fix_endian.patch32
-rw-r--r--games-engines/gemrb/files/multiplecfgs.patch91
-rw-r--r--games-engines/gemrb/files/openal-fix.patch13
-rw-r--r--games-engines/gemrb/files/override-resolution.patch12
-rw-r--r--games-engines/gemrb/files/pstquitfix.patch12
-rw-r--r--games-engines/gemrb/gemrb-0.2.9.ebuild56
-rw-r--r--games-engines/gemrb/gemrb-0.3.0.ebuild52
-rw-r--r--games-engines/gemrb/gemrb-0.3.1.ebuild54
-rw-r--r--games-engines/gemrb/gemrb-0.3.2.ebuild51
-rw-r--r--games-engines/gemrb/gemrb-0.4.0.ebuild48
-rw-r--r--games-engines/gemrb/gemrb-9999.ebuild54
13 files changed, 706 insertions, 0 deletions
diff --git a/games-engines/gemrb/files/GemRB.cfg.sample b/games-engines/gemrb/files/GemRB.cfg.sample
new file mode 100644
index 0000000..cb8b9e4
--- /dev/null
+++ b/games-engines/gemrb/files/GemRB.cfg.sample
@@ -0,0 +1,228 @@
+#####################################################
+# #
+# This is the GemRB Configuration file. #
+# Here are defined some default parameters for #
+# basic configuration and paths definition. #
+# #
+# Parameters are defined as a Name=Value pair #
+# The Value can be of three types: #
+# - String #
+# - Integer #
+# - Boolean #
+# #
+# The String value is represented as follows #
+# i.e. H:\GemRB\plugins #
+# Integers are defined as follows #
+# i.e. 12723 #
+# Booleans are represented as 1 or 0 in this file #
+# #
+# Lines starting with # are ignored #
+# #
+#####################################################
+
+#####################################################
+# #
+# Game Type [String] Use one of the following #
+# values: #
+# #
+# bg1 Baldur's Gate #
+# bg2 Baldur's Gate 2 : SoA #
+# tob Baldur's Gate 2 : ToB #
+# iwd IceWind Dale #
+# how IceWind Dale : HoW or ToTL #
+# iwd2 IceWind Dale 2 #
+# pst Planescape Torment #
+# (More will come) #
+# #
+#####################################################
+
+GameType=bg2
+
+#####################################################
+# Game Name [String] Title for GemRB window, use #
+# anything you wish, e.g. Baldur's Gate 3: RotFL #
+#####################################################
+
+GameName=Baldur's Gate 2
+
+#####################################################
+# Video Parameters #
+#####################################################
+
+#Screen width
+Width=640
+
+#Screen height
+Height=480
+
+#Bits per pixel [Integer:16,24,32]
+Bpp=32
+
+#Fullscreen [Boolean]
+Fullscreen=1
+
+# Delay before tooltips appear [milliseconds]
+TooltipDelay=500
+
+#####################################################
+# Audio Parameters #
+#####################################################
+# #
+# All volume options are in percents, with 100 #
+# being the normal and default volume #
+# #
+#####################################################
+
+# Volume of ambient sounds
+VolumeAmbients = 100
+
+# Volume during movie playback
+VolumeMovie = 100
+
+# Volume of background music
+VolumeMusic = 100
+
+# Volume of sound effects
+VolumeSFX = 100
+
+# Volume of PC or NPC voices
+VolumeVoices = 100
+
+#####################################################
+# Case Sensitive Filesystem [Boolean] #
+# #
+# If your installed game files are residing on a #
+# case sensitive filesystem (ext2 on Linux) then #
+# you need to set this value to 1, it has no #
+# effect on Windows #
+#####################################################
+
+CaseSensitive=1
+
+#GameOnCD=0
+
+#####################################################
+# Debug #
+#####################################################
+
+# Do not play intro videos [Boolean], useful for development
+SkipIntroVideos=0
+
+# Draw Frames per Second info [Boolean]
+DrawFPS=0
+
+# Hide unexplored parts of a map
+FogOfWar=1
+
+# Enable debug and cheat keystrokes, see docs/en/CheatKeys.txt
+# full listing
+EnableCheatKeys=0
+
+#####################################################
+# Paths #
+#####################################################
+# #
+# Note: You have to terminate all paths with the #
+# path separator character ('\' for Windows users, #
+# '/' for Linux users) #
+# #
+#####################################################
+
+#####################################################
+# Game Paths [String] #
+# #
+# These are the paths where the Game you want to #
+# play is installed. #
+# Enter the full path to the directory. #
+#####################################################
+
+GamePath=/usr/local/share/games/bg2/
+CD1=/usr/local/share/games/bg2/
+CD2=/usr/local/share/games/bg2/
+CD3=/usr/local/share/games/bg2/
+CD4=/usr/local/share/games/bg2/
+CD5=/usr/local/share/games/bg2/
+
+#####################################################
+# GemRB Path [String] #
+# #
+# This is the path where GemRB is stored, just #
+# enter the full path to the GemRB executable #
+#####################################################
+
+GemRBPath=/usr/share/games/gemrb/
+
+#####################################################
+# GemRB Cache Path [String] #
+# #
+# This is the path where GemRB will store the #
+# cached files, enter the full path to the GemRB #
+# Cache directory. #
+#####################################################
+
+CachePath=/var/cache/gemrb/
+
+#####################################################
+# GemRB GUI Scripts Path [String] #
+# #
+# This is the path where GemRB GUI scripts are #
+# stored, usually these are in the GemRB directory #
+# Enter the full path to the directory containing #
+# the 'GUIScript' subdirectory. #
+#####################################################
+
+GUIScriptsPath=/usr/share/games/gemrb/
+
+#####################################################
+# GemRB Plugins Path [String] #
+# #
+# This is the path containing GemRB plugins #
+# - shared libraries (.so) on Unixes, or #
+# DLLs (.dll) on windows. #
+# Enter the full path to the directory. #
+# #
+# You may need to specify this path if running #
+# GemRB from source directory on Linux. #
+#####################################################
+
+PluginsPath=/usr/games/lib/gemrb/plugins/
+
+#####################################################
+# GemRB Save Path [String] #
+# #
+# This is the path where GemRB looks for saved #
+# games. #
+# Enter the full path to the directory containing #
+# e.g. the 'save' subdirectory. #
+# #
+# You do not have to specify this if you use save #
+# subdir in the GamePath directory. #
+#####################################################
+
+SavePath=~/.bg2/
+
+#####################################################
+# Game Data Path [String] #
+# #
+# This is the subdirectory under GamePath where #
+# game data files are stored. #
+# #
+# You probably do NOT want to specify this! #
+#####################################################
+
+#GameDataPath=data
+
+#####################################################
+# Game Data Override Path [String] #
+# #
+# This is the subdirectory under GamePath where #
+# game data override files are stored. #
+# #
+# You probably do NOT want to specify this! #
+#####################################################
+
+#GameOverridePath=override
+
+#####################################################
+# END #
+#####################################################
diff --git a/games-engines/gemrb/files/digest-gemrb-0.2.9 b/games-engines/gemrb/files/digest-gemrb-0.2.9
new file mode 100644
index 0000000..7ed9405
--- /dev/null
+++ b/games-engines/gemrb/files/digest-gemrb-0.2.9
@@ -0,0 +1,3 @@
+MD5 0dda8e19fe8ed4ce95497a774c1525c8 gemrb-0.2.9.tar.gz 1972265
+RMD160 8f9a5770cc7ee2455687dc34f3951c6c9b3b7a81 gemrb-0.2.9.tar.gz 1972265
+SHA256 0046f692d119026235d153e3e24ad995606479f463ec367551077516c98bcf57 gemrb-0.2.9.tar.gz 1972265
diff --git a/games-engines/gemrb/files/fix_endian.patch b/games-engines/gemrb/files/fix_endian.patch
new file mode 100644
index 0000000..f7592a2
--- /dev/null
+++ b/games-engines/gemrb/files/fix_endian.patch
@@ -0,0 +1,32 @@
+--- gemrb/plugins/ACMImporter/readers.cpp 2007/11/02 15:43:25 4806
++++ gemrb/plugins/ACMImporter/readers.cpp 2007/11/03 18:57:46 4807
+@@ -277,21 +277,21 @@
+ inline void fix_endian(ieDword &dest)
+ {
+ unsigned char tmp;
+- tmp=((unsigned char *) dest)[0];
+- ((unsigned char *) dest)[0]=((unsigned char *) dest)[3];
+- ((unsigned char *) dest)[3]=tmp;
++ tmp=((unsigned char *) &dest)[0];
++ ((unsigned char *) &dest)[0]=((unsigned char *) &dest)[3];
++ ((unsigned char *) &dest)[3]=tmp;
+ tmp=((unsigned char *) dest)[1];
+- ((unsigned char *) dest)[1]=((unsigned char *) dest)[2];
+- ((unsigned char *) dest)[2]=tmp;
++ ((unsigned char *) &dest)[1]=((unsigned char *) &dest)[2];
++ ((unsigned char *) &dest)[2]=tmp;
+
+ }
+
+ inline void fix_endian(ieWord &dest)
+ {
+ unsigned char tmp;
+- tmp=((unsigned char *) dest)[0];
+- ((unsigned char *) dest)[0]=((unsigned char *) dest)[1];
+- ((unsigned char *) dest)[1]=tmp;
++ tmp=((unsigned char *) &dest)[0];
++ ((unsigned char *) &dest)[0]=((unsigned char *) &dest)[1];
++ ((unsigned char *) &dest)[1]=tmp;
+ }
+
+ int CWavPCMReader::init_reader()
diff --git a/games-engines/gemrb/files/multiplecfgs.patch b/games-engines/gemrb/files/multiplecfgs.patch
new file mode 100644
index 0000000..7aa16be
--- /dev/null
+++ b/games-engines/gemrb/files/multiplecfgs.patch
@@ -0,0 +1,91 @@
+Index: gemrb/plugins/Core/Interface.cpp
+===================================================================
+--- gemrb/plugins/Core/Interface.cpp (revision 5876)
++++ gemrb/plugins/Core/Interface.cpp (working copy)
+@@ -1813,59 +1813,51 @@
+ //if (!name[0]) // FIXME: could this happen?
+ // strcpy (name, PACKAGE); // ugly hack
+
+- // If we were called as $0 -c <filename>, load config from filename
+- if (argc > 2 && ! strcmp("-c", argv[1])) {
+- if (LoadConfig( argv[2] )) {
+- return true;
+- } else {
+- // Explicitly specified cfg file HAS to be present
+- return false;
+- }
+- }
+-
+ // FIXME: temporary hack, to be deleted??
+ if (LoadConfig( "GemRB.cfg" )) {
+ return true;
+ }
+
+- PathJoin( path, UserDir, name, NULL );
+- strcat( path, ".cfg" );
+-
+- if (LoadConfig( path )) {
+- return true;
+- }
+-
++ // Read gemrb.cfg
+ #ifdef SYSCONFDIR
+- PathJoin( path, SYSCONFDIR, name, NULL );
++ PathJoin( path, SYSCONFDIR, PACKAGE, NULL );
+ strcat( path, ".cfg" );
+
+- if (LoadConfig( path )) {
+- return true;
+- }
++ LoadConfig( path );
+ #endif
+
+- // Don't try with default binary name if we have tried it already
+- if (!strcmp( name, PACKAGE )) {
+- return false;
+- }
+-
+ PathJoin( path, UserDir, PACKAGE, NULL );
+ strcat( path, ".cfg" );
+
+- if (LoadConfig( path )) {
+- return true;
+- }
++ LoadConfig( path );
+
++ // Read binary name config
++ // Don't try with default binary name if we have tried it already
++ if (strcmp( name, PACKAGE )) {
+ #ifdef SYSCONFDIR
+- PathJoin( path, SYSCONFDIR, PACKAGE, NULL );
+- strcat( path, ".cfg" );
++ PathJoin( path, SYSCONFDIR, name, NULL );
++ strcat( path, ".cfg" );
+
+- if (LoadConfig( path )) {
+- return true;
+- }
++ LoadConfig( path );
+ #endif
+
+- return false;
++ PathJoin( path, UserDir, name, NULL );
++ strcat( path, ".cfg" );
++ LoadConfig( path );
++ }
++
++ // If we were called as $0 -c <filename>, load config from filename
++ if (argc > 2 && ! strcmp("-c", argv[1])) {
++ if (LoadConfig( argv[2] )) {
++ return true;
++ } else {
++ // Explicitly specified cfg file HAS to be present
++ return false;
++ }
++ }
++
++ return true;
++
+ #else // WIN32
+ // If we were called as $0 -c <filename>, load config from filename
+ if (argc > 2 && ! strcmp("-c", argv[1])) {
diff --git a/games-engines/gemrb/files/openal-fix.patch b/games-engines/gemrb/files/openal-fix.patch
new file mode 100644
index 0000000..78d2101
--- /dev/null
+++ b/games-engines/gemrb/files/openal-fix.patch
@@ -0,0 +1,13 @@
+Index: configure.in
+===================================================================
+--- configure.in (revision 5511)
++++ configure.in (working copy)
+@@ -126,7 +126,7 @@ AM_PATH_SDL(1.2.0, [], [AC_MSG_ERROR([
+
+ dnl Check for OpenAL, fail if not found.
+ dnl Check for libSDL Version 1.2 or greater, fail if not found.
+-AM_PATH_OPENAL([], [AC_MSG_ERROR([
++AC_CHECK_HEADER(AL/al.h,,[AC_MSG_ERROR]([
+
+ *** You need OpenAL (www.openal.org) to compile GemRB
+ ])])
diff --git a/games-engines/gemrb/files/override-resolution.patch b/games-engines/gemrb/files/override-resolution.patch
new file mode 100644
index 0000000..aa1447d
--- /dev/null
+++ b/games-engines/gemrb/files/override-resolution.patch
@@ -0,0 +1,12 @@
+Index: gemrb/plugins/Core/Interface.cpp
+===================================================================
+--- gemrb/plugins/Core/Interface.cpp (revision 5788)
++++ gemrb/plugins/Core/Interface.cpp (working copy)
+@@ -1944,6 +1944,7 @@
+ strncpy( GameDataPath, value, sizeof(GameDataPath) );
+ } else if (stricmp( name, "GameOverridePath" ) == 0) {
+ strncpy( GameOverridePath, value, sizeof(GameOverridePath) );
++ ResolveFilePath( GameOverridePath );
+ } else if (stricmp( name, "GemRBOverridePath" ) == 0) {
+ strncpy( GemRBOverridePath, value, sizeof(GemRBOverridePath) );
+ } else if (stricmp( name, "GameScriptsPath" ) == 0) {
diff --git a/games-engines/gemrb/files/pstquitfix.patch b/games-engines/gemrb/files/pstquitfix.patch
new file mode 100644
index 0000000..cb2a40c
--- /dev/null
+++ b/games-engines/gemrb/files/pstquitfix.patch
@@ -0,0 +1,12 @@
+Index: gemrb/GUIScripts/pst/GUIOPT.py
+===================================================================
+--- gemrb/GUIScripts/pst/GUIOPT.py (revision 5878)
++++ gemrb/GUIScripts/pst/GUIOPT.py (working copy)
+@@ -590,7 +590,6 @@
+ QuitMsgWindow.Unload ()
+ QuitMsgWindow = None
+ GemRB.SetVar ("FloatWindow", -1)
+- GemRB.GetVar.SetVisible (("OtherWindow"), 1)
+
+ GemRB.UnhideGUI ()
+ return
diff --git a/games-engines/gemrb/gemrb-0.2.9.ebuild b/games-engines/gemrb/gemrb-0.2.9.ebuild
new file mode 100644
index 0000000..82e199b
--- /dev/null
+++ b/games-engines/gemrb/gemrb-0.2.9.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/fix_endian.patch" # r4807 upstream
+ sed -i 's|\$(bindir)/plugins/|\$(libdir)/|' \
+ Makefile.am || die "move plugindir failed"
+ sed -i 's|\$(bindir)/Cache|var/cache/gemrb|' \
+ Makefile.am || die "move cache failed"
+ sed -i '/NullSound/d' \
+ gemrb/plugins/Makefile.am || die "enable sound failed"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+}
+
+src_compile() {
+ eautoreconf || die "eautoreconf failed"
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ chgrp ${GAMES_GROUP} "${D}/var/cache/gemrb"
+ chmod g+w "${D}/var/cache/gemrb/"
+ prepgamesdirs
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepalldocs
+}
diff --git a/games-engines/gemrb/gemrb-0.3.0.ebuild b/games-engines/gemrb/gemrb-0.3.0.ebuild
new file mode 100644
index 0000000..463c913
--- /dev/null
+++ b/games-engines/gemrb/gemrb-0.3.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -i 's|\$(bindir)/plugins/|\$(libdir)/|' \
+ Makefile.am || die "move plugindir failed"
+ sed -i '/NullSound/d' \
+ gemrb/plugins/Makefile.am || die "enable sound failed"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample GemRB.cfg.subdir.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+ eautoreconf || die "eautoreconf failed"
+}
+
+src_compile() {
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ diropts -m0775 -g ${GAMES_GROUP}
+ keepdir "/var/cache/gemrb"
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepgamesdirs
+}
diff --git a/games-engines/gemrb/gemrb-0.3.1.ebuild b/games-engines/gemrb/gemrb-0.3.1.ebuild
new file mode 100644
index 0000000..d70ae34
--- /dev/null
+++ b/games-engines/gemrb/gemrb-0.3.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -i 's/AM_PATH_OPENAL(\[\], /AC_CHECK_HEADER(AL\/al.h,,/' \
+ configure.in || die "fix openal detection failed"
+ sed -i "s/OPENAL_LIBS=\"\`openal-config --libs\`\"/OPENAL_LIBS=\"-lopenal\"/" \
+ configure.in || die "fix openal detection failed"
+ sed -i 's|\$(bindir)/plugins/|\$(libdir)/|' \
+ Makefile.am || die "move plugindir failed"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample GemRB.cfg.subdir.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+ eautoreconf || die "eautoreconf failed"
+}
+
+src_compile() {
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ diropts -m0775 -g ${GAMES_GROUP}
+ keepdir "/var/cache/gemrb"
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepgamesdirs
+}
diff --git a/games-engines/gemrb/gemrb-0.3.2.ebuild b/games-engines/gemrb/gemrb-0.3.2.ebuild
new file mode 100644
index 0000000..7a600f2
--- /dev/null
+++ b/games-engines/gemrb/gemrb-0.3.2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample GemRB.cfg.subdir.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+ epatch "${FILESDIR}/override-resolution.patch" # resolve override dir
+ epatch "${FILESDIR}/multiplecfgs.patch" # allow multiple cfg files
+ epatch "${FILESDIR}/pstquitfix.patch" # fix fatal pst guiscript bug
+ eautoreconf || die "eautoreconf failed"
+}
+
+src_compile() {
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ diropts -m0775 -g ${GAMES_GROUP}
+ keepdir "/var/cache/gemrb"
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepgamesdirs
+}
diff --git a/games-engines/gemrb/gemrb-0.4.0.ebuild b/games-engines/gemrb/gemrb-0.4.0.ebuild
new file mode 100644
index 0000000..e84e431
--- /dev/null
+++ b/games-engines/gemrb/gemrb-0.4.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample GemRB.cfg.subdir.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+ eautoreconf || die "eautoreconf failed"
+}
+
+src_compile() {
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ diropts -m0775 -g ${GAMES_GROUP}
+ keepdir "/var/cache/gemrb"
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepgamesdirs
+}
diff --git a/games-engines/gemrb/gemrb-9999.ebuild b/games-engines/gemrb/gemrb-9999.ebuild
new file mode 100644
index 0000000..7283c05
--- /dev/null
+++ b/games-engines/gemrb/gemrb-9999.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils games subversion
+
+DESCRIPTION="Reimplementation of the Infinity engine"
+HOMEPAGE="http://gemrb.sourceforge.net/"
+#SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+ESVN_REPO_URI="https://gemrb.svn.sourceforge.net/svnroot/gemrb/gemrb/trunk"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="doc"
+
+DEPEND=">=media-libs/libsdl-1.2
+ media-libs/openal
+ >=dev-lang/python-2.3"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ subversion_src_unpack ${A}
+ cd "${S}"
+ sed -i 's|\$(bindir)/plugins/|\$(libdir)/|' \
+ Makefile.am || die "move plugindir failed"
+ sed -i '/NullSound/d' \
+ gemrb/plugins/Makefile.am || die "enable sound failed"
+ sed -i '/sysconf_DATA = GemRB.cfg.sample GemRB.cfg.subdir.sample/d' \
+ gemrb/Makefile.am || die "remove default config failed"
+ if ! use doc ; then
+ sed -i 's|^SUBDIRS = \(.*\) docs|SUBDIRS = \1|' \
+ gemrb/Makefile.am || die "don't install docs failed"
+ fi
+ eautoreconf || die "eautoreconf failed"
+}
+
+src_compile() {
+ egamesconf \
+ --docdir="/usr/share/doc/${PF}" \
+ || die "egamesconf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ libtool --finish "${GAMES_LIBDIR}"
+ diropts -m0775 -g ${GAMES_GROUP}
+ keepdir "/var/cache/gemrb"
+ dodoc "${FILESDIR}/GemRB.cfg.sample"
+ dodoc README AUTHORS
+ prepgamesdirs
+}