diff options
-rw-r--r-- | games-roguelike/angband/ChangeLog | 14 | ||||
-rw-r--r-- | games-roguelike/angband/angband-3.2.0.ebuild | 109 | ||||
-rw-r--r-- | games-roguelike/angband/files/angband-3.2.0-array.patch | 15 |
3 files changed, 136 insertions, 2 deletions
diff --git a/games-roguelike/angband/ChangeLog b/games-roguelike/angband/ChangeLog index ecc2c4f5d6da..e17c100d8e2f 100644 --- a/games-roguelike/angband/ChangeLog +++ b/games-roguelike/angband/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for games-roguelike/angband -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/games-roguelike/angband/ChangeLog,v 1.34 2010/08/12 03:55:45 josejx Exp $ +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-roguelike/angband/ChangeLog,v 1.35 2011/01/16 02:07:27 mr_bones_ Exp $ + + 16 Jan 2011; Michael Sterrett <mr_bones_@gentoo.org> + +angband-3.2.0.ebuild, +files/angband-3.2.0-array.patch: + version bump - ebuild submitted by Stephen Bridges via bug #350194 + +*angband-3.2.0 (31 Dec 2010) + + 31 Dec 2010; Michael Sterrett <mr_bones_@gentoo.org> + +angband-3.2.0.ebuild, +files/angband-3.2.0-array.patch: + version bump (bug #350194) 12 Aug 2010; Joseph Jezak <josejx@gentoo.org> angband-3.1.2_p2.ebuild: Marked ppc stable for bug #315301. diff --git a/games-roguelike/angband/angband-3.2.0.ebuild b/games-roguelike/angband/angband-3.2.0.ebuild new file mode 100644 index 000000000000..3f6ff2de7a8d --- /dev/null +++ b/games-roguelike/angband/angband-3.2.0.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-roguelike/angband/angband-3.2.0.ebuild,v 1.1 2011/01/16 02:07:31 mr_bones_ Exp $ + +EAPI=2 +inherit autotools eutils versionator games + +MAJOR_PV=$(get_version_component_range 1-2) +MY_P=${P/_p/v} + +DESCRIPTION="A roguelike dungeon exploration game based on the books of J.R.R. Tolkien" +HOMEPAGE="http://rephial.org/" +SRC_URI="http://rephial.org/downloads/${MAJOR_PV}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="gtk ncurses sdl +sound X" + +RDEPEND="gtk? ( gnome-base/libglade + x11-libs/pango + x11-libs/gtk+:2 + dev-libs/glib:2 ) + X? ( x11-libs/libSM + x11-libs/libX11 ) + !ncurses? ( !X? ( !sdl? ( !gtk? ( sys-libs/ncurses ) ) ) ) + sdl? ( media-libs/libsdl[video,X] + media-libs/sdl-ttf + media-libs/sdl-image + sound? ( media-libs/sdl-mixer + media-libs/libsdl[audio] ) )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch "${FILESDIR}"/${P}-array.patch + # The 3.2.0 tarball as of writing is dirty and has object files + # in it that foul the build process. Find is quicker than configuring + # twice. + find "${S}" -name '*.o' -exec rm -f '{}' + + eautoreconf || die +} + +src_configure() { + local myconf + + if use sdl; then + myconf="$(use_enable sound sdl-mixer)" + else + myconf="--disable-sdl-mixer" + fi + + egamesconf \ + --bindir="${GAMES_BINDIR}" \ + --with-configpath="${GAMES_SYSCONFDIR}/${PN}" \ + --with-libpath="${GAMES_DATADIR}/${PN}" \ + --with-varpath="${GAMES_STATEDIR}/${PN}" \ + --with-private-dirs \ + $(use_enable X x11) \ + $(use_enable gtk) \ + $(use_enable sdl) \ + $(use_enable ncurses curses) \ + $( use !gtk && use !sdl && use !ncurses && use !X && \ + echo --enable-curses) \ + ${myconf} +} + +src_install() { + emake DESTDIR="${D}" install || die + + # Edit files are now system config files in Angband, but + # users will be hidden from applying updates by default + echo "CONFIG_PROTECT_MASK=\"${GAMES_SYSCONFDIR}/${PN}/edit/\"" \ + > "${T}"/99${PN} + doenvd "${T}"/99${PN} || die + + dodoc changes.txt faq.txt readme.txt thanks.txt || die + + # Create desktop entries if required. + ICON_LOC="${GAMES_DATADIR}/${PN}/xtra/icon/att-32.png" + if use X; then + make_desktop_entry "angband -mx11" "Angband (X11)" "${ICON_LOC}" || die + fi + + if use sdl; then + make_desktop_entry "angband -msdl" "Angband (SDL)" "${ICON_LOC}" || die + fi + + if use gtk; then + make_desktop_entry "angband -mgtk" "Angband (GTK)" "${ICON_LOC}" || die + fi + + use ncurses || rm -rf "${D}${GAMES_DATADIR}/${PN}/xtra/graf" + use sound || rm -rf "${D}${GAMES_DATADIR}/${PN}/xtra/sound" + + prepgamesdirs +} + +pkg_postinst() { + echo + elog "Angband now uses private savefiles instead of system-wide ones" + elog "This version of Angband is not compatible with the save files" + elog "of previous versions" + echo + + games_pkg_postinst +} diff --git a/games-roguelike/angband/files/angband-3.2.0-array.patch b/games-roguelike/angband/files/angband-3.2.0-array.patch new file mode 100644 index 000000000000..3638a76c5169 --- /dev/null +++ b/games-roguelike/angband/files/angband-3.2.0-array.patch @@ -0,0 +1,15 @@ +--- src/init2.c.orig 2010-12-31 12:47:48.270293037 -0500 ++++ src/init2.c 2010-12-31 12:50:20.368081626 -0500 +@@ -2719,10 +2719,10 @@ + if (sval < 0) + return PARSE_ERROR_UNRECOGNISED_SVAL; + +- for (i = 0; i <= MAX_START_ITEMS; i++) ++ for (i = 0; i < MAX_START_ITEMS; i++) + if (!c->start_items[i].min) + break; +- if (i > MAX_START_ITEMS) ++ if (i >= MAX_START_ITEMS) + return PARSE_ERROR_TOO_MANY_ENTRIES; + c->start_items[i].kind = objkind_get(tval, sval); + c->start_items[i].min = parser_getuint(p, "min"); |