summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-rpg')
-rw-r--r--games-rpg/nwn/ChangeLog11
-rw-r--r--games-rpg/nwn/nwn-1.68-r5.ebuild252
-rw-r--r--games-rpg/nwn/nwn-1.69-r1.ebuild102
3 files changed, 363 insertions, 2 deletions
diff --git a/games-rpg/nwn/ChangeLog b/games-rpg/nwn/ChangeLog
index e3faf4774419..258f62a423ab 100644
--- a/games-rpg/nwn/ChangeLog
+++ b/games-rpg/nwn/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for games-rpg/nwn
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/ChangeLog,v 1.71 2009/09/24 16:21:07 betelgeuse Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/ChangeLog,v 1.72 2010/01/25 01:24:52 calchan Exp $
+
+*nwn-1.69-r1 (25 Jan 2010)
+*nwn-1.68-r5 (25 Jan 2010)
+
+ 25 Jan 2010; Denis Dupeyron <calchan@gentoo.org> +nwn-1.68-r5.ebuild,
+ +nwn-1.69-r1.ebuild:
+ Updated and cleaned-up binary libs. Fixed bug #210619.
24 Sep 2009; Petteri Räty <betelgeuse@gentoo.org> nwn-1.69.ebuild:
Migrate to EAPI 2 in order to nuke built_with_use.
diff --git a/games-rpg/nwn/nwn-1.68-r5.ebuild b/games-rpg/nwn/nwn-1.68-r5.ebuild
new file mode 100644
index 000000000000..e3dd48d02ee8
--- /dev/null
+++ b/games-rpg/nwn/nwn-1.68-r5.ebuild
@@ -0,0 +1,252 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/nwn-1.68-r5.ebuild,v 1.1 2010/01/25 01:24:52 calchan Exp $
+
+inherit eutils games
+
+LANGUAGES="linguas_fr linguas_it linguas_es linguas_de linguas_en"
+
+MY_PV=${PV//.}
+PATCH_URL_BASE=http://files.bioware.com/neverwinternights/updates/linux/${MY_PV}
+PACKAGE_NAME=_linuxclient${MY_PV}_orig.tar.gz
+SOU_NAME=_linuxclient${MY_PV}_xp1.tar.gz
+HOU_NAME=_linuxclient${MY_PV}_xp2.tar.gz
+
+DESCRIPTION="Epic role-playing game set in a huge medieval fantasy world of Dungeons and Dragons"
+HOMEPAGE="http://nwn.bioware.com/downloads/linuxclient.html"
+SRC_URI="http://dev.gentoo.org/~calchan/distfiles/nwn-libs-1.tar.bz2
+ linguas_fr? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/French${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/French${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/French${HOU_NAME} ) )
+ linguas_it? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/Italian${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/Italian${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/Italian${HOU_NAME} ) )
+ linguas_en? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/English${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/English${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/English${HOU_NAME} ) )
+ linguas_es? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/Spanish${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/Spanish${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/Spanish${HOU_NAME} ) )
+ linguas_de? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/German${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/German${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/German${HOU_NAME} ) )
+ !linguas_en? (
+ !linguas_es? (
+ !linguas_de? (
+ !linguas_fr? (
+ !linguas_it? (
+ !sou? ( !hou? ( ${PATCH_URL_BASE}/English${PACKAGE_NAME} ) )
+ sou? ( ${PATCH_URL_BASE}/English${SOU_NAME} )
+ hou? ( ${PATCH_URL_BASE}/English${HOU_NAME} ) ) ) ) ) )"
+
+LICENSE="NWN-EULA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="sou hou ${LANGUAGES}"
+# nowin USE flag not used anymore by pkg_setup()
+RESTRICT="mirror strip"
+
+RDEPEND=">=games-rpg/nwn-data-1.29-r3
+ virtual/opengl
+ >=media-libs/libsdl-1.2.5
+ !<games-rpg/nwmouse-0.1-r1
+ x86? (
+ =virtual/libstdc++-3.3
+ x11-libs/libXext
+ x11-libs/libX11 )
+ amd64? (
+ app-emulation/emul-linux-x86-baselibs
+ app-emulation/emul-linux-x86-compat
+ app-emulation/emul-linux-x86-xlibs )"
+DEPEND="app-arch/unzip"
+
+S=${WORKDIR}/nwn
+
+GAMES_LICENSE_CHECK="yes"
+dir=${GAMES_PREFIX_OPT}/${PN}
+Ddir=${D}/${dir}
+
+die_from_busted_nwn-data() {
+ local use=$*
+ ewarn "You must emerge games-rpg/nwn-data with USE=$use. You can fix this"
+ ewarn "by doing the following:"
+ echo
+ elog "mkdir -p /etc/portage"
+ elog "echo 'games-rpg/nwn-data $use' >> /etc/portage/package.use"
+ elog "emerge --oneshot games-rpg/nwn-data"
+ die "nwn-data requires USE=$use"
+}
+
+die_from_busted_linguas_nwn-data() {
+ local use=$*
+ ewarn "You must emerge games-rpg/nwn-data with LINGUAS=${use/linguas_/}."
+ ewarn "You can fix this by doing the following:"
+ echo
+ elog "mkdir -p /etc/portage"
+ elog "echo 'games-rpg/nwn-data $use' >> /etc/portage/package.use"
+ elog "emerge --oneshot games-rpg/nwn-data"
+ die "nwn-data requires LINGUAS='$use'"
+}
+
+pkg_setup() {
+ games_pkg_setup
+ if use sou
+ then
+ built_with_use games-rpg/nwn-data sou || die_from_busted_nwn-data sou
+ fi
+ if use hou
+ then
+ built_with_use games-rpg/nwn-data hou || die_from_busted_nwn-data hou
+ fi
+
+ strip-linguas de en es fr it
+}
+
+src_unpack() {
+ mkdir -p "${S}"
+ cd "${S}"
+ mkdir -p .metadata
+ for a in ${A}
+ do
+ if [ -z "${a/*libs*}" ]
+ then
+ unpack "${a}" || die "unpack ${a}"
+ fi
+
+ if [ -z "${a/*orig*}" ]
+ then
+ currentlocale=""
+ if [ -z "${a/*German*/}" ]
+ then
+ currentlocale=de
+ elif [ -z "${a/*English*/}" ]
+ then
+ currentlocale=en
+ elif [ -z "${a/*Spanish*/}" ]
+ then
+ currentlocale=es
+ elif [ -z "${a/*Italian*/}" ]
+ then
+ currentlocale=it
+ elif [ -z "${a/*French*/}" ]
+ then
+ currentlocale=fr
+ fi
+ if [ -n "$currentlocale" ]
+ then
+ mkdir -p "${currentlocale}"
+ cd "${currentlocale}"
+ unpack "${a}" || die "unpack ${a}"
+ cd ..
+ fi
+ fi
+ done
+ use sou && (
+ for a in ${A}
+ do
+ if [ -z "${a/*$SOU_NAME}" ]
+ then
+ currentlocale=""
+ if [ -z "${a/*German*/}" ]
+ then
+ currentlocale=de
+ elif [ -z "${a/*English*/}" ]
+ then
+ currentlocale=en
+ elif [ -z "${a/*Spanish*/}" ]
+ then
+ currentlocale=es
+ elif [ -z "${a/*Italian*/}" ]
+ then
+ currentlocale=it
+ elif [ -z "${a/*French*/}" ]
+ then
+ currentlocale=fr
+ fi
+ if [ -n "$currentlocale" ]
+ then
+ mkdir -p "${currentlocale}"
+ cd "${currentlocale}"
+ rm -f data/patch.bif patch.key
+ unpack "${a}" || die "unpack ${a}"
+ cd ..
+ fi
+ fi
+ done )
+ use hou && (
+ for a in ${A}
+ do
+ if [ -z "${a/*$HOU_NAME}" ]
+ then
+ currentlocale=""
+ if [ -z "${a/*German*/}" ]
+ then
+ currentlocale=de
+ elif [ -z "${a/*English*/}" ]
+ then
+ currentlocale=en
+ elif [ -z "${a/*Spanish*/}" ]
+ then
+ currentlocale=es
+ elif [ -z "${a/*Italian*/}" ]
+ then
+ currentlocale=it
+ elif [ -z "${a/*French*/}" ]
+ then
+ currentlocale=fr
+ fi
+ if [ -n "$currentlocale" ]
+ then
+ mkdir -p "${currentlocale}"
+ cd "${currentlocale}"
+ rm -f data/patch.bif patch.key data/xp1patch.bif xp1patch.key override/*
+ unpack "${a}" || die "unpack ${a}"
+ cd ..
+ fi
+ fi
+ done )
+}
+
+src_install() {
+ dodir "${dir}"
+ exeinto "${dir}"
+ doexe "${FILESDIR}"/fixinstall
+ sed -i \
+ -e "s:GENTOO_USER:${GAMES_USER}:" \
+ -e "s:GENTOO_GROUP:${GAMES_GROUP}:" \
+ -e "s:GENTOO_DIR:${GAMES_PREFIX_OPT}:" \
+ -e "s:override miles nwm:miles:" \
+ -e "s:chitin.key dialog.tlk nwmain:chitin.key:" \
+ -e "s:^chmod a-x:#chmod a-x:" \
+ "${Ddir}"/fixinstall || die "sed"
+ if use hou || use sou
+ then
+ sed -i \
+ -e "s:chitin.key patch.key:chitin.key:" \
+ "${Ddir}"/fixinstall || die "sed"
+ fi
+ fperms ug+x "${dir}"/fixinstall || die "perms"
+ mv "${S}"/* "${Ddir}"
+ mv "${S}"/.metadata "${Ddir}"
+ games_make_wrapper nwn ./nwn "${dir}" "${dir}"
+ make_desktop_entry nwn "Neverwinter Nights"
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ elog "The included custom libSDL is patched to enable the following key sequences:"
+ elog " * Left-Alt & Enter - Iconify Window"
+ elog " * Right-Alt & Enter - Toggle between FullScreen/Windowed"
+ elog " * Left-Control & G - Disable the mouse grab that keeps the cursor inside the NWN window"
+ elog " * Right-Control & G - Re-enable the mouse grab to keep the cursor inside the NWN window"
+ elog
+ elog "The NWN linux client is now installed."
+ elog "Proceed with the following step in order to get it working:"
+ elog "Run ${dir}/fixinstall as root"
+}
diff --git a/games-rpg/nwn/nwn-1.69-r1.ebuild b/games-rpg/nwn/nwn-1.69-r1.ebuild
new file mode 100644
index 000000000000..c2e2ebfb674b
--- /dev/null
+++ b/games-rpg/nwn/nwn-1.69-r1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/nwn-1.69-r1.ebuild,v 1.1 2010/01/25 01:24:52 calchan Exp $
+
+EAPI="2"
+
+inherit eutils games
+
+MY_PV=${PV//.}
+PATCH_URL_BASE=http://files.bioware.com/neverwinternights/updates/linux/${MY_PV}/English_linuxclient${MY_PV}_
+
+DESCRIPTION="role-playing game set in a huge medieval fantasy world of Dungeons and Dragons"
+HOMEPAGE="http://nwn.bioware.com/downloads/linuxclient.html"
+SRC_URI="http://dev.gentoo.org/~calchan/distfiles/nwn-libs-1.tar.bz2
+ !sou? ( !hou? ( ${PATCH_URL_BASE}orig.tar.gz ) )
+ sou? ( !hou? ( ${PATCH_URL_BASE}xp1.tar.gz ) )
+ hou? ( ${PATCH_URL_BASE}xp2.tar.gz )"
+
+LICENSE="NWN-EULA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="sou hou"
+RESTRICT="mirror strip"
+
+QA_DT_HASH="/opt/nwn/en/nwserver /opt/nwn/en/nwmain /opt/nwn/lib/libSDL-1.2.so.0.11.2 /opt/nwn/lib/libelf.so.1"
+
+NWN_DATA=">=games-rpg/nwn-data-1.29-r3[sou?,hou?"
+
+# ${P} requires games-rpg/nwn-data emerged with at least LINGUAS=en or none at all
+RDEPEND="
+ || (
+ ${NWN_DATA},linguas_en]
+ ${NWN_DATA},-linguas_fr,-linguas_de,-linguas_es,-linguas_it]
+ )
+ virtual/opengl
+ >=media-libs/libsdl-1.2.5
+ !<games-rpg/nwmouse-0.1-r1
+ x86? (
+ =virtual/libstdc++-3.3
+ x11-libs/libXext
+ x11-libs/libX11 )
+ amd64? (
+ app-emulation/emul-linux-x86-baselibs
+ app-emulation/emul-linux-x86-compat
+ app-emulation/emul-linux-x86-xlibs )"
+DEPEND=""
+
+S=${WORKDIR}/nwn
+
+GAMES_LICENSE_CHECK="yes"
+dir=${GAMES_PREFIX_OPT}/${PN}
+Ddir=${D}/${dir}
+
+src_unpack() {
+ mkdir -p "${S}"/en
+ cd "${S}"/en
+ unpack ${A}
+ mv lib ..
+}
+
+src_install() {
+ exeinto "${dir}"
+ doexe "${FILESDIR}"/fixinstall
+ sed -i \
+ -e "s:GENTOO_USER:${GAMES_USER}:" \
+ -e "s:GENTOO_GROUP:${GAMES_GROUP}:" \
+ -e "s:GENTOO_DIR:${GAMES_PREFIX_OPT}:" \
+ -e "s:override miles nwm:miles:" \
+ -e "s:chitin.key dialog.tlk nwmain:chitin.key:" \
+ -e "s:^chmod a-x:#chmod a-x:" \
+ "${Ddir}"/fixinstall || die "sed"
+ if use hou || use sou
+ then
+ sed -i \
+ -e "s:chitin.key patch.key:chitin.key:" \
+ "${Ddir}"/fixinstall || die "sed"
+ fi
+ fperms ug+x "${dir}"/fixinstall || die "perms"
+ mv "${S}"/* "${Ddir}"
+ games_make_wrapper nwn ./nwn "${dir}" "${dir}"
+ make_desktop_entry nwn "Neverwinter Nights"
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ elog "The included custom libSDL is patched to enable the following key sequences:"
+ elog " * Left-Alt & Enter - Iconify Window"
+ elog " * Right-Alt & Enter - Toggle between FullScreen/Windowed"
+ elog " * Left-Control & G - Disable the mouse grab that keeps the cursor inside the NWN window"
+ elog " * Right-Control & G - Re-enable the mouse grab to keep the cursor inside the NWN window"
+ elog
+ elog "The NWN linux client is now installed."
+ elog "Proceed with the following step in order to get it working:"
+ elog "Run ${dir}/fixinstall as root"
+ echo
+ ewarn "This version supports only english, see http://nwn.bioware.com/support/patch.html"
+ ewarn "If you were playing with a different language you may want to backup your ~/.nwn and do:"
+ ewarn " mv ~/.nwn/<language> ~/.nwn/en"
+ ewarn "If it does not work, try removing ~/.nwn, start nwn then quit, and re-import all you"
+ ewarn "need (saves, etc...) in ~/.nwn/en, but please do not file a bug."
+}