summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlfredo Tupone <tupone@gentoo.org>2009-11-09 13:33:01 +0000
committerAlfredo Tupone <tupone@gentoo.org>2009-11-09 13:33:01 +0000
commit8c297d75f8222cbb21a53a42296262d53ed05fa5 (patch)
tree3e05910777fe79f981ca7664a62d6879ea4ffaa3 /games-misc/bsd-games
parentamd64/x86 stable, bug #287425 (diff)
downloadgentoo-2-8c297d75f8222cbb21a53a42296262d53ed05fa5.tar.gz
gentoo-2-8c297d75f8222cbb21a53a42296262d53ed05fa5.tar.bz2
gentoo-2-8c297d75f8222cbb21a53a42296262d53ed05fa5.zip
Updating patchset from debian. Fix hunt unplayable on amd64 Bug #288749
(Portage version: 2.1.6.13/cvs/Linux x86_64)
Diffstat (limited to 'games-misc/bsd-games')
-rw-r--r--games-misc/bsd-games/ChangeLog9
-rw-r--r--games-misc/bsd-games/bsd-games-2.17-r4.ebuild120
-rw-r--r--games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch21
3 files changed, 149 insertions, 1 deletions
diff --git a/games-misc/bsd-games/ChangeLog b/games-misc/bsd-games/ChangeLog
index 1f08ea9cf713..ed9564d6ed6e 100644
--- a/games-misc/bsd-games/ChangeLog
+++ b/games-misc/bsd-games/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for games-misc/bsd-games
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-misc/bsd-games/ChangeLog,v 1.37 2009/06/13 16:53:38 nyhm Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-misc/bsd-games/ChangeLog,v 1.38 2009/11/09 13:33:01 tupone Exp $
+
+*bsd-games-2.17-r4 (09 Nov 2009)
+
+ 09 Nov 2009; Alfredo Tupone <tupone@gentoo.org> +bsd-games-2.17-r4.ebuild,
+ +files/bsd-games-2.17-64bitutmp.patch:
+ Updating patchset from debian. Fix hunt unplayable on amd64 Bug #288749 by
+ Keith Nickum
13 Jun 2009; Tristan Heaven <nyhm@gentoo.org> bsd-games-2.17-r3.ebuild,
+files/bsd-games-2.17-glibc2.10.patch:
diff --git a/games-misc/bsd-games/bsd-games-2.17-r4.ebuild b/games-misc/bsd-games/bsd-games-2.17-r4.ebuild
new file mode 100644
index 000000000000..27382f751e11
--- /dev/null
+++ b/games-misc/bsd-games/bsd-games-2.17-r4.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-misc/bsd-games/bsd-games-2.17-r4.ebuild,v 1.1 2009/11/09 13:33:01 tupone Exp $
+EAPI=2
+
+inherit eutils games
+
+DEB_PATCH_VER=16
+DESCRIPTION="collection of games from NetBSD"
+HOMEPAGE="http://www.advogato.org/proj/bsd-games/"
+SRC_URI="ftp://metalab.unc.edu/pub/Linux/games/${P}.tar.gz
+ mirror://debian/pool/main/b/bsdgames/bsdgames_${PV}-${DEB_PATCH_VER}.diff.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
+IUSE=""
+
+RDEPEND="!games-misc/wtf
+ !app-misc/banner
+ !games-board/ace
+ sys-libs/ncurses
+ sys-apps/miscfiles"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ sys-devel/bison"
+
+# Set GAMES_TO_BUILD variable to whatever you want
+export GAMES_TO_BUILD=${GAMES_TO_BUILD:=adventure arithmetic atc
+backgammon banner battlestar bcd boggle caesar canfield countmail cribbage
+dab dm factor fish gomoku hack hangman hunt mille monop morse
+number phantasia pig pom ppt primes quiz rain random robots sail snake
+tetris trek wargames worm worms wtf wump}
+
+src_prepare() {
+ epatch \
+ "${WORKDIR}"/bsdgames_${PV}-${DEB_PATCH_VER}.diff \
+ "${FILESDIR}"/${P}-64bitutmp.patch \
+ "${FILESDIR}"/${P}-headers.patch \
+ "${FILESDIR}"/${P}-bg.patch \
+ "${FILESDIR}"/${P}-gcc4.patch \
+ "${FILESDIR}"/${P}-glibc2.10.patch
+
+ sed -i \
+ -e "s:/usr/games:${GAMES_BINDIR}:" \
+ wargames/wargames \
+ || die "sed wargames failed"
+
+ cp "${FILESDIR}"/config.params-gentoo config.params
+ echo bsd_games_cfg_usrlibdir=\"$(games_get_libdir)\" >> ./config.params
+ echo bsd_games_cfg_build_dirs=\"${GAMES_TO_BUILD}\" >> ./config.params
+}
+
+src_compile() {
+ emake OPTIMIZE="${CFLAGS}" || die "emake failed"
+}
+
+src_test() {
+ addwrite /dev/full
+ emake -j1 check || die "make check failed"
+}
+
+build_game() {
+ has ${1} ${GAMES_TO_BUILD}
+}
+
+do_statefile() {
+ touch "${D}/${GAMES_STATEDIR}/${1}"
+ chmod ug+rw "${D}/${GAMES_STATEDIR}/${1}"
+}
+
+src_install() {
+ dodir "${GAMES_BINDIR}" "${GAMES_STATEDIR}" /usr/share/man/man{1,6}
+ make DESTDIR="${D}" install || die "make install failed"
+
+ dodoc AUTHORS BUGS ChangeLog ChangeLog.0 \
+ README PACKAGING SECURITY THANKS TODO YEAR2000
+
+ # set some binaries to run as games group (+S)
+ build_game atc && fperms g+s "${GAMES_BINDIR}"/atc
+ build_game battlestar && fperms g+s "${GAMES_BINDIR}"/battlestar
+ build_game canfield && fperms g+s "${GAMES_BINDIR}"/canfield
+ build_game cribbage && fperms g+s "${GAMES_BINDIR}"/cribbage
+ build_game phantasia && fperms g+s "${GAMES_BINDIR}"/phantasia
+ build_game robots && fperms g+s "${GAMES_BINDIR}"/robots
+ build_game sail && fperms g+s "${GAMES_BINDIR}"/sail
+ build_game snake && fperms g+s "${GAMES_BINDIR}"/snake
+ build_game tetris && fperms g+s "${GAMES_BINDIR}"/tetris-bsd
+
+ # state files
+ build_game atc && do_statefile atc_score
+ build_game battlestar && do_statefile battlestar.log
+ build_game canfield && do_statefile cfscores
+ build_game cribbage && do_statefile criblog
+ build_game hack && keepdir "${GAMES_STATEDIR}"/hack
+ build_game robots && do_statefile robots_roll
+ build_game sail && do_statefile saillog
+ build_game snake && do_statefile snake.log && do_statefile snakerawscores
+ build_game tetris && do_statefile tetris-bsd.scores
+ # state dirs
+ chmod -R ug+rw "${D}/${GAMES_STATEDIR}"/*
+
+ # extra docs
+ build_game atc && { docinto atc ; dodoc atc/BUGS; }
+ build_game boggle && { docinto boggle ; dodoc boggle/README; }
+ build_game hack && { docinto hack ; dodoc hack/{OWNER,Original_READ_ME,READ_ME,help}; }
+ build_game hunt && { docinto hunt ; dodoc hunt/README; }
+ build_game phantasia && { docinto phantasia ; dodoc phantasia/{OWNER,README}; }
+ build_game trek && { docinto trek ; dodoc trek/USD.doc/trek.me; }
+
+ # Since factor is usually not installed, and primes.6 is a symlink to
+ # factor.6, make sure that primes.6 is ok ...
+ if build_game primes && [[ ! $(build_game factor) ]] ; then
+ rm -f "${D}"/usr/share/man/man6/{factor,primes}.6
+ newman factor/factor.6 primes.6
+ fi
+
+ prepalldocs
+ prepgamesdirs
+}
diff --git a/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch b/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch
new file mode 100644
index 000000000000..3be1b3de074b
--- /dev/null
+++ b/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch
@@ -0,0 +1,21 @@
+About utmpentry.c:
+
+the utmpx structure defines the ut_tv member a little differently on
+64bit hosts so that a 32bit and 64bit structure can be shared. So the
+ut_tv is a custom 32bit structure rather than the native 64bit timeval
+structure. Work around is to assign the submembers instead.
+
+http://bugs.gentoo.org/show_bug.cgi?id=102667
+
+--- bsd-games/dm/utmpentry.c
++++ bsd-games/dm/utmpentry.c
+@@ -291,7 +291,8 @@
+ e->line[sizeof(e->line) - 1] = '\0';
+ (void)strncpy(e->host, up->ut_host, sizeof(up->ut_host));
+ e->name[sizeof(e->host) - 1] = '\0';
+- e->tv = up->ut_tv;
++ e->tv.tv_sec = up->ut_tv.tv_sec;
++ e->tv.tv_usec = up->ut_tv.tv_usec;
+ adjust_size(e);
+ }
+ #endif