diff options
Diffstat (limited to 'games-rpg')
-rw-r--r-- | games-rpg/nwn/ChangeLog | 11 | ||||
-rw-r--r-- | games-rpg/nwn/nwn-1.68-r5.ebuild | 252 | ||||
-rw-r--r-- | games-rpg/nwn/nwn-1.69-r1.ebuild | 102 |
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." +} |