summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-util')
-rw-r--r--games-util/antimicro/Manifest1
-rw-r--r--games-util/antimicro/antimicro-2.10.1.ebuild31
-rw-r--r--games-util/antimicro/metadata.xml8
-rw-r--r--games-util/atlas/Manifest1
-rw-r--r--games-util/atlas/atlas-0.4.9_p20140320.ebuild82
-rw-r--r--games-util/atlas/metadata.xml9
-rw-r--r--games-util/biounzip/Manifest1
-rw-r--r--games-util/biounzip/biounzip-1.1a.ebuild33
-rw-r--r--games-util/biounzip/files/biounzip-1.1a-64bit.patch11
-rw-r--r--games-util/biounzip/metadata.xml8
-rw-r--r--games-util/catcodec/Manifest1
-rw-r--r--games-util/catcodec/catcodec-1.0.3.ebuild30
-rw-r--r--games-util/catcodec/files/catcodec-1.0.3-gcc47.patch24
-rw-r--r--games-util/catcodec/metadata.xml5
-rw-r--r--games-util/datutil/Manifest2
-rw-r--r--games-util/datutil/datutil-2.46.ebuild44
-rw-r--r--games-util/datutil/metadata.xml11
-rw-r--r--games-util/deutex/Manifest1
-rw-r--r--games-util/deutex/deutex-4.4.0.ebuild32
-rw-r--r--games-util/deutex/files/deutex-4.4.0-64bit.patch13
-rw-r--r--games-util/deutex/files/deutex-4.4.0-makefile.patch29
-rw-r--r--games-util/deutex/files/deutex-4.4.0-ovflfix.patch11
-rw-r--r--games-util/deutex/metadata.xml5
-rw-r--r--games-util/dfarc/Manifest2
-rw-r--r--games-util/dfarc/dfarc-3.10.ebuild60
-rw-r--r--games-util/dfarc/dfarc-3.12.ebuild53
-rw-r--r--games-util/dfarc/metadata.xml5
-rw-r--r--games-util/dzip/Manifest1
-rw-r--r--games-util/dzip/dzip-2.9-r1.ebuild47
-rw-r--r--games-util/dzip/dzip-2.9-r2.ebuild42
-rw-r--r--games-util/dzip/dzip-2.9-r3.ebuild31
-rw-r--r--games-util/dzip/files/dzip-2.9-scrub-names.patch88
-rw-r--r--games-util/dzip/files/dzip-2.9-system-zlib-r2.patch72
-rw-r--r--games-util/dzip/files/dzip-2.9-system-zlib.patch52
-rw-r--r--games-util/dzip/files/dzip-amd64.diff30
-rw-r--r--games-util/dzip/metadata.xml8
-rw-r--r--games-util/etswitch/Manifest1
-rw-r--r--games-util/etswitch/etswitch-0.1.14.ebuild40
-rw-r--r--games-util/etswitch/files/etswitch-0.1.14-desktop-entry.patch20
-rw-r--r--games-util/etswitch/files/etswitch-0.1.14-glibc.patch12
-rw-r--r--games-util/etswitch/metadata.xml5
-rw-r--r--games-util/fteqcc/Manifest1
-rw-r--r--games-util/fteqcc/files/fteqcc-2501-cleanup-source.patch93
-rw-r--r--games-util/fteqcc/fteqcc-2501.ebuild42
-rw-r--r--games-util/fteqcc/metadata.xml8
-rw-r--r--games-util/gamepick/Manifest1
-rw-r--r--games-util/gamepick/gamepick-0.35.ebuild41
-rw-r--r--games-util/gamepick/metadata.xml5
-rw-r--r--games-util/glbsp/Manifest1
-rw-r--r--games-util/glbsp/files/glbsp-2.24-fltk.patch68
-rw-r--r--games-util/glbsp/files/glbsp-2.24-ldflags.patch22
-rw-r--r--games-util/glbsp/glbsp-2.24.ebuild65
-rw-r--r--games-util/glbsp/metadata.xml8
-rw-r--r--games-util/grfcodec/Manifest1
-rw-r--r--games-util/grfcodec/grfcodec-6.0.4.ebuild50
-rw-r--r--games-util/grfcodec/metadata.xml5
-rw-r--r--games-util/gslist/Manifest1
-rw-r--r--games-util/gslist/files/gslist-0.8.11a-build.patch41
-rw-r--r--games-util/gslist/gslist-0.8.11a.ebuild36
-rw-r--r--games-util/gslist/metadata.xml8
-rw-r--r--games-util/gtkevemon/Manifest2
-rw-r--r--games-util/gtkevemon/files/gtkevemon-1.8-portrait.patch17
-rw-r--r--games-util/gtkevemon/files/gtkevemon-1.8-pthreads-build-fix.patch32
-rw-r--r--games-util/gtkevemon/gtkevemon-1.8-r1.ebuild52
-rw-r--r--games-util/gtkevemon/gtkevemon-9999.ebuild57
-rw-r--r--games-util/gtkevemon/metadata.xml14
-rw-r--r--games-util/hearse/Manifest1
-rw-r--r--games-util/hearse/hearse-1.5.ebuild49
-rw-r--r--games-util/hearse/metadata.xml5
-rw-r--r--games-util/higan-purify/Manifest1
-rw-r--r--games-util/higan-purify/files/higan-purify-03-QA.patch42
-rw-r--r--games-util/higan-purify/higan-purify-03.ebuild67
-rw-r--r--games-util/higan-purify/metadata.xml6
-rw-r--r--games-util/joystick/Manifest1
-rw-r--r--games-util/joystick/files/joystick-1.4.8-build.patch39
-rw-r--r--games-util/joystick/files/joystick-1.4.8-udev.patch52
-rw-r--r--games-util/joystick/joystick-1.4.8-r1.ebuild39
-rw-r--r--games-util/joystick/joystick-1.4.8.ebuild29
-rw-r--r--games-util/joystick/metadata.xml8
-rw-r--r--games-util/linux-wbfs-manager/Manifest1
-rw-r--r--games-util/linux-wbfs-manager/linux-wbfs-manager-0.1.12.ebuild50
-rw-r--r--games-util/linux-wbfs-manager/linux-wbfs-manager-9999.ebuild50
-rw-r--r--games-util/linux-wbfs-manager/metadata.xml8
-rw-r--r--games-util/loki_patch/Manifest2
-rw-r--r--games-util/loki_patch/files/loki_patch-20091105-build.patch179
-rw-r--r--games-util/loki_patch/files/loki_patch-20091105-patchdata.patch11
-rw-r--r--games-util/loki_patch/loki_patch-20091105.ebuild52
-rw-r--r--games-util/loki_patch/metadata.xml5
-rw-r--r--games-util/lutris/Manifest1
-rw-r--r--games-util/lutris/lutris-0.3.6.3.ebuild68
-rw-r--r--games-util/lutris/metadata.xml15
-rw-r--r--games-util/mcrcon/Manifest1
-rw-r--r--games-util/mcrcon/mcrcon-0.0.5.ebuild27
-rw-r--r--games-util/mcrcon/metadata.xml12
-rw-r--r--games-util/metadata.xml34
-rw-r--r--games-util/nml/Manifest1
-rw-r--r--games-util/nml/metadata.xml5
-rw-r--r--games-util/nml/nml-0.4.1.ebuild27
-rw-r--r--games-util/pyfa/Manifest1
-rw-r--r--games-util/pyfa/files/configforced.py4
-rw-r--r--games-util/pyfa/files/pyfa-1.1.11-import-pyfa.patch28
-rw-r--r--games-util/pyfa/files/pyfa-1.1.20-staticPath.patch27
-rw-r--r--games-util/pyfa/files/pyfa-1.1.8-html-export-path.patch33
-rw-r--r--games-util/pyfa/files/pyfa.desktop8
-rw-r--r--games-util/pyfa/metadata.xml20
-rw-r--r--games-util/pyfa/pyfa-1.12.0.ebuild94
-rw-r--r--games-util/pyfa/pyfa-9999.ebuild94
-rw-r--r--games-util/qjoypad/Manifest1
-rw-r--r--games-util/qjoypad/files/qjoypad-4.1.0-underlink.patch11
-rw-r--r--games-util/qjoypad/metadata.xml8
-rw-r--r--games-util/qjoypad/qjoypad-4.1.0.ebuild51
-rw-r--r--games-util/qstat/Manifest1
-rw-r--r--games-util/qstat/metadata.xml8
-rw-r--r--games-util/qstat/qstat-2.11.ebuild30
-rw-r--r--games-util/ucon64/Manifest1
-rw-r--r--games-util/ucon64/files/ucon64-2.0.0-ovflfix.patch20
-rw-r--r--games-util/ucon64/files/ucon64-2.0.0-zlib.patch45
-rw-r--r--games-util/ucon64/metadata.xml8
-rw-r--r--games-util/ucon64/ucon64-2.0.0.ebuild62
-rw-r--r--games-util/uglygs/Manifest1
-rw-r--r--games-util/uglygs/files/0_rc11-uglygs.conf.patch31
-rw-r--r--games-util/uglygs/files/0_rc11-uglygs.pl.patch131
-rw-r--r--games-util/uglygs/metadata.xml5
-rw-r--r--games-util/uglygs/uglygs-0_rc11.ebuild63
-rw-r--r--games-util/umodpack/Manifest1
-rw-r--r--games-util/umodpack/metadata.xml5
-rw-r--r--games-util/umodpack/umodpack-0.5_beta16-r2.ebuild46
-rw-r--r--games-util/uz2unpack/Manifest1
-rw-r--r--games-util/uz2unpack/metadata.xml5
-rw-r--r--games-util/uz2unpack/uz2unpack-0.1.ebuild26
-rw-r--r--games-util/vispatch/Manifest1
-rw-r--r--games-util/vispatch/metadata.xml8
-rw-r--r--games-util/vispatch/vispatch-1.4.6.ebuild30
-rw-r--r--games-util/wiiload/Manifest1
-rw-r--r--games-util/wiiload/metadata.xml5
-rw-r--r--games-util/wiiload/wiiload-0.5.ebuild23
-rw-r--r--games-util/wit/Manifest2
-rw-r--r--games-util/wit/files/wit-2.30a-makefile.patch120
-rw-r--r--games-util/wit/files/wit-2.30a-no-exec-stack.patch9
-rw-r--r--games-util/wit/files/wit-2.30a-sizeof-pointer-memaccess.patch31
-rw-r--r--games-util/wit/metadata.xml11
-rw-r--r--games-util/wit/wit-2.30a.ebuild39
-rw-r--r--games-util/wit/wit-2.31a.ebuild39
-rw-r--r--games-util/wxchtdecoder/Manifest1
-rw-r--r--games-util/wxchtdecoder/metadata.xml5
-rw-r--r--games-util/wxchtdecoder/wxchtdecoder-1.5a.ebuild28
-rw-r--r--games-util/xboxdrv/Manifest1
-rw-r--r--games-util/xboxdrv/files/org.seul.Xboxdrv.conf7
-rw-r--r--games-util/xboxdrv/files/xboxdrv-0.8.4-libusbx-1.0.13-fix.patch340
-rw-r--r--games-util/xboxdrv/files/xboxdrv-0.8.5-scons.patch13
-rw-r--r--games-util/xboxdrv/files/xboxdrv.confd6
-rw-r--r--games-util/xboxdrv/files/xboxdrv.initd19
-rw-r--r--games-util/xboxdrv/files/xboxdrv.service14
-rw-r--r--games-util/xboxdrv/files/xboxdrv.udev-rules5
-rw-r--r--games-util/xboxdrv/metadata.xml9
-rw-r--r--games-util/xboxdrv/xboxdrv-0.8.5-r1.ebuild49
-rw-r--r--games-util/xboxdrv/xboxdrv-0.8.5-r2.ebuild63
-rw-r--r--games-util/xboxgw/Manifest2
-rw-r--r--games-util/xboxgw/metadata.xml5
-rw-r--r--games-util/xboxgw/xboxgw-1.082.ebuild47
-rw-r--r--games-util/xgame-gtk2/Manifest1
-rw-r--r--games-util/xgame-gtk2/metadata.xml5
-rw-r--r--games-util/xgame-gtk2/xgame-gtk2-2.0.2.ebuild24
-rw-r--r--games-util/xgame/Manifest1
-rw-r--r--games-util/xgame/metadata.xml5
-rw-r--r--games-util/xgame/xgame-1.7.1.ebuild24
-rw-r--r--games-util/xgamer/Manifest1
-rw-r--r--games-util/xgamer/files/xgamer-0.6.2-desktopfile.patch10
-rw-r--r--games-util/xgamer/metadata.xml8
-rw-r--r--games-util/xgamer/xgamer-0.6.2.ebuild38
-rw-r--r--games-util/xqf/Manifest1
-rw-r--r--games-util/xqf/files/xqf-1.0.5-cpu-overrun.patch22
-rw-r--r--games-util/xqf/files/xqf-1.0.5-underlink.patch10
-rw-r--r--games-util/xqf/files/xqf-1.0.5-zlib-1.2.5.1-compile-fix.patch11
-rw-r--r--games-util/xqf/metadata.xml8
-rw-r--r--games-util/xqf/xqf-1.0.5.ebuild43
176 files changed, 4536 insertions, 0 deletions
diff --git a/games-util/antimicro/Manifest b/games-util/antimicro/Manifest
new file mode 100644
index 000000000000..6e76321cfe05
--- /dev/null
+++ b/games-util/antimicro/Manifest
@@ -0,0 +1 @@
+DIST antimicro-2.10.1.tar.gz 662670 SHA256 9a65127dc415017dd2c84f06a4c803d6353a1c6a129a2f9a30791cffce0378b4 SHA512 0601ae0ea2bb7249e0bb7fdf12a9d023058bf37fde2f7dc350676d3a0b757ad29e43b5f1c8fd0c4600207338a755f12640ea8b5c8e762f01d528364048326ddf WHIRLPOOL 2e5d32a9bf2e05838111786ceb0f7646b457f4e9042cc99a6aaa79cdcacefacdd9d4698ab42870c6eb97f735f2bb99d904e45d168a34acf87bc0f97524b3eeb0
diff --git a/games-util/antimicro/antimicro-2.10.1.ebuild b/games-util/antimicro/antimicro-2.10.1.ebuild
new file mode 100644
index 000000000000..c3be6e4a0310
--- /dev/null
+++ b/games-util/antimicro/antimicro-2.10.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils cmake-utils
+
+DESCRIPTION="Map keyboard and mouse buttons to gamepad buttons"
+HOMEPAGE="https://github.com/Ryochan7/antimicro"
+SRC_URI="https://github.com/Ryochan7/antimicro/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ media-libs/libsdl2[joystick]
+ x11-libs/libX11
+ x11-libs/libXtst"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_SDL_2=ON
+ )
+
+ cmake-utils_src_configure
+}
diff --git a/games-util/antimicro/metadata.xml b/games-util/antimicro/metadata.xml
new file mode 100644
index 000000000000..721b5e47b2f7
--- /dev/null
+++ b/games-util/antimicro/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="github">Ryochan7/antimicro</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/atlas/Manifest b/games-util/atlas/Manifest
new file mode 100644
index 000000000000..3851f7d96613
--- /dev/null
+++ b/games-util/atlas/Manifest
@@ -0,0 +1 @@
+DIST Atlas-0.4.9_cvs20140320.tar.bz2 387926 SHA256 8b43307e5e570c8051219a2deec0845b2df02f975a58ca06cc9ed77672acf5ff SHA512 c43b80aed945dc2ba7cd6d9cc95a3691f6583cc2a615d5c7d018575306b10fb99fc5a115691b9f31c43cbe91bf53b101bd4a1cde0747e614a99dc3a49268d70b WHIRLPOOL ffb93d372cf7186c9522bccbe5f462d0b94a11c8f01723b6e4a038a6cf80a00d9178c311c6294d6fe00291b6084200ed9d5407a0c6c744661a1447a9021eeaa2
diff --git a/games-util/atlas/atlas-0.4.9_p20140320.ebuild b/games-util/atlas/atlas-0.4.9_p20140320.ebuild
new file mode 100644
index 000000000000..36701f02a75f
--- /dev/null
+++ b/games-util/atlas/atlas-0.4.9_p20140320.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils games
+
+MY_PN=Atlas
+MY_PV=${PV/p/cvs}
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="Chart Program to use with Flightgear Flight Simulator"
+HOMEPAGE="http://atlas.sourceforge.net/"
+SRC_URI="mirror://gentoo/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+COMMON_DEPEND="
+ media-libs/freeglut
+ >=media-libs/libpng-1.5
+ net-misc/curl
+ sys-libs/zlib
+ virtual/glu
+ virtual/jpeg
+ virtual/opengl
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-games/simgear-3.0.0
+ media-libs/plib
+"
+RDEPEND="${COMMON_DEPEND}
+ >=games-simulation/flightgear-3.0.0
+"
+
+S=${WORKDIR}/${MY_PN}
+
+src_prepare() {
+ eautoreconf
+}
+
+src_configure() {
+ egamesconf \
+ --disable-dependency-tracking \
+ --enable-simgear-shared \
+ --with-fgbase="${GAMES_DATADIR}"/flightgear
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ insinto "${GAMES_DATADIR}"/flightgear/Atlas
+ doins src/data/*.{jpg,png} || die
+ insinto "${GAMES_DATADIR}"/flightgear/Atlas/Palettes
+ doins src/data/Palettes/*.ap || die
+ insinto "${GAMES_DATADIR}"/flightgear/Atlas/Fonts
+ doins src/data/Fonts/*.txf || die
+ dodoc AUTHORS NEWS README
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ elog "You now can make the maps with the following commands:"
+ elog "${GAMES_BINDIR}/Map --atlas=${GAMES_DATADIR}/flightgear/Atlas"
+ elog
+ elog "To run Atlas concurrently with FlightGear use the following:"
+ elog "Atlas --path=[path of map images] --udp=[port number]"
+ elog "and start fgfs with the following switch (or in .fgfsrc):"
+ elog "--nmea=socket,out,0.5,[host that you run Atlas on],[port number],udp"
+ echo
+}
+
+pkg_postrm() {
+ elog "You must manually remove the maps if you don't want them around."
+ elog "They are found in the following directory:"
+ echo
+ elog "${GAMES_DATADIR}/flightgear/Atlas"
+ echo
+}
diff --git a/games-util/atlas/metadata.xml b/games-util/atlas/metadata.xml
new file mode 100644
index 000000000000..bf9480ea717d
--- /dev/null
+++ b/games-util/atlas/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+<maintainer>
+ <email>reavertm@gentoo.org</email>
+ <name>Maciej Mrozowski</name>
+</maintainer>
+</pkgmetadata>
diff --git a/games-util/biounzip/Manifest b/games-util/biounzip/Manifest
new file mode 100644
index 000000000000..b8de7f59135d
--- /dev/null
+++ b/games-util/biounzip/Manifest
@@ -0,0 +1 @@
+DIST biounzip-1.1a.tar.bz2 9894 SHA256 8f6960e4a281f6ce352e499d91de71ccd74536619000a4dfd37d2eb92c740273 SHA512 4eaea5459cf6edaf289951f9048123496a4eb83fcfc39b3efcd2a81894f877d5db843d7448e2c0e3b797b09a70f6f3c133c53525d4f83408306089bd37796a8c WHIRLPOOL 7a0222298cadd1643f4e91cc9a4bced961692ff566eaccbe5d4b37c16453e8c119f5921b536a81eba088e4c35e7dd789d8fc9a36e93ba39de22f83372882eb06
diff --git a/games-util/biounzip/biounzip-1.1a.ebuild b/games-util/biounzip/biounzip-1.1a.ebuild
new file mode 100644
index 000000000000..5385824ed1e5
--- /dev/null
+++ b/games-util/biounzip/biounzip-1.1a.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Unpacks BioZip archives"
+HOMEPAGE="http://biounzip.sourceforge.net/"
+SRC_URI="mirror://sourceforge/biounzip/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="sys-libs/zlib"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}/${P/a/}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-64bit.patch
+}
+
+src_compile() {
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o ${PN} *.c -lz || die
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc biozip.txt
+}
diff --git a/games-util/biounzip/files/biounzip-1.1a-64bit.patch b/games-util/biounzip/files/biounzip-1.1a-64bit.patch
new file mode 100644
index 000000000000..a8522189d31f
--- /dev/null
+++ b/games-util/biounzip/files/biounzip-1.1a-64bit.patch
@@ -0,0 +1,11 @@
+--- biounzip-1.1-old/biounzip.c 2007-03-08 02:06:16.000000000 +0200
++++ biounzip-1.1/biounzip.c 2007-03-08 02:06:50.000000000 +0200
+@@ -127,7 +127,7 @@
+ void writefile(bzfile *ptr, FILE *fp, char *destdir)
+ {
+ int startpos,returnval,n,debug=0;
+- unsigned long size_uncompressed,size_compressed;
++ unsigned long size_uncompressed = 0, size_compressed = 0;
+ char *fname,*dirname,*fullname,*fullpath;
+ unsigned char *srcbuffer,*dstbuffer;
+ FILE *outfile;
diff --git a/games-util/biounzip/metadata.xml b/games-util/biounzip/metadata.xml
new file mode 100644
index 000000000000..1da8c892301c
--- /dev/null
+++ b/games-util/biounzip/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">biounzip</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/catcodec/Manifest b/games-util/catcodec/Manifest
new file mode 100644
index 000000000000..944a73dd6f71
--- /dev/null
+++ b/games-util/catcodec/Manifest
@@ -0,0 +1 @@
+DIST catcodec-1.0.3-source.tar.bz2 18536 SHA256 b6a9fe31cf736b1432d84fd86ba7441159e3707c0387bb732eeb717f7d8aa9bb SHA512 406476ecc57b87355d0eca4672c8ccb067d80a0bde217a8332d1014dce983f62dd4f134d0736da806d21a375a9e053d61a79bb7ca9848f83ff2cd49fdf220360 WHIRLPOOL 3f1f8528c47f31929c68bebf6052e7a73d7a2942085ab02744e31e7560fc1b7a0498eeafabc8a01acb9edf6b7a2527af66410e2371b7e42d7a5b0313a555d3c2
diff --git a/games-util/catcodec/catcodec-1.0.3.ebuild b/games-util/catcodec/catcodec-1.0.3.ebuild
new file mode 100644
index 000000000000..48d29027650a
--- /dev/null
+++ b/games-util/catcodec/catcodec-1.0.3.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Decodes and encodes sample catalogues for OpenTTD"
+HOMEPAGE="http://www.openttd.org/en/download-catcodec"
+SRC_URI="http://binaries.openttd.org/extra/catcodec/${PV}/${P}-source.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc ppc64 x86"
+IUSE=""
+
+src_prepare() {
+ tc-export CXX
+ epatch "${FILESDIR}"/${P}-gcc47.patch
+}
+
+src_compile() {
+ emake VERBOSE=1
+}
+
+src_install() {
+ dobin catcodec
+ dodoc changelog.txt docs/readme.txt
+ doman docs/catcodec.1
+}
diff --git a/games-util/catcodec/files/catcodec-1.0.3-gcc47.patch b/games-util/catcodec/files/catcodec-1.0.3-gcc47.patch
new file mode 100644
index 000000000000..a36546a43aab
--- /dev/null
+++ b/games-util/catcodec/files/catcodec-1.0.3-gcc47.patch
@@ -0,0 +1,24 @@
+diff -ruN src/io.cpp.orig src/io.cpp
+--- src/io.cpp.orig 2012-05-19 20:48:05.930777509 +0200
++++ src/io.cpp 2012-05-19 20:49:04.303822711 +0200
+@@ -20,6 +20,8 @@
+
+ /** @file io.cpp Implementation of reading/writing to files */
+
++#include <unistd.h>
++
+ #include "stdafx.h"
+ #include "io.hpp"
+
+diff -ruN src/catcodec.cpp.orig src/catcodec.cpp
+--- src/catcodec.cpp.orig 2012-05-19 20:47:55.847255343 +0200
++++ src/catcodec.cpp 2012-05-19 20:48:38.937144091 +0200
+@@ -22,6 +22,7 @@
+
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
+
+ #include "stdafx.h"
+ #include "io.hpp"
+
diff --git a/games-util/catcodec/metadata.xml b/games-util/catcodec/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/catcodec/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/datutil/Manifest b/games-util/datutil/Manifest
new file mode 100644
index 000000000000..be9263e6e220
--- /dev/null
+++ b/games-util/datutil/Manifest
@@ -0,0 +1,2 @@
+DIST datlib236.zip 109484 SHA256 9ff474ed30047f2bbb2a0942077a63dd2b0825c08b061cb4b36dd168d9014bb3 SHA512 0c601fe243c8ea4186abb6181cf70e749226a5eed871d7391b3686e7eb58195d1aab40305d498d1419c6fa49bf56c59fb74d032642822045cc7e36f8a5fe96b4 WHIRLPOOL a8a3c41900b4d4ef1837dcc5e5df65949bedf5209e47b604ec29b0134b800888166642607ac8e47a70db936d150267c9e0d6611003a5be495d0b042e84b3a59a
+DIST dutil246.zip 209577 SHA256 171fd5f30a31973e1a49f484fbd475c518a3234aa41e97d45904dc8ccbf67f56 SHA512 f9e55eac41894681caaee7d6e3247d4e4d053ac6985d42708623fad415afeb8ece588dd728edc31cbd31bf6df1d9a06ec80f1b45979b0f77763c12e6627434b2 WHIRLPOOL 33095f026f05fee1d8b6f3b3ba5fec4e75ceb51c864889b7670c7461a67a9dcaf265fcaf271fe37e593bc6908cd44dd3ce2ce22b97f4848c21ff29b12de8a3c2
diff --git a/games-util/datutil/datutil-2.46.ebuild b/games-util/datutil/datutil-2.46.ebuild
new file mode 100644
index 000000000000..28a92759b5ab
--- /dev/null
+++ b/games-util/datutil/datutil-2.46.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DL_PV=2.36
+DESCRIPTION="Converter for dat files for Rom Managers"
+HOMEPAGE="http://www.logiqx.com/Tools/DatUtil/"
+SRC_URI="http://www.logiqx.com/Tools/DatUtil/dutil${PV//.}.zip
+ http://www.logiqx.com/Tools/DatLib/datlib${DL_PV//.}.zip"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="amd64 x86 ~x86-fbsd"
+IUSE=""
+RESTRICT="mirror bindist"
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack dutil${PV//.}.zip
+ cd "${S}"
+ mkdir -p dev/datlib
+ cd dev/datlib
+ unpack datlib${DL_PV//.}.zip
+}
+
+src_compile() {
+ # Parallel make issue, see bug #244879 (so make the dirs first)
+ emake -j1 CC="$(tc-getCC)" LD="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" \
+ CFLAGS="${CFLAGS} -Idev" LOGIQX=. EXT= UPX=@# dlmaketree maketree || die "emake failed"
+ emake CC="$(tc-getCC)" LD="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" \
+ CFLAGS="${CFLAGS} -Idev" LOGIQX=. EXT= UPX=@# || die "emake failed"
+}
+
+src_install() {
+ dobin datutil
+ dodoc readme.txt whatsnew.txt
+}
diff --git a/games-util/datutil/metadata.xml b/games-util/datutil/metadata.xml
new file mode 100644
index 000000000000..7a192d8ada41
--- /dev/null
+++ b/games-util/datutil/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+<longdescription lang="en">
+DatUtil was created to aid in the creation of dat files for Rom Managers such as
+ClrMamePro and RomCenter (Roman Scherzer / Eric Bole-Feysot). It can convert
+between formats, extract individual games (and optionally their clones) and
+cleanse dats. It supports a variety of formats
+</longdescription>
+</pkgmetadata>
diff --git a/games-util/deutex/Manifest b/games-util/deutex/Manifest
new file mode 100644
index 000000000000..acdc4e62e7fa
--- /dev/null
+++ b/games-util/deutex/Manifest
@@ -0,0 +1 @@
+DIST deutex-4.4.0.tar.gz 215945 SHA256 e87ff2984c6555f30408ee7aa4e6461aac6f1d3d0a1e21b4e12a797a057ba3b7 SHA512 fc9aaf399bc9d8ea812102decdf6b3c6d5f4c4a69e925e02fe0e75fa8dc9e54ad36afc352e83819ba13b9ae5dda90bb65c1856825c3ee17c7bd370909b866fb5 WHIRLPOOL c3e86d74a55a65ca0645e9a1ca9de9f580eee3176e5fdff889964b7e34cda2662a43cf1586829b50277bde6cd03584b8dbf38e5b56c4af3e7d7ee39f41257320
diff --git a/games-util/deutex/deutex-4.4.0.ebuild b/games-util/deutex/deutex-4.4.0.ebuild
new file mode 100644
index 000000000000..3e45418ba327
--- /dev/null
+++ b/games-util/deutex/deutex-4.4.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs eutils
+
+DESCRIPTION="A wad composer for Doom, Heretic, Hexen and Strife"
+HOMEPAGE="http://www.teaser.fr/~amajorel/deutex/"
+SRC_URI="http://www.teaser.fr/~amajorel/deutex/${P}.tar.gz"
+
+LICENSE="GPL-2+ LGPL-2+ HPND"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-makefile.patch \
+ "${FILESDIR}"/${P}-64bit.patch \
+ "${FILESDIR}"/${P}-ovflfix.patch
+ tc-export CC
+}
+
+src_install() {
+ dobin deusf deutex
+ doman deutex.6
+ dodoc CHANGES README TODO
+}
diff --git a/games-util/deutex/files/deutex-4.4.0-64bit.patch b/games-util/deutex/files/deutex-4.4.0-64bit.patch
new file mode 100644
index 000000000000..b5028cd4ffbd
--- /dev/null
+++ b/games-util/deutex/files/deutex-4.4.0-64bit.patch
@@ -0,0 +1,13 @@
+diff --git a/src/deutex.h b/src/deutex.h
+index 0a26df5..7af321c 100644
+--- a/src/deutex.h
++++ b/src/deutex.h
+@@ -31,7 +31,7 @@ Place, Suite 330, Boston, MA 02111-1307, USA.
+ #define DeuSF for DOS .EXE Unix Linux OS/2
+ *********************************************/
+
+-#if defined (__alpha) /*__ALPHA__ for Alpha processor?*/
++#if defined (__alpha) || defined (__x86_64__) /*__ALPHA__ for Alpha processor?*/
+ /*long = int64 on a 64bit processor*/
+ typedef char Int8;
+ typedef short Int16;
diff --git a/games-util/deutex/files/deutex-4.4.0-makefile.patch b/games-util/deutex/files/deutex-4.4.0-makefile.patch
new file mode 100644
index 000000000000..49265e14f3fb
--- /dev/null
+++ b/games-util/deutex/files/deutex-4.4.0-makefile.patch
@@ -0,0 +1,29 @@
+diff -ru deutex-4.4.0.orig/Makefile deutex-4.4.0/Makefile
+--- deutex-4.4.0.orig/Makefile 1999-12-24 07:50:16.000000000 -0500
++++ deutex-4.4.0/Makefile 2010-03-05 14:53:23.763604022 -0500
+@@ -16,11 +16,6 @@
+
+ PREFIX=/usr/local
+
+-# Compiled by users
+-CFLAGS = -O2
+-CC = cc
+-LDFLAGS =
+-
+ # Compiled by developers
+ DCFLAGS = -g -Wall -Wpointer-arith -Wstrict-prototypes
+ DCC = gcc
+@@ -182,11 +177,11 @@
+ (sleep 1; mkdir -p tmp; touch tmp/_deusf) &
+
+ tmp/_deutex:
+- -mkdir tmp
++ @mkdir tmp 2> /dev/null || true
+ touch $@
+
+ tmp/_deusf:
+- -mkdir tmp
++ @mkdir tmp 2> /dev/null || true
+ touch $@
+
+ install:
diff --git a/games-util/deutex/files/deutex-4.4.0-ovflfix.patch b/games-util/deutex/files/deutex-4.4.0-ovflfix.patch
new file mode 100644
index 000000000000..32a7dce0d97c
--- /dev/null
+++ b/games-util/deutex/files/deutex-4.4.0-ovflfix.patch
@@ -0,0 +1,11 @@
+--- src/sound.c.old 2010-10-27 12:32:28.000000000 +0200
++++ src/sound.c 2010-10-27 12:32:52.000000000 +0200
+@@ -309,7 +309,7 @@
+ if(fread(&headv,sizeof(struct VOCHEAD),1,fp)!=1) ProgError("VOC: can't read header");
+ if(strncmp(VocId,headv.ident,VOCIDLEN)!=0) ProgError("VOC: bad header");
+ if(fseek(fp,headv.block1,SEEK_SET)) ProgError("VOC: bad header");
+- if(fread(&blockv,sizeof(struct VOCHEAD),1,fp)!=1) ProgError("VOC: can't read block");
++ if(fread(&blockv,sizeof(struct VOCBLOCK1),1,fp)!=1) ProgError("VOC: can't read block");
+ if(blockv.type!=1) ProgError("VOC: first block is not sound");
+ datasize= ((blockv.sizeU)<<16)&0xFF0000L;
+ datasize+=((blockv.sizeM)<<8)&0xFF00L;
diff --git a/games-util/deutex/metadata.xml b/games-util/deutex/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/deutex/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/dfarc/Manifest b/games-util/dfarc/Manifest
new file mode 100644
index 000000000000..50d7f3aa68f7
--- /dev/null
+++ b/games-util/dfarc/Manifest
@@ -0,0 +1,2 @@
+DIST dfarc-3.10.tar.gz 282667 SHA256 072ef7938cf9dc35617dea3660bec459cfe6b1e376f2decb419f44b67222d280 SHA512 71067e1acbb0d96b5abde0ad050bd5e68b87d62d3d90c55ce59e7921860029a6682841b95bc55f6183c08d86e4b0952bfded2786e9a38fb6b90436c524573f87 WHIRLPOOL 5efe75cf36facab53ec65ed0d4bad2c2a9ca90824c1f4ac3bcd64a79e049dd78b112d65993a9760a210a4d58afd4571b0df9616ec6d0a73f106ecd7939b6cf10
+DIST dfarc-3.12.tar.gz 329925 SHA256 222a84cc91967abce4d86fb4ed8ba43455b818aecdb8487b0fe52d76ade29a83 SHA512 e87e89e67e383c3d25a6620edc38c6ab6f90b9df52b84d6e6de20af1ac3b50588b3037575f2f89a14c90c14151053c08a7bb97143f24471e33326f3f2d2574ab WHIRLPOOL af2c4646de591d3c09e3e2e8a7cd94a070e6086a977fc3d819077a6b812d638ba79762e7c0dde8dba1df7d1004c31005f02c5ba5de8710f5038f7b8e5b9c39d2
diff --git a/games-util/dfarc/dfarc-3.10.ebuild b/games-util/dfarc/dfarc-3.10.ebuild
new file mode 100644
index 000000000000..0d8c841b78a9
--- /dev/null
+++ b/games-util/dfarc/dfarc-3.10.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WX_GTK_VER="2.8"
+inherit gnome2-utils fdo-mime wxwidgets games
+
+DESCRIPTION="Frontend and .dmod installer for GNU FreeDink"
+HOMEPAGE="http://www.freedink.org/"
+SRC_URI="mirror://gnu/freedink/${P}.tar.gz"
+
+LICENSE="GPL-3 BZIP2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="nls"
+
+RDEPEND="
+ app-arch/bzip2
+ x11-misc/xdg-utils
+ x11-libs/wxGTK:${WX_GTK_VER}"
+DEPEND="${RDEPEND}
+ nls? ( >=dev-util/intltool-0.31 )"
+
+src_prepare() {
+ sed -i \
+ -e 's#^datarootdir =.*$#datarootdir = /usr/share#' \
+ share/Makefile.in || die
+}
+
+src_configure() {
+ egamesconf \
+ $(use_enable nls) \
+ --disable-desktopfiles
+}
+
+src_install() {
+ default
+ dodoc TRANSLATIONS.txt
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+}
diff --git a/games-util/dfarc/dfarc-3.12.ebuild b/games-util/dfarc/dfarc-3.12.ebuild
new file mode 100644
index 000000000000..bd54f01709dd
--- /dev/null
+++ b/games-util/dfarc/dfarc-3.12.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+WX_GTK_VER="3.0"
+inherit gnome2-utils fdo-mime wxwidgets games
+
+DESCRIPTION="Frontend and .dmod installer for GNU FreeDink"
+HOMEPAGE="http://www.freedink.org/"
+SRC_URI="mirror://gnu/freedink/${P}.tar.gz"
+
+LICENSE="GPL-3 BZIP2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="nls"
+
+RDEPEND="
+ app-arch/bzip2
+ x11-misc/xdg-utils
+ x11-libs/wxGTK:${WX_GTK_VER}"
+DEPEND="${RDEPEND}
+ nls? ( >=dev-util/intltool-0.31 )"
+
+src_configure() {
+ egamesconf \
+ $(use_enable nls) \
+ --disable-desktopfiles
+}
+
+src_install() {
+ default
+ dodoc TRANSLATIONS.txt
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+}
diff --git a/games-util/dfarc/metadata.xml b/games-util/dfarc/metadata.xml
new file mode 100644
index 000000000000..cad5a2aa1773
--- /dev/null
+++ b/games-util/dfarc/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/dzip/Manifest b/games-util/dzip/Manifest
new file mode 100644
index 000000000000..bac31ff81293
--- /dev/null
+++ b/games-util/dzip/Manifest
@@ -0,0 +1 @@
+DIST dz29src.zip 100354 SHA256 de858f6a811096ebd099301cb4acd21eaf9eb1b3f95c1b21ec9e910bcf6f0f17 SHA512 3e1071da6ae5c9064b7222f1bb553b787ded4acbfe8463a7a94f17e60748b68cdfc17672ef7220deddd394c6709efe632e53e61508fd48bfa9001e43a37e788f WHIRLPOOL 550585852d2c950a5bc893ca134d4cc96c896b5960d8d37235d77a8fa8e31496f7e1634ae4c5e5d3c8709e9fcace1319652aa7b306634a3e7fcaa2451581b3b0
diff --git a/games-util/dzip/dzip-2.9-r1.ebuild b/games-util/dzip/dzip-2.9-r1.ebuild
new file mode 100644
index 000000000000..2d65428144e8
--- /dev/null
+++ b/games-util/dzip/dzip-2.9-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils toolchain-funcs games
+
+DESCRIPTION="compressor/uncompressor for demo recordings from id's Quake"
+HOMEPAGE="http://speeddemosarchive.com/dzip/"
+SRC_URI="http://speeddemosarchive.com/dzip/dz${PV/./}src.zip"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~ppc x86"
+IUSE=""
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/dzip-2.9-scrub-names.patch #93079
+}
+
+src_compile() {
+ emake \
+ -f Makefile.linux \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ || die "emake failed"
+}
+
+src_install () {
+ dogamesbin dzip || die "dogamesbin failed"
+ dodoc Readme || die "dodoc failed"
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ echo
+ elog "Demo files can be found at http://planetquake.com/sda/"
+ elog "and http://planetquake.com/qdq/"
+ echo
+}
diff --git a/games-util/dzip/dzip-2.9-r2.ebuild b/games-util/dzip/dzip-2.9-r2.ebuild
new file mode 100644
index 000000000000..260c5088adf5
--- /dev/null
+++ b/games-util/dzip/dzip-2.9-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit eutils games
+
+DESCRIPTION="compressor/uncompressor for demo recordings from id's Quake"
+HOMEPAGE="http://speeddemosarchive.com/dzip/"
+SRC_URI="http://speeddemosarchive.com/dzip/dz${PV/./}src.zip"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+IUSE=""
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-system-zlib.patch \
+ "${FILESDIR}"/${P}-scrub-names.patch #93079
+ rm -rf zlib
+ mv -f Makefile{.linux,}
+}
+
+src_install () {
+ dogamesbin dzip || die "dogamesbin failed"
+ dodoc Readme || die "dodoc failed"
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ echo
+ elog "Demo files can be found at http://planetquake.com/sda/"
+ elog "and http://planetquake.com/qdq/"
+ echo
+}
diff --git a/games-util/dzip/dzip-2.9-r3.ebuild b/games-util/dzip/dzip-2.9-r3.ebuild
new file mode 100644
index 000000000000..b7e9f0dade6d
--- /dev/null
+++ b/games-util/dzip/dzip-2.9-r3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="compressor/uncompressor for demo recordings from id's Quake"
+HOMEPAGE="http://speeddemosarchive.com/dzip/"
+SRC_URI="http://speeddemosarchive.com/dzip/dz${PV/./}src.zip"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc x86"
+IUSE=""
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S="${WORKDIR}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-system-zlib-r2.patch
+ epatch "${FILESDIR}"/${P}-scrub-names.patch #93079
+ epatch "${FILESDIR}/dzip-amd64.diff"
+ mv -f Makefile{.linux,}
+}
+
+src_install () {
+ dobin dzip
+ dodoc Readme
+}
diff --git a/games-util/dzip/files/dzip-2.9-scrub-names.patch b/games-util/dzip/files/dzip-2.9-scrub-names.patch
new file mode 100644
index 000000000000..079fae3fd070
--- /dev/null
+++ b/games-util/dzip/files/dzip-2.9-scrub-names.patch
@@ -0,0 +1,88 @@
+Fix directory traversals issues.
+
+Since .dz files normally just have relative directory trees:
+pak/
+pak/file
+pak/subdir/file
+
+we strip out all the components which ascend in the directory tree
+
+http://bugs.gentoo.org/93079
+
+--- main.c
++++ main.c
+@@ -77,6 +77,48 @@ int dzRead (int inlen)
+ return 1;
+ }
+
++#define IS_SEP(c) (c == '/' || c == ':' || c == '\\')
++void scrub_name(char *smee)
++{
++ char *paths[] = { "../", "..\\", "..:", NULL};
++ size_t p, i, len;
++ char scrubit, scrubbed;
++
++ scrubbed = 0;
++ len = strlen(smee);
++ i = 0;
++ scrubit = 1;
++
++ /* search the path and scrub out all relative paths */
++ while (i + 3 < len) {
++ for (p = 0; paths[p]; ++p) {
++ if (scrubit && !strncmp(paths[p], smee+i, 3)) {
++ scrubbed = 1;
++ memset(smee+i, '\0', 3);
++ i += 2;
++ break;
++ }
++ }
++ scrubit = IS_SEP(smee[i]) || smee[i] == '\0';
++ ++i;
++ }
++
++ if (!scrubbed)
++ return;
++
++ /* condense the string over all the scrubbed bits */
++ p = 0;
++ for (i = 0; i < len; ++i) {
++ while (p < len && smee[p] == '\0')
++ ++p;
++ if (p == len) {
++ smee[i] = '\0';
++ break;
++ }
++ smee[i] = smee[p++];
++ }
++}
++
+ int dzReadDirectoryEntry (direntry_t *de)
+ {
+ char *s;
+@@ -102,6 +144,7 @@ int dzReadDirectoryEntry (direntry_t *de
+ s = Dzip_malloc(de->len);
+ dzFile_Read(s, de->len);
+ de->name = s;
++ scrub_name(de->name);
+ if (de->pak && de->type != TYPE_PAK)
+ return 1; /* dont mess with dirchar inside pakfiles */
+ do
+--- v1code.c
++++ v1code.c
+@@ -201,6 +201,7 @@ void demv1_dxentities(void)
+
+ }
+
++extern void scrub_name(char *smee);
+ void dzUncompressV1 (int testing)
+ {
+ int i, inlen = 0;
+@@ -221,6 +222,7 @@ void dzUncompressV1 (int testing)
+ {
+ de = directory + i;
+ crcval = INITCRC;
++ scrub_name(de->name);
+ printf("%s %s",action,de->name);
+ fflush(stdout);
+
diff --git a/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch b/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch
new file mode 100644
index 000000000000..4bf10f8b98f6
--- /dev/null
+++ b/games-util/dzip/files/dzip-2.9-system-zlib-r2.patch
@@ -0,0 +1,72 @@
+--- dzip.h
++++ dzip.h
+@@ -2,7 +2,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-#include "zlib/zlib.h"
++#include <zlib.h>
+
+ typedef unsigned char uchar;
+
+@@ -177,4 +177,4 @@
+ #else
+ #define DIRCHAR '/'
+ #define WRONGCHAR '\\'
+-#endif
+\ No newline at end of file
++#endif
+--- Makefile.linux
++++ Makefile.linux
+@@ -1,18 +1,17 @@
+ # Makefile for linux
+
+-CC = gcc
+-CFLAGS = -Wall -O3
++CC ?= gcc
++CFLAGS ?= -O3
++CFLAGS += -Wall
+ TARGET = dzip
+ OBJECTS = main.o compress.o uncompress.o list.o crc32.o \
+- encode.o decode.o v1code.o conmain.o delete.o \
+- zlib/adler32.o zlib/deflate.o zlib/trees.o \
+- zlib/inflate.o zlib/infblock.o zlib/inftrees.o zlib/infcodes.o \
+- zlib/infutil.o zlib/inffast.o
++ encode.o decode.o v1code.o conmain.o delete.o
++LIBS = -lz
+
+ TMPFILES = gmon.out frag*
+
+ $(TARGET): $(OBJECTS)
+- $(CC) $(CFLAGS) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS)
+
+ clean:
+ rm -f $(TARGET) $(OBJECTS) $(TMPFILES)
+@@ -24,4 +23,4 @@
+ encode.o: encode.c dzip.h
+ list.o: list.c dzip.h dzipcon.h
+ decode.o: decode.c dzip.h dzipcon.h
+-v1code.o: v1code.c dzip.h dzipcon.h
+\ No newline at end of file
++v1code.o: v1code.c dzip.h dzipcon.h
+--- conmain.c.orig 2010-01-17 15:10:20.938605770 +0000
++++ conmain.c 2010-01-17 15:10:34.180603846 +0000
+@@ -507,8 +507,8 @@
+ if (!strcmp(argv[i],"-o")) i++;
+ }
+
+- zs.zalloc = Dzip_calloc;
+- zs.zfree = free;
++ zs.zalloc = Z_NULL; // Dzip_calloc; <- wrong number of arguments, reverting to default
++ zs.zfree = Z_NULL; // free; <- wrong number of arguments, reverting to default
+
+ if (flag[SW_LIST] || flag[SW_EXTRACT] || flag[SW_VERIFY])
+ {
+@@ -618,4 +618,4 @@
+ dzDeleteFiles_MakeList(files + 1, fileargs - 1);
+ free(files);
+ exit(0);
+-}
+\ No newline at end of file
++}
diff --git a/games-util/dzip/files/dzip-2.9-system-zlib.patch b/games-util/dzip/files/dzip-2.9-system-zlib.patch
new file mode 100644
index 000000000000..f68304adf240
--- /dev/null
+++ b/games-util/dzip/files/dzip-2.9-system-zlib.patch
@@ -0,0 +1,52 @@
+--- dzip.h
++++ dzip.h
+@@ -2,7 +2,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+
+-#include "zlib/zlib.h"
++#include <zlib.h>
+
+ typedef unsigned char uchar;
+
+@@ -177,4 +177,4 @@
+ #else
+ #define DIRCHAR '/'
+ #define WRONGCHAR '\\'
+-#endif
+\ No newline at end of file
++#endif
+--- Makefile.linux
++++ Makefile.linux
+@@ -1,18 +1,17 @@
+ # Makefile for linux
+
+-CC = gcc
+-CFLAGS = -Wall -O3
++CC ?= gcc
++CFLAGS ?= -O3
++CFLAGS += -Wall
+ TARGET = dzip
+ OBJECTS = main.o compress.o uncompress.o list.o crc32.o \
+- encode.o decode.o v1code.o conmain.o delete.o \
+- zlib/adler32.o zlib/deflate.o zlib/trees.o \
+- zlib/inflate.o zlib/infblock.o zlib/inftrees.o zlib/infcodes.o \
+- zlib/infutil.o zlib/inffast.o
++ encode.o decode.o v1code.o conmain.o delete.o
++LIBS = -lz
+
+ TMPFILES = gmon.out frag*
+
+ $(TARGET): $(OBJECTS)
+- $(CC) $(CFLAGS) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS)
+
+ clean:
+ rm -f $(TARGET) $(OBJECTS) $(TMPFILES)
+@@ -24,4 +23,4 @@
+ encode.o: encode.c dzip.h
+ list.o: list.c dzip.h dzipcon.h
+ decode.o: decode.c dzip.h dzipcon.h
+-v1code.o: v1code.c dzip.h dzipcon.h
+\ No newline at end of file
++v1code.o: v1code.c dzip.h dzipcon.h
diff --git a/games-util/dzip/files/dzip-amd64.diff b/games-util/dzip/files/dzip-amd64.diff
new file mode 100644
index 000000000000..ef49ff330570
--- /dev/null
+++ b/games-util/dzip/files/dzip-amd64.diff
@@ -0,0 +1,30 @@
+--- dzip/crc32.c 2002-07-12 06:07:54.000000000 +0200
++++ dz/crc32.c 2010-01-20 23:23:43.000000000 +0100
+@@ -1,10 +1,12 @@
++#include <stdint.h>
++
+ unsigned long crcval;
+ unsigned long crctable[256];
+
+-unsigned long crc_reflect(unsigned long x, int bits)
+-{
+- int i;
+- unsigned long v = 0, b = 1 << (bits - 1);
++unsigned long crc_reflect(uint32_t x, int bits)
++{
++ uint32_t i;
++ uint32_t v = 0, b = 1 << (bits - 1);
+
+ for (i = 0; i < bits; i++)
+ {
+@@ -16,8 +18,8 @@
+
+ void crc_init(void)
+ {
+- unsigned long crcpol = 0x04c11db7;
+- unsigned long i, j, k;
++ uint32_t crcpol = 0x04c11db7;
++ uint32_t i, j, k;
+
+ for (i = 0; i < 256; i++)
+ {
diff --git a/games-util/dzip/metadata.xml b/games-util/dzip/metadata.xml
new file mode 100644
index 000000000000..e7005c1ae69b
--- /dev/null
+++ b/games-util/dzip/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+<maintainer>
+ <email>hanno@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/games-util/etswitch/Manifest b/games-util/etswitch/Manifest
new file mode 100644
index 000000000000..bbb4575eefe6
--- /dev/null
+++ b/games-util/etswitch/Manifest
@@ -0,0 +1 @@
+DIST etswitch-0.1.14.tar.gz 165811 SHA256 8519b2e913704eab0535bbb3693b186cb16f69536fae5ccec371d2a3e4407399 SHA512 15447e728b8c6783e663bb76dd64a03b57ecfea6845991f4deca73ee5c5b8c2f87e92d842a46948e48468898eb036f17cbaf365887ea30c1b724db9133f9620c WHIRLPOOL a95175fbcc3a2a08669da11f74c740b6678869831209566998ed6ad94e3fcad456c44d799d934799d935ef0511b606dd9d10a6d92d15009ba4bf58ab96997cec
diff --git a/games-util/etswitch/etswitch-0.1.14.ebuild b/games-util/etswitch/etswitch-0.1.14.ebuild
new file mode 100644
index 000000000000..2fd6210e3251
--- /dev/null
+++ b/games-util/etswitch/etswitch-0.1.14.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="*nix minimizer for a few games"
+HOMEPAGE="http://hem.bredband.net/b400150/"
+SRC_URI="http://hem.bredband.net/b400150/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="x11-libs/libXpm
+ x11-libs/libXxf86vm
+ x11-libs/libXmu
+ x11-libs/libX11"
+DEPEND="${RDEPEND}
+ x11-libs/libXt
+ x11-proto/xproto
+ x11-proto/recordproto
+ x11-proto/xf86vidmodeproto"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-desktop-entry.patch \
+ "${FILESDIR}"/${P}-glibc.patch
+}
+
+src_configure() {
+ egamesconf --datadir=/usr/share
+}
+
+src_install() {
+ default
+ prepgamesdirs
+}
diff --git a/games-util/etswitch/files/etswitch-0.1.14-desktop-entry.patch b/games-util/etswitch/files/etswitch-0.1.14-desktop-entry.patch
new file mode 100644
index 000000000000..a7c50800c99e
--- /dev/null
+++ b/games-util/etswitch/files/etswitch-0.1.14-desktop-entry.patch
@@ -0,0 +1,20 @@
+--- etswitch.desktop.in.orig 2008-02-02 10:54:51.000000000 -0500
++++ etswitch.desktop.in 2008-02-02 11:17:40.000000000 -0500
+@@ -1,5 +1,4 @@
+ [Desktop Entry]
+-Encoding=UTF-8
+ Version=1.0
+
+ Name=ETSwitch
+@@ -15,9 +14,9 @@
+ Comment[fi_FI]=ETSwitch versio @VERSION@
+
+ Exec=etswitch --no-delay
+-Icon=etswitch.png
++Icon=etswitch
+ Terminal=false
+ Type=Application
+-Categories=Application;Game;Tool
++Categories=Game;Utility;
+ StartupNotify=true
+ StartupWMClass=ETSwitch
diff --git a/games-util/etswitch/files/etswitch-0.1.14-glibc.patch b/games-util/etswitch/files/etswitch-0.1.14-glibc.patch
new file mode 100644
index 000000000000..a51862d6722d
--- /dev/null
+++ b/games-util/etswitch/files/etswitch-0.1.14-glibc.patch
@@ -0,0 +1,12 @@
+diff -dupr etswitch-old/src/etswitch.c etswitch-0.1.14/src/etswitch.c
+--- etswitch-old/src/etswitch.c 2009-02-24 11:20:29.594339029 +0100
++++ etswitch-0.1.14/src/etswitch.c 2009-02-24 11:28:12.100463404 +0100
+@@ -461,7 +461,7 @@ int main(int argc, char *argv[]){
+ /* setup lock, fixme */
+ /* use temp var */
+ lock_file = "/tmp/.etswitch.pid"; /* now this isnt failsafe but at least something */
+- lock_fd = open(lock_file, O_CREAT | O_RDWR);
++ lock_fd = open(lock_file, O_CREAT | O_RDWR, 0600);
+ if (lock_fd < 0) {
+ #ifdef DEBUG
+ fprintf(stdout, "'%s' allready exits, will try to open.\n",lock_file);
diff --git a/games-util/etswitch/metadata.xml b/games-util/etswitch/metadata.xml
new file mode 100644
index 000000000000..cad5a2aa1773
--- /dev/null
+++ b/games-util/etswitch/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/fteqcc/Manifest b/games-util/fteqcc/Manifest
new file mode 100644
index 000000000000..47913632f85c
--- /dev/null
+++ b/games-util/fteqcc/Manifest
@@ -0,0 +1 @@
+DIST qclibsrc2501.zip 204047 SHA256 2de9e022996a6758b31390db8133a1af8a161ea2e962a9f7a12564139848d305 SHA512 60740e55c470dcb8deb235b49b5e8bd56f3c932fd9290808224b4d0ff2d6d8eb95302fdd1c972f36c992ac046fdbbc6a34c6de2fc67e1e7de54f23fd10de89d7 WHIRLPOOL 33ff136d20a4042d25a82ba7dbdc1c9a9883d409ffdd347d64d9001c5a186ca3495cd4b49b460dedb0140a3d8250f9f68d4a41dad299685c74e167770dcb2653
diff --git a/games-util/fteqcc/files/fteqcc-2501-cleanup-source.patch b/games-util/fteqcc/files/fteqcc-2501-cleanup-source.patch
new file mode 100644
index 000000000000..35f3dcf100ae
--- /dev/null
+++ b/games-util/fteqcc/files/fteqcc-2501-cleanup-source.patch
@@ -0,0 +1,93 @@
+--- qcc_pr_comp.c
++++ qcc_pr_comp.c
+@@ -7322,7 +7322,7 @@
+ QCC_def_t *def, *d;
+ QCC_function_t *f;
+ QCC_dfunction_t *df;
+- int i;
++ int i = 0;
+ pbool shared=false;
+ pbool externfnc=false;
+ pbool isconstant = false;
+@@ -8541,8 +8545,6 @@
+ struct qcc_includechunk_s *oldcurrentchunk;
+ extern struct qcc_includechunk_s *currentchunk;
+
+- extern char qccmsourcedir[];
+-
+ ocompilingfile = compilingfile;
+ os_file = s_file;
+ os_file2 = s_file2;
+--- hash.h
++++ hash.h
+@@ -19,12 +19,12 @@
+ int Hash_Key(char *name, int modulus);
+ void *Hash_Get(hashtable_t *table, char *name);
+ void *Hash_GetInsensative(hashtable_t *table, char *name);
+-void *Hash_GetKey(hashtable_t *table, int key);
++void *Hash_GetKey(hashtable_t *table, long key);
+ void *Hash_GetNext(hashtable_t *table, char *name, void *old);
+ void *Hash_GetNextInsensative(hashtable_t *table, char *name, void *old);
+ void *Hash_Add(hashtable_t *table, char *name, void *data, bucket_t *buck);
+ void *Hash_AddInsensative(hashtable_t *table, char *name, void *data, bucket_t *buck);
+ void Hash_Remove(hashtable_t *table, char *name);
+ void Hash_RemoveData(hashtable_t *table, char *name, void *data);
+-void Hash_RemoveKey(hashtable_t *table, int key);
+-void *Hash_AddKey(hashtable_t *table, int key, void *data, bucket_t *buck);
++void Hash_RemoveKey(hashtable_t *table, long key);
++void *Hash_AddKey(hashtable_t *table, long key, void *data, bucket_t *buck);
+--- hash.c
++++ hash.c
+@@ -68,7 +68,7 @@
+ }
+ return NULL;
+ }
+-void *Hash_GetKey(hashtable_t *table, int key)
++void *Hash_GetKey(hashtable_t *table, long key)
+ {
+ int bucknum = key%table->numbuckets;
+ bucket_t *buck;
+@@ -77,7 +77,7 @@
+
+ while(buck)
+ {
+- if ((int)buck->keystring == key)
++ if ((long)buck->keystring == key)
+ return buck->data;
+
+ buck = buck->next;
+@@ -168,7 +168,7 @@
+
+ return buck;
+ }
+-void *Hash_AddKey(hashtable_t *table, int key, void *data, bucket_t *buck)
++void *Hash_AddKey(hashtable_t *table, long key, void *data, bucket_t *buck)
+ {
+ int bucknum = key%table->numbuckets;
+
+@@ -237,14 +237,14 @@
+ }
+
+
+-void Hash_RemoveKey(hashtable_t *table, int key)
++void Hash_RemoveKey(hashtable_t *table, long key)
+ {
+ int bucknum = key%table->numbuckets;
+ bucket_t *buck;
+
+ buck = table->bucket[bucknum];
+
+- if ((int)buck->keystring == key)
++ if ((long)buck->keystring == key)
+ {
+ table->bucket[bucknum] = buck->next;
+ return;
+@@ -253,7 +253,7 @@
+
+ while(buck->next)
+ {
+- if ((int)buck->next->keystring == key)
++ if ((long)buck->next->keystring == key)
+ {
+ buck->next = buck->next->next;
+ return;
diff --git a/games-util/fteqcc/fteqcc-2501.ebuild b/games-util/fteqcc/fteqcc-2501.ebuild
new file mode 100644
index 000000000000..b8f4040e6439
--- /dev/null
+++ b/games-util/fteqcc/fteqcc-2501.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic
+
+DESCRIPTION="QC compiler"
+HOMEPAGE="http://fteqw.sourceforge.net/"
+SRC_URI="mirror://sourceforge/fteqw/qclibsrc${PV}.zip"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+RESTRICT="test"
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-cleanup-source.patch
+ sed -i \
+ -e '/^CC/d' \
+ -e "s: -O3 : :g" \
+ -e "s: -s : :g" \
+ -e 's/-o fteqcc.bin/$(LDFLAGS) -o fteqcc.bin/' \
+ Makefile || die "sed failed"
+ edos2unix readme.txt
+ append-flags -DQCCONLY
+}
+
+src_compile() {
+ emake BASE_CFLAGS="${CFLAGS} -Wall"
+}
+
+src_install() {
+ newbin fteqcc.bin fteqcc
+ dodoc readme.txt
+}
diff --git a/games-util/fteqcc/metadata.xml b/games-util/fteqcc/metadata.xml
new file mode 100644
index 000000000000..89e90bd88787
--- /dev/null
+++ b/games-util/fteqcc/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">fteqw</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/gamepick/Manifest b/games-util/gamepick/Manifest
new file mode 100644
index 000000000000..1ae8a41a741c
--- /dev/null
+++ b/games-util/gamepick/Manifest
@@ -0,0 +1 @@
+DIST gamepick-0.35.tar.gz 156725 SHA256 82e7e6126bd7917ebf65a561c8170075ae0c34502ef018b1663ad49b5e562039 SHA512 bd77d6584cb9bb5c358179226d20a1995badd7603332bde6692ecca6c30f26fe06e6ea202e04bd40c006e9f43ae8fcd885a09bcb696227be3da823dd68d5053c WHIRLPOOL 485fcba1421fa92039ea35314f28705372af5ed44c0c1caf5c992e71462dd658685b4e371c561c00ea9251ff82c6f5fd1f23415250a96c4432150f9b556fb4db
diff --git a/games-util/gamepick/gamepick-0.35.ebuild b/games-util/gamepick/gamepick-0.35.ebuild
new file mode 100644
index 000000000000..537df160f2ab
--- /dev/null
+++ b/games-util/gamepick/gamepick-0.35.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="Launch opengl games with custom graphic settings"
+HOMEPAGE="http://www.rillion.net/gamepick/index.html"
+SRC_URI="http://www.rillion.net/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="x11-libs/gtk+:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed -i \
+ -e "s:/etc:${GAMES_SYSCONFDIR}:" \
+ src/gamepick.h || die
+
+ sed -i \
+ -e 's/-O2//' \
+ src/Makefile.in || die
+}
+
+src_install() {
+ default
+
+ dodir "${GAMES_SYSCONFDIR}"
+ touch "${D}/${GAMES_SYSCONFDIR}"/${PN}.conf
+
+ newicon gamepick-48x48.xpm ${PN}.xpm
+ make_desktop_entry ${PN} ${PN}
+
+ prepgamesdirs
+}
diff --git a/games-util/gamepick/metadata.xml b/games-util/gamepick/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/gamepick/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/glbsp/Manifest b/games-util/glbsp/Manifest
new file mode 100644
index 000000000000..c59da6b4a0b3
--- /dev/null
+++ b/games-util/glbsp/Manifest
@@ -0,0 +1 @@
+DIST glbsp_src_224.tar.gz 230977 SHA256 e3b7c4bce21c2f9b77732a9b5920b6877e884b31dd1ed9273776538dba48a75c SHA512 562201093b69ae1db113479f8dd71e474d2d4ea7798b5e156dc096660e0b725a16ba44e8d2bfd332eba89b66d07ac2a1ddd803e75802c8fb3739a420701b2e1a WHIRLPOOL a2ba794848d9cdfceae6a929ac51fbfa230b5df14b4fea717877008ad5a1fd024cfd84dbd5a23be9bae505d368e5004511fca7281d44f60e36ad328c7998322d
diff --git a/games-util/glbsp/files/glbsp-2.24-fltk.patch b/games-util/glbsp/files/glbsp-2.24-fltk.patch
new file mode 100644
index 000000000000..342914e574be
--- /dev/null
+++ b/games-util/glbsp/files/glbsp-2.24-fltk.patch
@@ -0,0 +1,68 @@
+--- gui/local.h.old 2010-11-25 10:27:46.000000000 +0100
++++ gui/local.h 2010-11-25 10:28:58.000000000 +0100
+@@ -43,37 +43,37 @@
+ #include <limits.h>
+ #include <assert.h>
+
+-#include <FL/Fl.H>
+-#include <FL/Fl_Box.H>
+-#include <FL/Fl_Browser.H>
+-#include <FL/Fl_Button.H>
+-#include <FL/Fl_Check_Button.H>
+-#include <FL/Fl_Counter.H>
+-#include <FL/Fl_File_Icon.H>
+-#include <FL/Fl_Group.H>
+-#include <FL/Fl_Hold_Browser.H>
+-#include <FL/Fl_Image.H>
+-#include <FL/Fl_Input.H>
+-#include <FL/Fl_Menu_Bar.H>
+-#include <FL/Fl_Menu_Item.H>
+-#include <FL/Fl_Multiline_Output.H>
+-#include <FL/Fl_Multi_Browser.H>
+-#include <FL/Fl_Pack.H>
+-#include <FL/Fl_Pixmap.H>
+-#include <FL/Fl_Return_Button.H>
+-#include <FL/Fl_Round_Button.H>
+-#include <FL/Fl_Scrollbar.H>
+-#include <FL/Fl_Slider.H>
++#include <FL/Fl.h>
++#include <FL/Fl_Box.h>
++#include <FL/Fl_Browser.h>
++#include <FL/Fl_Button.h>
++#include <FL/Fl_Check_Button.h>
++#include <FL/Fl_Counter.h>
++#include <FL/Fl_File_Icon.h>
++#include <FL/Fl_Group.h>
++#include <FL/Fl_Hold_Browser.h>
++#include <FL/Fl_Image.h>
++#include <FL/Fl_Input.h>
++#include <FL/Fl_Menu_Bar.h>
++#include <FL/Fl_Menu_Item.h>
++#include <FL/Fl_Multiline_Output.h>
++#include <FL/Fl_Multi_Browser.h>
++#include <FL/Fl_Pack.h>
++#include <FL/Fl_Pixmap.h>
++#include <FL/Fl_Return_Button.h>
++#include <FL/Fl_Round_Button.h>
++#include <FL/Fl_Scrollbar.h>
++#include <FL/Fl_Slider.h>
+ #ifdef MACOSX
+-#include <FL/Fl_Sys_Menu_Bar.H>
++#include <FL/Fl_Sys_Menu_Bar.h>
+ #endif
+-#include <FL/Fl_Value_Input.H>
+-#include <FL/Fl_Widget.H>
+-#include <FL/Fl_Window.H>
++#include <FL/Fl_Value_Input.h>
++#include <FL/Fl_Widget.h>
++#include <FL/Fl_Window.h>
+
+-#include <FL/fl_ask.H>
+-#include <FL/fl_draw.H>
+-#include <FL/Fl_File_Chooser.H>
++#include <FL/fl_ask.h>
++#include <FL/fl_draw.h>
++#include <FL/Fl_File_Chooser.h>
+
+
+ //
diff --git a/games-util/glbsp/files/glbsp-2.24-ldflags.patch b/games-util/glbsp/files/glbsp-2.24-ldflags.patch
new file mode 100644
index 000000000000..e6adb0ff035c
--- /dev/null
+++ b/games-util/glbsp/files/glbsp-2.24-ldflags.patch
@@ -0,0 +1,22 @@
+--- Makefile.unx.old 2010-11-25 11:24:48.000000000 +0100
++++ Makefile.unx 2010-11-25 11:25:10.000000000 +0100
+@@ -79,8 +79,7 @@
+ $(CC) $(CMD_FLAGS) -c $^ -o $@
+
+ $(CMD_NAME): $(LIB_NAME) $(CMD_OBJS)
+- $(CC) $(CMD_FLAGS) $(CMD_OBJS) -o $@ $(LIB_NAME) $(CMD_LIBS)
+- $(STRIP) $@
++ $(CC) $(CMD_FLAGS) $(LDFLAGS) $(CMD_OBJS) -o $@ $(LIB_NAME) $(CMD_LIBS)
+
+ install: $(CMD_NAME)
+ cp $(CMD_NAME) $(INSTALL_PREFIX)/bin/
+--- Makefile.unx.old 2010-11-25 11:31:27.000000000 +0100
++++ Makefile.unx 2010-11-25 11:31:31.000000000 +0100
+@@ -125,7 +125,6 @@
+
+ $(GUI_NAME): $(LIB_NAME) $(GUI_OBJS)
+ $(CXX) $(GUI_FLAGS) $(GUI_OBJS) -o $@ $(LIB_NAME) $(GUI_LIBS)
+- $(STRIP) $@
+
+
+ # ----- DOCUMENTATION ---------------------------------------------
diff --git a/games-util/glbsp/glbsp-2.24.ebuild b/games-util/glbsp/glbsp-2.24.ebuild
new file mode 100644
index 000000000000..86aee9af99e3
--- /dev/null
+++ b/games-util/glbsp/glbsp-2.24.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs versionator
+
+MY_PV=$(delete_version_separator 1)
+DESCRIPTION="A node builder specially designed for OpenGL ports of the DOOM game engine"
+HOMEPAGE="http://glbsp.sourceforge.net/"
+SRC_URI="mirror://sourceforge/glbsp/${PN}_src_${MY_PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="fltk"
+
+DEPEND="fltk? ( x11-libs/fltk:1 )"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}/${P}-source
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ldflags.patch
+ sed -i \
+ -e "/^CC=/s:=.*:=$(tc-getCC):" \
+ -e "/^CXX=/s:=.*:=$(tc-getCXX):" \
+ -e "/^AR=/s:ar:$(tc-getAR):" \
+ -e "/^RANLIB=/s:=.*:=$(tc-getRANLIB):" \
+ -e "s:-O2:${CFLAGS}:" \
+ -e "s:-O -g3:${CFLAGS}:" \
+ Makefile.unx \
+ nodeview/Makefile.unx || die
+}
+
+src_compile() {
+ emake -f Makefile.unx
+ if use fltk ; then
+ emake -f Makefile.unx glBSPX \
+ FLTK_FLAGS="$(fltk-config --cflags)" \
+ FLTK_LIBS="$(fltk-config --use-images --ldflags)"
+ emake -f Makefile.unx -C nodeview \
+ FLTK_CFLAGS="$(fltk-config --cflags)" \
+ FLTK_LIBS="$(fltk-config --use-images --ldflags)"
+ fi
+}
+
+src_install() {
+ dobin glbsp
+ dolib.a libglbsp.a
+ doman glbsp.1
+ dodoc AUTHORS.txt glbsp.txt
+ insinto "/usr/include"
+ doins "src/glbsp.h"
+
+ if use fltk ; then
+ newbin glBSPX glbspx
+ newicon gui/icon.xpm glbspx.xpm
+ make_desktop_entry glbspx glBSPX glbspx
+
+ dobin nodeview/nodeview
+ docinto nodeview
+ dodoc nodeview/{README,TODO}.txt
+ fi
+}
diff --git a/games-util/glbsp/metadata.xml b/games-util/glbsp/metadata.xml
new file mode 100644
index 000000000000..7340483eadd9
--- /dev/null
+++ b/games-util/glbsp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">glbsp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/grfcodec/Manifest b/games-util/grfcodec/Manifest
new file mode 100644
index 000000000000..0f672607b824
--- /dev/null
+++ b/games-util/grfcodec/Manifest
@@ -0,0 +1 @@
+DIST grfcodec-6.0.4-source.tar.xz 165756 SHA256 7ec1f903cc48b73be9192a23f3fa14dc2a024d8edc4d2dfafa245e700e650cdb SHA512 cfbbd1cfae7f2d2ba08ca32d8af68f6885c15dddb6ab941bed32d6c15bf9581e0b4ba19a16a5e48e6d6e070438732df232d3f3f008d42baad77a93f931ad0331 WHIRLPOOL 6cbd33a2aa503c858b1b5eeabd8d201e54d68ea618369b464de05f262236303e4f5960119ba86ed792c076c354ce757c804f01a6e1f90d552be276f26004028d
diff --git a/games-util/grfcodec/grfcodec-6.0.4.ebuild b/games-util/grfcodec/grfcodec-6.0.4.ebuild
new file mode 100644
index 000000000000..894722305b24
--- /dev/null
+++ b/games-util/grfcodec/grfcodec-6.0.4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [ "${PV%9999}" != "${PV}" ] ; then
+ SCM=mercurial
+ EHG_REPO_URI="http://hg.openttdcoop.org/${PN}"
+fi
+
+inherit toolchain-funcs ${SCM}
+
+DESCRIPTION="A suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
+HOMEPAGE="http://dev.openttdcoop.org/projects/grfcodec"
+[[ -z ${SCM} ]] && SRC_URI="http://binaries.openttd.org/extra/${PN}/${PV}/${P}-source.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc ppc64 x86"
+IUSE=""
+
+[[ -n ${SCM} ]] && S=${WORKDIR}/${PN}
+
+DEPEND="!games-util/nforenum
+ dev-lang/perl
+ dev-libs/boost
+ media-libs/libpng:0"
+RDEPEND=""
+
+src_prepare() {
+# Set up Makefile.local so that we respect CXXFLAGS/LDFLAGS
+cat > Makefile.local <<-__EOF__
+ CXX=$(tc-getCXX)
+ BOOST_INCLUDE=/usr/include
+ CXXFLAGS=${CXXFLAGS}
+ LDOPT=${LDFLAGS}
+ UPX=
+ V=1
+ FLAGS=
+ EXE=
+ __EOF__
+ sed -i -e 's/-O2//g' Makefile || die
+}
+
+src_install() {
+ dobin grfcodec grfid grfstrip nforenum
+ doman docs/*.1
+ dodoc changelog.txt docs/*.txt
+}
diff --git a/games-util/grfcodec/metadata.xml b/games-util/grfcodec/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/grfcodec/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/gslist/Manifest b/games-util/gslist/Manifest
new file mode 100644
index 000000000000..f6c5872a04e1
--- /dev/null
+++ b/games-util/gslist/Manifest
@@ -0,0 +1 @@
+DIST gslist-0.8.11a.zip 2599227 SHA256 6acd2aecae5b52b6e5c7cb80ab7c607d5fbaa80ce569dc997e24f7458fc63034 SHA512 082cda97bf82ba4763236ce142d65a90b3372a430436cdc9fdccd1101feb5a2741807dff5a00e81fc833048e81468473d90851d23574167e78166beef08d0734 WHIRLPOOL ecd4aca5ac3933c6d117d8d1a091a62a6cc9bde96042f37a95e4ee3a7dbe9211f0a321d1c0fc9847a1f79a08af3af9bab0a8022d2caeb88a0e17f5bf7875df6f
diff --git a/games-util/gslist/files/gslist-0.8.11a-build.patch b/games-util/gslist/files/gslist-0.8.11a-build.patch
new file mode 100644
index 000000000000..4ffbfd94e012
--- /dev/null
+++ b/games-util/gslist/files/gslist-0.8.11a-build.patch
@@ -0,0 +1,41 @@
+--- work.orig/Makefile
++++ work/Makefile
+@@ -1,26 +1,30 @@
+-CFLAGS += -O2 -s -fstack-protector-all
++CFLAGS += -Wall -D_GNU_SOURCE
+ PREFIX = /usr/local
+ BINDIR = $(PREFIX)/bin
+ SRC = src/gslist.c src/enctype1_decoder.c src/enctype2_decoder.c src/enctype_shared.c src/mydownlib.c
+ #LIBS = -lpthread /usr/lib/libGeoIP.a /usr/lib/i386-linux-gnu/libz.a
+ #SQLIBS = /usr/lib/i386-linux-gnu/libmysqlclient.a /usr/lib/i386-linux-gnu/libm.a -ldl
+ LIBS = -lpthread -lGeoIP -lz
+-SQLIBS = -lmysqlclient
+ O = $(SRC:.c=.o)
+
+-all: gslist gslistsql
++ifneq ($(GSWEB),0)
++CFLAGS += -DGSWEB
++endif
+
+-gslist:
+- $(CC) $(SRC) $(CFLAGS) -o gslist $(LIBS) -DGSWEB
+- $(CC) $(SRC) $(CFLAGS) -o gslistsql $(SQLIBS) $(LIBS) -DGSWEB -DSQL
++ifneq ($(SQL),0)
++CFLAGS += -DSQL
++LIBS += -lmysqlclient
++endif
++
++gslist: $(O)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o gslist $(O) $(LIBS)
+
+ clean:
+- rm -f gslist gslistsql src/gslist.o src/enctype1_decoder.o src/enctype2_decoder.o src/enctype_shared.o src/enctypex_decoder.o src/mydownlib.o
++ rm -f gslist $(O)
+
+ install:
+ install -m 755 -d $(BINDIR)
+ install -m 755 gslist $(BINDIR)/gslist
+- install -m 755 gslistsql $(BINDIR)/gslistsql
+
+ .PHONY:
+ clean install
diff --git a/games-util/gslist/gslist-0.8.11a.ebuild b/games-util/gslist/gslist-0.8.11a.ebuild
new file mode 100644
index 000000000000..ce27b8f8168c
--- /dev/null
+++ b/games-util/gslist/gslist-0.8.11a.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="A GameSpy server browser"
+HOMEPAGE="http://aluigi.altervista.org/papers.htm#gslist"
+SRC_URI="mirror://gentoo/${P}.zip"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~hppa x86"
+IUSE="web"
+
+RDEPEND="dev-libs/geoip"
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+S=${WORKDIR}
+
+src_prepare() {
+ rm -f gslist gslistsql *.exe *.dll || die
+ epatch "${FILESDIR}"/${P}-build.patch
+}
+
+src_compile() {
+ emake SQL=0 $(use web || echo GSWEB=0)
+}
+
+src_install() {
+ dogamesbin ${PN}
+ dodoc ${PN}.txt
+ prepgamesdirs
+}
diff --git a/games-util/gslist/metadata.xml b/games-util/gslist/metadata.xml
new file mode 100644
index 000000000000..bda4ebb3956a
--- /dev/null
+++ b/games-util/gslist/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <use>
+ <flag name='web'>Enable the web interface</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-util/gtkevemon/Manifest b/games-util/gtkevemon/Manifest
new file mode 100644
index 000000000000..5aa60d445df1
--- /dev/null
+++ b/games-util/gtkevemon/Manifest
@@ -0,0 +1,2 @@
+DIST gtkevemon-1.8-learning.patch.gz 5879 SHA256 ec9951ae91447e4e5f1d1720a35c27a92546760cc2ae76cd269f85cb59766437 SHA512 44d58ce947b27fb623a94e79e2eff6a20aec1bd0a63c3029347099e64bde5fc31080bcfed0da8fd00f70c2f5c88182760ee169729729c39805bee099099d3022 WHIRLPOOL 68342fc1e8aa729f4e6cd3002fbde58ad7c3818dc5d76cddfb4b4d4d05a5f9e55d8244f07a7803c3fc5ddc354546cc20f73c0c6dea58fd1a2303004cd3ce120e
+DIST gtkevemon-1.8-source.tar.gz 321226 SHA256 32faf51b5b84f7e055dd47b7c43f722613b5c6cfbd8ec6a47cada75e686300c7 SHA512 483a66bda9f34ae423ce4205eaf5dc3775dab9d8d0074a19d79ffad86bc13974b09927efd1757300233c8e040f42e564ea44f32a5c3c2726db404d43d9fb5736 WHIRLPOOL 60ea958633d6fc9ca2e6b4940f30f9691c95c8d1a43a16763ab3532065be0872e0e6c0fe71a0b36ebd0d74422105cc745ab7d88ce0a5f7a552c9ca22c62f4a85
diff --git a/games-util/gtkevemon/files/gtkevemon-1.8-portrait.patch b/games-util/gtkevemon/files/gtkevemon-1.8-portrait.patch
new file mode 100644
index 000000000000..8c2f4716ccca
--- /dev/null
+++ b/games-util/gtkevemon/files/gtkevemon-1.8-portrait.patch
@@ -0,0 +1,17 @@
+http://trac.battleclinic.com:8000/gtkevemon/changeset/121/trunk/gtkevemon/src/gtkportrait.cc
+
+Index: trunk/gtkevemon/src/gtkportrait.cc
+===================================================================
+--- trunk/gtkevemon/src/gtkportrait.cc (revision 109)
++++ trunk/gtkevemon/src/gtkportrait.cc (revision 121)
+@@ -107,6 +107,8 @@
+
+ AsyncHttp* http = AsyncHttp::create();;
+- http->set_host("img.eve.is");
+- http->set_path("/serv.asp?s=256&c=" + this->char_id);
++ //http->set_host("img.eve.is");
++ //http->set_path("/serv.asp?s=256&c=" + this->char_id);
++ http->set_host("image.eveonline.com");
++ http->set_path("/Character/" + this->char_id + "_256.jpg");
+ Config::setup_http(http);
+
diff --git a/games-util/gtkevemon/files/gtkevemon-1.8-pthreads-build-fix.patch b/games-util/gtkevemon/files/gtkevemon-1.8-pthreads-build-fix.patch
new file mode 100644
index 000000000000..3250680c7aa1
--- /dev/null
+++ b/games-util/gtkevemon/files/gtkevemon-1.8-pthreads-build-fix.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/show_bug.cgi?id=423305
+https://bitbucket.org/BattleClinic/gtkevemon/changeset/4c365033418e
+
+# HG changeset patch
+# User ChickenMan <chickenman@exhale.de>
+# Date 1341445681 -7200
+# Node ID 4c365033418e2213caff57a0917851cc18c7f1a1
+# Parent 0b8a490b5f491bdd4a36d85918479595c861d3db
+Fix compilation on systems using pthreads and gcc 4.7.x
+
+This fixes issue 1.
+Thanks to l0ser140 for reporting and initial patch.
+
+--- src/thread.h
++++ src/thread.h
+@@ -13,7 +13,15 @@
+ #ifndef THREAD_HEADER
+ #define THREAD_HEADER
+
+-#if defined(_POSIX_THREADS) || defined(__SunOS)
++#if defined(__linux__) \
++ || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) \
++ || defined(__DragonFly__) \
++ || defined(__APPLE__) \
++ || defined(__SunOS)
++# include <unistd.h> // for _POSIX_THREADS
++#endif
++
++#if defined(_POSIX_THREADS)
+ # include "thread_posix.h"
+ #elif defined(WIN32)
+ # include "thread_win32.h"
diff --git a/games-util/gtkevemon/gtkevemon-1.8-r1.ebuild b/games-util/gtkevemon/gtkevemon-1.8-r1.ebuild
new file mode 100644
index 000000000000..1df86d185222
--- /dev/null
+++ b/games-util/gtkevemon/gtkevemon-1.8-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+IUSE=""
+if [[ ${PV} == *9999* ]]; then
+ inherit subversion
+ ESVN_REPO_URI="svn://svn.battleclinic.com/GTKEVEMon/trunk/${PN}"
+ KEYWORDS=""
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="http://gtkevemon.battleclinic.com/releases/${P}-source.tar.gz
+ http://dev.gentoo.org/~wired/distfiles/${P}-learning.patch.gz"
+fi
+
+DESCRIPTION="A standalone skill monitoring application for EVE Online"
+HOMEPAGE="http://gtkevemon.battleclinic.com"
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+ dev-cpp/gtkmm:2.4
+ dev-libs/libxml2
+"
+DEPEND="${DEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ sed -e 's:Categories=Game;$:Categories=Game;RolePlaying;GTK;:' \
+ -i icon/${PN}.desktop || die "sed failed"
+
+ # upstream fix for new character portrait URL
+ epatch "${FILESDIR}/${P}-portrait.patch"
+ # upstream fix for remap calculation after learning skills removal
+ epatch "${DISTDIR}/${P}-learning.patch.gz"
+ # pthreads build fix, bug #423305
+ epatch "${FILESDIR}/${P}-pthreads-build-fix.patch"
+}
+
+src_install() {
+ dobin src/${PN}
+ doicon icon/${PN}.xpm
+ domenu icon/${PN}.desktop
+ dodoc CHANGES README TODO
+}
diff --git a/games-util/gtkevemon/gtkevemon-9999.ebuild b/games-util/gtkevemon/gtkevemon-9999.ebuild
new file mode 100644
index 000000000000..b380ae1afe46
--- /dev/null
+++ b/games-util/gtkevemon/gtkevemon-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+IUSE=""
+if [[ ${PV} == *9999* ]]; then
+ inherit mercurial
+ EHG_REPO_URI="https://bitbucket.org/BattleClinic/${PN}"
+ KEYWORDS=""
+ SRC_URI=""
+ MY_S="${WORKDIR}/${P}/gtkevemon"
+else
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="http://gtkevemon.battleclinic.com/releases/${P}-source.tar.gz"
+fi
+
+DESCRIPTION="A standalone skill monitoring application for EVE Online"
+HOMEPAGE="http://gtkevemon.battleclinic.com"
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+ dev-cpp/gtkmm:2.4
+ dev-libs/libxml2
+"
+DEPEND="${DEPEND}
+ virtual/pkgconfig
+"
+
+src_unpack()
+{
+ if [[ ${PV} == *9999* ]]; then
+ mercurial_src_unpack
+ S=${MY_S}
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ sed -e 's:Categories=Game;$:Categories=Game;RolePlaying;GTK;:' \
+ -i icon/${PN}.desktop || die "sed failed"
+}
+
+src_install() {
+ # fixed QA notice
+ sed -i "/^Encoding/d" icon/${PN}.desktop
+ dobin src/${PN}
+ doicon icon/${PN}.svg
+ domenu icon/${PN}.desktop
+ dodoc CHANGES README TODO
+}
diff --git a/games-util/gtkevemon/metadata.xml b/games-util/gtkevemon/metadata.xml
new file mode 100644
index 000000000000..6c00aa26cd0b
--- /dev/null
+++ b/games-util/gtkevemon/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>wired@gentoo.org</email>
+ <name>Alex Alexander</name>
+ </maintainer>
+ <longdescription lang="en">
+ GtkEveMon is a standalone skill monitoring application for EVE Online.
+ It allows monitoring characters' skills and skill training process without
+ starting EVE Online. It is intended as a lightweight, cross-platform
+ alternative to EveMon, a popular skill monitoring application for Windows.
+ </longdescription>
+</pkgmetadata>
diff --git a/games-util/hearse/Manifest b/games-util/hearse/Manifest
new file mode 100644
index 000000000000..2a16335f7517
--- /dev/null
+++ b/games-util/hearse/Manifest
@@ -0,0 +1 @@
+DIST hearse-1.5.tar.gz 29202 SHA256 2f339bef82cb416a818ed458e4b1e8b0ccbb1d6abf8e33a99b5d7fdffec7fb12 SHA512 70a477f095059e6e65aef58da93a3928b9c8b7fd72793bb14505e01b00cb37d799e5c2a0ce5c87db3bf61bebdd5f6aec4fbe1b64a63dac67ff00df5842332a55 WHIRLPOOL b2dff1cab6146cedba0712333584199edc715178342fb5487142bf4b34b2eec21702a5d71480b2aafc947e057bb5950192e0873e12db6cbb38f87911ebeec7eb
diff --git a/games-util/hearse/hearse-1.5.ebuild b/games-util/hearse/hearse-1.5.ebuild
new file mode 100644
index 000000000000..2d0f227599a3
--- /dev/null
+++ b/games-util/hearse/hearse-1.5.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit games
+
+DESCRIPTION="exchange Nethack bones files with other players"
+HOMEPAGE="http://www.argon.org/~roderick/hearse/"
+SRC_URI="http://www.argon.org/~roderick/hearse/dist/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+IUSE=""
+
+DEPEND=">=dev-lang/perl-5.8.0
+ dev-perl/libwww-perl
+ app-arch/bzip2"
+RDEPEND=">=games-roguelike/nethack-3.4.1
+ ${DEPEND}"
+
+src_prepare() {
+ # patch because Gentoo's nethack ebuild
+ # uses bz2 and not gz for bones.
+ sed -i \
+ -e "s:gzip :bzip2 :" \
+ -e "s:.gz:.bz2:" hearse || die
+ sed -i \
+ -e 's:gzip :bzip2 :' \
+ -e "s:gz|z|Z:bz2:" bones-info || die
+}
+src_configure() {
+ perl Makefile.PL || die
+}
+
+src_install() {
+ dogamesbin hearse bones-info
+ doman blib/man1/*.1
+ dodoc Notes README debian/changelog
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ einfo "As root, run \"${GAMES_BINDIR}/hearse --user-email your@address.com\" to activate."
+ einfo "Add the following to /etc/crontab to automatically exchange bones:"
+ einfo " 0 3 * * * root perl -we 'sleep rand 3600'; ${GAMES_BINDIR}/hearse --quiet"
+}
diff --git a/games-util/hearse/metadata.xml b/games-util/hearse/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/hearse/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/higan-purify/Manifest b/games-util/higan-purify/Manifest
new file mode 100644
index 000000000000..6b6c362cb405
--- /dev/null
+++ b/games-util/higan-purify/Manifest
@@ -0,0 +1 @@
+DIST purify_v03-source.tar.xz 196924 SHA256 2020f0b5a744f08c24085a15a6c2ec1d7c4424bba6727f244e513b95c4247e38 SHA512 095b62013f5a33e720b87c48f32c41239d8cef4c6ddc2b6d119d15b3f8b92bc15d744afa0b2bc8d7a49ef53f8f3fa7f2247be490499a9b194863534f9c1a4b3d WHIRLPOOL 395c6976d19065c23f084aa452286b81db8068ae46a658172b749f3ef2ee879514c1c64ee2e8ac8b1eaa4ed16ebaa540852b355c0ae42855759d9d3337e185ae
diff --git a/games-util/higan-purify/files/higan-purify-03-QA.patch b/games-util/higan-purify/files/higan-purify-03-QA.patch
new file mode 100644
index 000000000000..e523ba4cad95
--- /dev/null
+++ b/games-util/higan-purify/files/higan-purify-03-QA.patch
@@ -0,0 +1,42 @@
+--- purify_v03-source/purify/Makefile
++++ purify_v03-source/purify/Makefile
+@@ -2,8 +2,8 @@
+ include phoenix/Makefile
+
+ path := /usr/local/bin
+-flags := -I. -O3 -fomit-frame-pointer
+-link := -s
++flags := -I. $(CXXFLAGS)
++link := $(LDFLAGS)
+ objects := obj/phoenix.o obj/purify.o
+
+ ifeq ($(platform),x)
+@@ -22,7 +22,7 @@
+
+ build: $(objects)
+ ifeq ($(platform),x)
+- $(cpp) -pthread $(link) -o purify $(objects) $(phoenixlink)
++ $(cpp) $(flags) -pthread $(link) -o purify $(objects) $(phoenixlink)
+ else ifeq ($(platform),win)
+ windres phoenix/windows/phoenix.rc obj/phoenix-resource.o
+ $(cpp) -shared -o phoenix.dll obj/phoenix.o $(phoenixlink)
+--- purify_v03-source/purify/phoenix/Makefile
++++ purify_v03-source/purify/phoenix/Makefile
+@@ -4,13 +4,13 @@
+ endif
+
+ ifeq ($(phoenix),gtk)
+- phoenixflags := -DPHOENIX_GTK `pkg-config --cflags gtk+-2.0`
+- phoenixlink := `pkg-config --libs gtk+-2.0`
++ phoenixflags := -DPHOENIX_GTK `pkg-config --cflags gtk+-2.0 x11`
++ phoenixlink := `pkg-config --libs gtk+-2.0 x11` -ldl
+ endif
+
+ ifeq ($(phoenix),qt)
+- phoenixflags := -DPHOENIX_QT `pkg-config --cflags QtCore QtGui`
+- phoenixlink := `pkg-config --libs QtCore QtGui`
++ phoenixflags := -DPHOENIX_QT `pkg-config --cflags QtCore QtGui x11`
++ phoenixlink := `pkg-config --libs QtCore QtGui x11` -ldl
+ endif
+ else ifeq ($(platform),win)
+ phoenixflags := -DPHOENIX_WINDOWS
diff --git a/games-util/higan-purify/higan-purify-03.ebuild b/games-util/higan-purify/higan-purify-03.ebuild
new file mode 100644
index 000000000000..d27b1956f1e1
--- /dev/null
+++ b/games-util/higan-purify/higan-purify-03.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs qmake-utils
+
+MY_P=purify_v${PV}-source
+
+DESCRIPTION="Rom purifier for higan"
+HOMEPAGE="http://byuu.org/higan/"
+SRC_URI="http://higan.googlecode.com/files/${MY_P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="qt4"
+
+RDEPEND="
+ dev-games/higan-ananke
+ x11-libs/libX11
+ !qt4? ( x11-libs/gtk+:2 )
+ qt4? ( >=dev-qt/qtgui-4.5:4 )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}/purify
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ if [[ $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 || $(gcc-major-version) -lt 4 ]] ; then
+ eerror "You need at least sys-devel/gcc-4.7.0"
+ die "You need at least sys-devel/gcc-4.7.0"
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-QA.patch
+ sed -i \
+ -e "/handle/s#/usr/local/lib#/usr/$(get_libdir)#" \
+ nall/dl.hpp || die
+
+ # regenerate .moc if needed
+ if use qt4; then
+ cd phoenix/qt || die
+ "$(qt4_get_bindir)"/moc -i -I. -o platform.moc platform.moc.hpp || die
+ fi
+}
+
+src_compile() {
+ if use qt4; then
+ mytoolkit="qt"
+ else
+ mytoolkit="gtk"
+ fi
+
+ emake \
+ platform="x" \
+ compiler="$(tc-getCXX)" \
+ phoenix="${mytoolkit}"
+}
+
+src_install() {
+ dobin purify
+}
diff --git a/games-util/higan-purify/metadata.xml b/games-util/higan-purify/metadata.xml
new file mode 100644
index 000000000000..01a746edb196
--- /dev/null
+++ b/games-util/higan-purify/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+</pkgmetadata>
+
diff --git a/games-util/joystick/Manifest b/games-util/joystick/Manifest
new file mode 100644
index 000000000000..2b49efbca52c
--- /dev/null
+++ b/games-util/joystick/Manifest
@@ -0,0 +1 @@
+DIST linuxconsoletools-1.4.8.tar.bz2 43964 SHA256 23c4ac595f608e25f472d947c4193233f763f37ae0cf6b48141d33443a4cee6a SHA512 ea3a0baa3f163e10a4c76f58977a96d91d91bddb1a75cea5195b0a631c11ca55e40730aaa0d1965404837595c4a7fd8b75c3dd7785fe0e47ee2c90021341f262 WHIRLPOOL c02960d5e171efef3739f440a903ae9b14bec8b6ab4de2181ea691aa78c870f81b291ac98e313d234778fb59c4be8e53242cb46db019f3dffdbd8f26ddcbb113
diff --git a/games-util/joystick/files/joystick-1.4.8-build.patch b/games-util/joystick/files/joystick-1.4.8-build.patch
new file mode 100644
index 000000000000..f888ccd18812
--- /dev/null
+++ b/games-util/joystick/files/joystick-1.4.8-build.patch
@@ -0,0 +1,39 @@
+--- linuxconsoletools-1.4.4.orig/docs/Makefile
++++ linuxconsoletools-1.4.4/docs/Makefile
+@@ -20,13 +20,17 @@
+ # 02110-1301 USA.
+
+ MANPAGES = inputattach.1 jstest.1 jscal.1 fftest.1 \
+- ffmvforce.1 ffset.1 ffcfstress.1 jscal-store.1 \
++ ffset.1 ffcfstress.1 jscal-store.1 \
+ jscal-restore.1
+
++ifneq ($(USE_SDL),no)
++MANPAGES += ffmvforce.1
++endif
++
+ PREFIX ?= /usr/local
+
+ install:
+ install -d $(DESTDIR)$(PREFIX)/share/man/man1
+- install $(MANPAGES) $(DESTDIR)$(PREFIX)/share/man/man1
++ install -m 644 $(MANPAGES) $(DESTDIR)$(PREFIX)/share/man/man1
+
+ .PHONY: install
+--- linuxconsoletools-1.4.4.orig/utils/Makefile
++++ linuxconsoletools-1.4.4/utils/Makefile
+@@ -27,9 +27,13 @@
+
+ CFLAGS ?= -g -O2 -Wall
+
+-PROGRAMS = inputattach jstest jscal fftest ffmvforce ffset \
++PROGRAMS = inputattach jstest jscal fftest ffset \
+ ffcfstress jscal-restore jscal-store
+
++ifneq ($(USE_SDL),no)
++PROGRAMS += ffmvforce
++endif
++
+ PREFIX ?= /usr/local
+
+ compile: $(PROGRAMS)
diff --git a/games-util/joystick/files/joystick-1.4.8-udev.patch b/games-util/joystick/files/joystick-1.4.8-udev.patch
new file mode 100644
index 000000000000..c0032493ebf7
--- /dev/null
+++ b/games-util/joystick/files/joystick-1.4.8-udev.patch
@@ -0,0 +1,52 @@
+diff -ru linuxconsoletools-1.4.8.orig/utils/jscal-restore.in linuxconsoletools-1.4.8/utils/jscal-restore.in
+--- linuxconsoletools-1.4.8.orig/utils/jscal-restore.in 2011-12-15 10:49:01.000000000 -0500
++++ linuxconsoletools-1.4.8/utils/jscal-restore.in 2015-05-16 01:54:00.799168225 -0400
+@@ -6,8 +6,13 @@
+ exit 1
+ fi
+
+-if [ ! -x /sbin/udevadm ]; then
+- echo Restoring joystick configuration requires udev! >&2
++for f in /sbin/udevadm /bin/udevadm ;
++do
++ [ -x $f ] && UDEVADM=$f
++done
++
++if [ -z "$UDEVADM" ] ; then
++ echo Storing joystick configuration requires udev! >&2
+ exit 1
+ fi
+
+@@ -30,7 +35,7 @@
+ # in the NAME value
+ IFS=$'\x0A'
+
+-for ATTRIBUTE in $( /sbin/udevadm info -a -n $1 | @@PREFIX@@/share/joystick/ident ); do
++for ATTRIBUTE in $( ${UDEVADM} info -a -n $1 | @@PREFIX@@/share/joystick/ident ); do
+ ID=$( echo "$ATTRIBUTE" | cut -f 1 -d = )
+ VALUE=$( echo "$ATTRIBUTE" | cut -f 2 -d \" )
+ case $ID in
+diff -ru linuxconsoletools-1.4.8.orig/utils/jscal-store.in linuxconsoletools-1.4.8/utils/jscal-store.in
+--- linuxconsoletools-1.4.8.orig/utils/jscal-store.in 2011-12-15 10:49:01.000000000 -0500
++++ linuxconsoletools-1.4.8/utils/jscal-store.in 2015-05-16 01:53:18.725607838 -0400
+@@ -11,14 +11,18 @@
+ echo "Stores the device's calibration for future use."
+ exit 1
+ fi
++for f in /sbin/udevadm /bin/udevadm ;
++do
++ [ -x $f ] && UDEVADM=$f
++done
+
+-if [ ! -x /sbin/udevadm ]; then
++if [ -z "$UDEVADM" ] ; then
+ echo Storing joystick configuration requires udev! >&2
+ exit 1
+ fi
+
+ ident=$(mktemp)
+-/sbin/udevadm info -a -n $1 | @@PREFIX@@/share/joystick/ident > $ident
++${UDEVADM} info -a -n $1 | @@PREFIX@@/share/joystick/ident > $ident
+ . $ident
+ rm $ident
+
diff --git a/games-util/joystick/joystick-1.4.8-r1.ebuild b/games-util/joystick/joystick-1.4.8-r1.ebuild
new file mode 100644
index 000000000000..387553c473da
--- /dev/null
+++ b/games-util/joystick/joystick-1.4.8-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+MY_P="linuxconsoletools-${PV}"
+DESCRIPTION="joystick testing utilities"
+HOMEPAGE="http://sourceforge.net/projects/linuxconsole/ http://atrey.karlin.mff.cuni.cz/~vojtech/input/"
+SRC_URI="mirror://sourceforge/linuxconsole/files/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc x86"
+IUSE="sdl udev"
+
+DEPEND="sdl? ( media-libs/libsdl:0[video] )
+ !<x11-libs/tslib-1.0-r2"
+RDEPEND="${DEPEND}
+ udev? ( virtual/udev )"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-udev.patch
+ export PREFIX=/usr
+ tc-export CC PKG_CONFIG
+ export USE_SDL=$(usex sdl)
+}
+
+src_install() {
+ default
+ if use !udev ; then
+ rm -f "${D}"/usr/bin/jscal-{re,}store || die
+ fi
+}
diff --git a/games-util/joystick/joystick-1.4.8.ebuild b/games-util/joystick/joystick-1.4.8.ebuild
new file mode 100644
index 000000000000..7fd0e8a00441
--- /dev/null
+++ b/games-util/joystick/joystick-1.4.8.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+MY_P="linuxconsoletools-${PV}"
+DESCRIPTION="joystick testing utilities"
+HOMEPAGE="http://sourceforge.net/projects/linuxconsole/ http://atrey.karlin.mff.cuni.cz/~vojtech/input/"
+SRC_URI="mirror://sourceforge/linuxconsole/files/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ~ppc x86"
+IUSE="sdl"
+
+DEPEND="sdl? ( media-libs/libsdl:0[video] )
+ !<x11-libs/tslib-1.0-r2"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-build.patch
+ export PREFIX=/usr
+ tc-export CC PKG_CONFIG
+ export USE_SDL=$(usex sdl)
+}
diff --git a/games-util/joystick/metadata.xml b/games-util/joystick/metadata.xml
new file mode 100644
index 000000000000..ec0c3e67096f
--- /dev/null
+++ b/games-util/joystick/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">linuxconsole</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/linux-wbfs-manager/Manifest b/games-util/linux-wbfs-manager/Manifest
new file mode 100644
index 000000000000..eea836f29edb
--- /dev/null
+++ b/games-util/linux-wbfs-manager/Manifest
@@ -0,0 +1 @@
+DIST linux-wbfs-manager-0.1.12.tar.gz 34251 SHA256 45e09fb014bd28ab6181a383fbb74f2979a46b1d8ce8752389a7dc543f287c7c SHA512 58ac4d110e27123d04261d618df8734a0471bcad63171025aa4766a73bcc4a9240fceec59b1ba91fff71230e98f57b5fdd12390d380dc0c41d08740b7076bf6f WHIRLPOOL 65bcb3b44a225caf1dd92bc6487aaea4ff4f248e3b013d3d07eaf000af2d999a50df72f9ec235dcf9e549bcbaddce05bc865d905ca1e4348b50bc17a56b6712d
diff --git a/games-util/linux-wbfs-manager/linux-wbfs-manager-0.1.12.ebuild b/games-util/linux-wbfs-manager/linux-wbfs-manager-0.1.12.ebuild
new file mode 100644
index 000000000000..aea44b508df1
--- /dev/null
+++ b/games-util/linux-wbfs-manager/linux-wbfs-manager-0.1.12.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+if [[ "${PV}" == "9999" ]]; then
+ ESVN_REPO_URI="http://linux-wbfs-manager.googlecode.com/svn/trunk/"
+ inherit toolchain-funcs subversion
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ inherit toolchain-funcs
+ SRC_URI="http://linux-wbfs-manager.googlecode.com/files/${P}.tar.gz"
+ KEYWORDS="amd64 ~ppc x86"
+fi;
+
+DESCRIPTION="WBFS manager for Linux using GTK+"
+HOMEPAGE="http://code.google.com/p/linux-wbfs-manager/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND="dev-libs/glib:2
+ gnome-base/libglade:2.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+if [[ ${PV} == "9999" ]] ; then
+ S=${WORKDIR}/${ECVS_MODULE}
+else
+ S=${WORKDIR}/${PN}
+fi
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ subversion_src_unpack
+ else
+ default
+ fi
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin wbfs_gtk
+ dodoc README
+}
diff --git a/games-util/linux-wbfs-manager/linux-wbfs-manager-9999.ebuild b/games-util/linux-wbfs-manager/linux-wbfs-manager-9999.ebuild
new file mode 100644
index 000000000000..202cdcede763
--- /dev/null
+++ b/games-util/linux-wbfs-manager/linux-wbfs-manager-9999.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+if [[ "${PV}" == "9999" ]]; then
+ ESVN_REPO_URI="http://linux-wbfs-manager.googlecode.com/svn/trunk/"
+ inherit toolchain-funcs subversion
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ inherit toolchain-funcs
+ SRC_URI="http://linux-wbfs-manager.googlecode.com/files/${P}.tar.gz"
+ KEYWORDS="~amd64 ~ppc ~x86"
+fi;
+
+DESCRIPTION="WBFS manager for Linux using GTK+"
+HOMEPAGE="http://code.google.com/p/linux-wbfs-manager/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND="dev-libs/glib:2
+ gnome-base/libglade:2.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+if [[ ${PV} == "9999" ]] ; then
+ S=${WORKDIR}/${ECVS_MODULE}
+else
+ S=${WORKDIR}/${PN}
+fi
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ subversion_src_unpack
+ else
+ default
+ fi
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin wbfs_gtk
+ dodoc README
+}
diff --git a/games-util/linux-wbfs-manager/metadata.xml b/games-util/linux-wbfs-manager/metadata.xml
new file mode 100644
index 000000000000..509881960887
--- /dev/null
+++ b/games-util/linux-wbfs-manager/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="google-code">linux-wbfs-manager</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/loki_patch/Manifest b/games-util/loki_patch/Manifest
new file mode 100644
index 000000000000..85a01ebe9057
--- /dev/null
+++ b/games-util/loki_patch/Manifest
@@ -0,0 +1,2 @@
+DIST loki_patch-20091105.tar.bz2 331725 SHA256 0a46562a9902719a2876e042c2c23b6343f53c68af502928c108d7f5b7a9e573 SHA512 9db40b1746ecf5603c09be3ddf01bf92cfc6b3d1c35ac7153751e1871840175c538af98c22f458658bcbebac65ccddccc1aee92a88300a243b8e68bda13ca323 WHIRLPOOL a3ba0d86fb818fcc7847bbdacbf56c5934c52c79845c445bb722f40ec33ea1c320d9cbdb9e016a5821967b0afe4a8df1b4178c7038911be40a515bae9ad09f01
+DIST loki_setupdb-20091105.tar.bz2 60725 SHA256 34c4c2079b70f47bb4b2f05411b07107ee0d17654bf1977b6bb7d8841a837bc2 SHA512 ba55b24a6e2b2b6268dec9df8ec0581d852461b5c07ca97a24ebee3e55fe5764dffbbcfdb6b18a80677f2fae1e7701df4fbca0f6af8ef8050c662f5a39daf25d WHIRLPOOL 989d63aeaee52eaff7c96cafb6deb53d77e95db805206a448283e64b522f5ab300a515d171d28436b1992137ef9d8bb42a16fed9247a67de68a1115e3e03cc1d
diff --git a/games-util/loki_patch/files/loki_patch-20091105-build.patch b/games-util/loki_patch/files/loki_patch-20091105-build.patch
new file mode 100644
index 000000000000..8e2b5bbf1557
--- /dev/null
+++ b/games-util/loki_patch/files/loki_patch-20091105-build.patch
@@ -0,0 +1,179 @@
+--- loki_patch/configure.in
++++ loki_patch/configure.in
+@@ -1,4 +1,4 @@
+-AC_INIT(README)
++AC_INIT(loki_patch, 1.0.2)
+
+ dnl Define the release numbers here
+
+@@ -10,13 +10,14 @@
+ AC_CANONICAL_HOST
+ AC_CANONICAL_TARGET
+
++AM_INIT_AUTOMAKE(foreign no-dependencies)
+ AC_PROG_CC
+ AC_PROG_MAKE_SET
+ AC_PROG_INSTALL
+
+ AC_CHECK_HEADERS(unistd.h)
+
+-CFLAGS="-fsigned-char -funroll-loops -Wall -g -O2"
++CFLAGS="$CFLAGS -fsigned-char -Wall"
+
+ case "$target" in
+ *i?86*)
+@@ -32,17 +33,12 @@
+ OS=`uname -s`
+
+ dnl Look for the XML libraries
++PKG_CHECK_MODULES(XML, libxml-2.0)
++AC_SUBST(XML_LIBS)
+
+-AC_PATH_PROG(HAVEXML, xml-config, $PATH)
+-if test ! -z "$HAVEXML"; then
+- XML_CFLAGS=`$HAVEXML --cflags`
+- XML_PREFIX=`$HAVEXML --prefix`
+-
+- CFLAGS="$CFLAGS $XML_CFLAGS"
+- LIBS="$LIBS $XML_PREFIX/lib/libxml.a"
+-else
+- AC_MSG_ERROR([*** xml-config not found. You need a working libxml installation.])
+-fi
++PKG_CHECK_MODULES(XDELTA, xdelta)
++AC_SUBST(XDELTA_CFLAGS)
++AC_SUBST(XDELTA_LIBS)
+
+ SETUPDB_VERSION=1.0.0
+ SETUPDB="`pwd`/../loki_setupdb-$SETUPDB_VERSION"
+@@ -57,14 +53,6 @@
+ SETUPDB=$with_setupdb
+ fi
+
+-dnl Check for correct setupdb installation
+-
+-if test -f $SETUPDB/$ARCH/libsetupdb.a; then
+- AC_MSG_RESULT([SetupDB library found in $SETUPDB/$ARCH])
+-else
+- AC_MSG_ERROR([*** Please compile setupdb first!])
+-fi
+-
+ CFLAGS="$CFLAGS -I$SETUPDB"
+
+ AC_SUBST(SETUPDB)
+--- loki_patch/loki_xdelta.c
++++ loki_patch/loki_xdelta.c
+@@ -49,7 +49,7 @@
+
+ #define LOKI_PATCH
+
+-#include "xdelta_inc/xdelta.h"
++#include <xdelta.h>
+
+ static HandleFuncTable xd_handle_table;
+
+--- loki_patch/Makefile.am
++++ loki_patch/Makefile.am
+@@ -0,0 +1,12 @@
++COMMONSRC = load_patch.c size_patch.c print_patch.c \
++ loki_xdelta.c mkdirhier.c log_output.c
++
++bin_PROGRAMS = make_patch loki_patch
++
++make_patch_SOURCES = $(COMMONSRC) make_patch.c tree_patch.c save_patch.c
++
++loki_patch_SOURCES = $(COMMONSRC) loki_patch.c apply_patch.c registry.c
++
++AM_CPPFLAGS = $(XDELTA_CFLAGS)
++
++LDADD = $(top_builddir)/../loki_setupdb/libsetupdb.a $(XDELTA_LIBS) $(XML_LIBS) -lz
+--- loki_setupdb/configure.in
++++ loki_setupdb/configure.in
+@@ -1,4 +1,4 @@
+-AC_INIT
++AC_INIT(setupdb, 1.6.5)
+ AC_CONFIG_HEADER(config.h)
+
+ dnl Define the release numbers here
+@@ -12,8 +12,7 @@
+ PACKAGE_VERSION="$SETUPDB_VERSION_MAJOR.$SETUPDB_VERSION_MINOR.$SETUPDB_VERSION_RELEASE"
+ PACKAGE_STRING="$PACKAGE_NAME v$PACKAGE_VERSION"
+
+-test "x$CFLAGS" = x && CFLAGS="-O2"
+-CFLAGS="$CFLAGS -fsigned-char -Wall -g -I."
++CFLAGS="$CFLAGS -fsigned-char -Wall"
+ REENTRANT="-D_REENTRANT"
+
+ if test -d /usr/codehost/lib; then
+@@ -33,9 +32,11 @@
+ AC_CANONICAL_HOST
+ AC_CANONICAL_TARGET
+
++AM_INIT_AUTOMAKE(foreign no-dependencies)
+ AC_PROG_CC
+ AC_PROG_MAKE_SET
+ AC_PATH_PROGS(AR, [ar gar])
++AC_PROG_RANLIB
+
+ AC_CHECK_HEADERS(unistd.h)
+ AC_CHECK_HEADERS(strings.h)
+@@ -128,7 +129,7 @@
+
+ AC_CHECK_FUNCS(getopt, , GETOPT_C="getopt.c")
+ AC_CHECK_FUNCS(getopt_long, , GETOPT_C="getopt.c")
+-AC_CHECK_LIB(gnugetopt, getopt_long, LIBS="$LIBS $BSTATIC -lgnugetopt"; GETOPT_C="")
++AC_CHECK_LIB(gnugetopt, getopt_long, LIBS="$LIBS -lgnugetopt"; GETOPT_C="")
+
+ AC_SUBST(ARCH)
+ AC_SUBST(STATIC)
+@@ -139,37 +140,8 @@
+
+ dnl Look for the XML libraries
+
+-XMLVER=""
+-AC_ARG_WITH(libxml2,
+-[ --with-libxml2 use libxml2 [default=libxml1]],
+- , with_libxml2=no)
+-if test x$with_libxml2 != xno; then
+- XMLVER="2"
+-fi
+-
+-AC_PATH_PROG(HAVEXML, xml${XMLVER}-config, $PATH)
+-if test ! -z "$HAVEXML"; then
+- XML_CFLAGS=`$HAVEXML --cflags`
+- XML_PREFIX=`$HAVEXML --prefix`
+-
+- if "$HAVEXML" --help|grep libtool-libs > /dev/null; then
+- XML_LIBTOOL=`$HAVEXML --libtool-libs`
+- if test -f "$XML_LIBTOOL"; then
+- . "$XML_LIBTOOL"
+- XML_LIBS="$dependency_libs"
+- else
+- XML_LIBS="-lm"
+- fi
+- elif "$HAVEXML" --libs | grep thread > /dev/null; then
+- XML_LIBS="$PTHREAD -lm"
+- fi
+- EXTRA_LIBS="$EXTRA_LIBS $XML_LIBS"
+-
+- CFLAGS="$CFLAGS $XML_CFLAGS"
+- LIBS="$LIBS $XML_PREFIX/lib$LIBSUFFIX/libxml${XMLVER}.a $BSTATIC $ZLIB $BDYNAMIC $EXTRA_LIBS"
+-else
+- AC_MSG_ERROR([*** xml-config not found. You need a working libxml installation.])
+-fi
++PKG_CHECK_MODULES(XML, libxml-2.0)
++AC_SUBST(XML_CFLAGS)
+
+ AC_ARG_WITH(vendor,
+ [ --with-vendor with specified vendor prefix [default=loki]],
+--- loki_setupdb/Makefile.am
++++ loki_setupdb/Makefile.am
+@@ -0,0 +1,9 @@
++noinst_LIBRARIES = libsetupdb.a
++
++libsetupdb_a_SOURCES = \
++ arch.c brandelf.c convert.c md5.c register.c setupdb.c
++
++libsetupdb_a_CPPFLAGS = \
++ -DSETUPDB_VERSION_MAJOR=$(SETUPDB_VERSION_MAJOR) \
++ -DSETUPDB_VERSION_MINOR=$(SETUPDB_VERSION_MINOR) \
++ $(XML_CFLAGS)
diff --git a/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch b/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch
new file mode 100644
index 000000000000..74ec3dae7568
--- /dev/null
+++ b/games-util/loki_patch/files/loki_patch-20091105-patchdata.patch
@@ -0,0 +1,11 @@
+--- loki_patch/load_patch.c
++++ loki_patch/load_patch.c
+@@ -8,7 +8,7 @@
+ #include "load_patch.h"
+ #include "log_output.h"
+
+-#define BASE "patchdata"
++#define BASE "data"
+
+
+ int load_add_file(FILE *file, int *line_num, const char *dst, loki_patch *patch)
diff --git a/games-util/loki_patch/loki_patch-20091105.ebuild b/games-util/loki_patch/loki_patch-20091105.ebuild
new file mode 100644
index 000000000000..c2020190678a
--- /dev/null
+++ b/games-util/loki_patch/loki_patch-20091105.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="Loki Software binary patch tool"
+HOMEPAGE="http://www.icculus.org/loki_setup/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+ mirror://gentoo/loki_setupdb-${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+RDEPEND="dev-util/xdelta:0
+ dev-libs/libxml2
+ dev-libs/glib:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-patchdata.patch
+ cd loki_setupdb
+ eautoreconf
+ cd "${S}"/${PN}
+ eautoreconf
+}
+
+src_configure() {
+ cd loki_setupdb
+ econf
+ cd "${S}"/${PN}
+ econf
+}
+
+src_compile() {
+ emake -C loki_setupdb
+ emake -C loki_patch
+}
+
+src_install() {
+ cd ${PN}
+ dobin loki_patch make_patch
+ dodoc CHANGES NOTES README TODO
+}
diff --git a/games-util/loki_patch/metadata.xml b/games-util/loki_patch/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/loki_patch/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/lutris/Manifest b/games-util/lutris/Manifest
new file mode 100644
index 000000000000..74fb1ff388f8
--- /dev/null
+++ b/games-util/lutris/Manifest
@@ -0,0 +1 @@
+DIST lutris_0.3.6.3.tar.gz 515606 SHA256 a9061403ef8844b2c1443b1c5f15fe98af224d652d66268b47ae8e215e289058 SHA512 548a3a79ffb1c378d923f404634acc3b5eb1055d087ff212cf8a35b7db56650bf616f3b7374ab9fdf996c8f10d80ab602d35d126ef3bb183b9ce55b36d270e97 WHIRLPOOL 9c6e08908a2462f639a89f05b8eea9c212dba103a9c0492d3bd8bba2d2002d718354b4410e6506c7e88c0b4a2bf930d6d05930d0b27d66de0b66b9526f2c2fac
diff --git a/games-util/lutris/lutris-0.3.6.3.ebuild b/games-util/lutris/lutris-0.3.6.3.ebuild
new file mode 100644
index 000000000000..03916a101512
--- /dev/null
+++ b/games-util/lutris/lutris-0.3.6.3.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite,threads"
+
+inherit distutils-r1 gnome2-utils games
+
+DESCRIPTION="Gaming platform for GNU/Linux"
+HOMEPAGE="http://lutris.net/"
+SRC_URI="http://lutris.net/releases/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ gnome-base/gvfs[http]
+ x11-apps/xrandr
+ x11-apps/xgamma
+ x11-misc/xdg-utils"
+
+# INSTALL contains list of optional deps
+DOCS=( AUTHORS README.rst INSTALL )
+
+S=${WORKDIR}/${PN}
+
+python_install() {
+ distutils-r1_python_install --install-scripts="${GAMES_BINDIR}"
+}
+
+src_prepare() {
+ distutils-r1_src_prepare
+}
+
+src_compile() {
+ distutils-r1_src_compile
+}
+
+src_install() {
+ distutils-r1_src_install
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+ gnome2_schemas_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+ gnome2_schemas_update
+
+ elog "For a list of optional deps (runners), see"
+ elog "/usr/share/doc/${PF}/INSTALL"
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ gnome2_schemas_update
+}
diff --git a/games-util/lutris/metadata.xml b/games-util/lutris/metadata.xml
new file mode 100644
index 000000000000..633db1adc52c
--- /dev/null
+++ b/games-util/lutris/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <longdescription lang="en">
+ Lutris is a gaming platform for GNU/Linux. Its goal is to make
+ gaming on Linux as easy as possible by taking care of installing
+ and setting up the game for the user. The only thing you have to
+ do is play the game. It aims to support every game that is playable
+ on Linux.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">lutris/lutris</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/mcrcon/Manifest b/games-util/mcrcon/Manifest
new file mode 100644
index 000000000000..a03de6d7e7d7
--- /dev/null
+++ b/games-util/mcrcon/Manifest
@@ -0,0 +1 @@
+DIST mcrcon-0.0.5-src.zip 9748 SHA256 14cdbc00d5e2c4e877ea82fef3aeb94c2e258b3539c47a7f2b015cab12f98a74 SHA512 590da8007d630a9ff5332b5fda9e2498e949b4085e16fd00a4b1f693251980bc2d91736ea8ca7c649ee34b28484d165c8b5f45b1830e9fb661bec3a10af080d2 WHIRLPOOL 5cfb116cdf7c4a600f7cc3475e868081ea4674807edc360e87c27af7777a3423be1763a743d0d655039b4a8b1f0206fa829ecb1adbc9504a68976204b01091f7
diff --git a/games-util/mcrcon/mcrcon-0.0.5.ebuild b/games-util/mcrcon/mcrcon-0.0.5.ebuild
new file mode 100644
index 000000000000..928377663bd9
--- /dev/null
+++ b/games-util/mcrcon/mcrcon-0.0.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs games
+
+DESCRIPTION="Remote connection client for Minecraft servers"
+HOMEPAGE="http://sourceforge.net/projects/mcrcon/"
+SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip"
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+S="${WORKDIR}"
+
+src_compile() {
+ # Flags taken from COMPILING.txt.
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -std=gnu11 -pedantic -Wall -Wextra -o "${PN}" "${PN}.c" || die
+}
+
+src_install() {
+ dogamesbin "${PN}"
+ dodoc README.txt
+}
diff --git a/games-util/mcrcon/metadata.xml b/games-util/mcrcon/metadata.xml
new file mode 100644
index 000000000000..248f1ffbb028
--- /dev/null
+++ b/games-util/mcrcon/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
+ </maintainer>
+ <longdescription>mcrcon is an IPv6 compliant Minecraft rcon client with Bukkit coloring support. It is well suited for remote administration and to be used as part of automated server maintenance scripts. Does not trigger the "IO: Broken pipe" or "IO: Connection reset" spam bug on the server side.</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">mcrcon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/metadata.xml b/games-util/metadata.xml
new file mode 100644
index 000000000000..e3106a742d7d
--- /dev/null
+++ b/games-util/metadata.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The games-util category contains various game-related utilities.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie games-util enthält verschiede Tools rund um Spiele.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría games-util contiene varias utilidades relacionadas con
+ juegos.
+ </longdescription>
+ <longdescription lang="ja">
+ games-utilカテゴリーにはゲームに関連した様々なユーティリティが含まれています。
+ </longdescription>
+ <longdescription lang="nl">
+ De games-util categorie bevat hulpmiddelen voor bepaalde spellen.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm games-util chứa các tiện ích linh tinh liên quan đến các trò chơi.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria games-util contiene varie utilità per i giochi.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria games-util contém vários utilitários relacionados a
+ jogos.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria games-util zawiera narządzia związane z grami.
+ </longdescription>
+</catmetadata>
+
diff --git a/games-util/nml/Manifest b/games-util/nml/Manifest
new file mode 100644
index 000000000000..4f225e14669b
--- /dev/null
+++ b/games-util/nml/Manifest
@@ -0,0 +1 @@
+DIST nml-0.4.1.tar.gz 377419 SHA256 f53c06a209655407a8e9604f15bb30f137c20b3754ceb9449b4904a1956d0ae0 SHA512 3ac1b3c716b62975261fc55d5a70eba1616d65a4e68e0520da63d6be4a85646dce7fc5f17b9ae896eb8e232d756f9604b9dbc020a76020f5cd73b0419e11f006 WHIRLPOOL c122ad3301f9f5e4f4cba85c776675e66984b82123db81a97d79d3e266231afebc611d8203f9a532a23b9c485595031aa9c1b1e6f3987d67118d85b4cce49cf0
diff --git a/games-util/nml/metadata.xml b/games-util/nml/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/nml/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/nml/nml-0.4.1.ebuild b/games-util/nml/nml-0.4.1.ebuild
new file mode 100644
index 000000000000..edf6834a4158
--- /dev/null
+++ b/games-util/nml/nml-0.4.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{3_3,3_4} )
+inherit distutils-r1
+
+DESCRIPTION="Compiler of NML files into grf/nfo files"
+HOMEPAGE="http://dev.openttdcoop.org/projects/nml"
+SRC_URI="http://bundles.openttdcoop.org/nml/releases/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc x86"
+
+RDEPEND="dev-python/pillow[zlib,${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+
+DOCS=( docs/{changelog,readme}.txt )
+
+src_install() {
+ distutils-r1_src_install
+ doman docs/nmlc.1
+}
diff --git a/games-util/pyfa/Manifest b/games-util/pyfa/Manifest
new file mode 100644
index 000000000000..37684441c58c
--- /dev/null
+++ b/games-util/pyfa/Manifest
@@ -0,0 +1 @@
+DIST pyfa-1.12.0.tar.gz 5898063 SHA256 d22f725efee6cd48a30ccc16a04e913afa1a7e9e89a2004ef8ca12263663ae87 SHA512 c7cda257c0ebffee113df713b8e4a2578fc46ec4493a13341c3907cd8de99c19f4cb1dbae4fe4365134c9ebced618efee2614cb57889a50330d37cf5996ec602 WHIRLPOOL eaf0bc3907b0f32feb601319ca8630e18e8eababb8d3623e56ee3fdc45dfc30946c817e2040e10f0f0e13093672b4faf0e5893088a125bb056d14dd006d623f6
diff --git a/games-util/pyfa/files/configforced.py b/games-util/pyfa/files/configforced.py
new file mode 100644
index 000000000000..a8008c217eda
--- /dev/null
+++ b/games-util/pyfa/files/configforced.py
@@ -0,0 +1,4 @@
+# Gentoo-specific settings
+pyfaPath = u'%%SITEDIR%%/pyfa'
+staticPath = u'%%EPREFIX%%/usr/share/pyfa/staticdata'
+gameDB = staticPath + "/eve.db"
diff --git a/games-util/pyfa/files/pyfa-1.1.11-import-pyfa.patch b/games-util/pyfa/files/pyfa-1.1.11-import-pyfa.patch
new file mode 100644
index 000000000000..8269080038f9
--- /dev/null
+++ b/games-util/pyfa/files/pyfa-1.1.11-import-pyfa.patch
@@ -0,0 +1,28 @@
+From f301dcd0df741514e889fc234811cd4770dca6c7 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Wed, 5 Dec 2012 00:48:12 -0500
+Subject: [PATCH] Append $(python_get_sitedir)/pyfa to import path
+
+Ensures that pyfa's import statements continue to work for systemwide
+installation.
+---
+ pyfa.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/pyfa.py b/pyfa.py
+index 6992aaf..d66cb70 100755
+--- a/pyfa.py
++++ b/pyfa.py
+@@ -63,6 +63,9 @@ if __name__ == "__main__":
+ parser.add_option("-r", "--root", action="store_true", dest="rootsavedata", help="if you want pyfa to store its data in root folder, use this option", default=False)
+ (options, args) = parser.parse_args()
+
++ import os
++ sys.path.append(os.path.join("%%SITEDIR%%", "pyfa"))
++
+ import config
+ # Configure paths
+ if options.rootsavedata is True:
+--
+1.8.0
+
diff --git a/games-util/pyfa/files/pyfa-1.1.20-staticPath.patch b/games-util/pyfa/files/pyfa-1.1.20-staticPath.patch
new file mode 100644
index 000000000000..cdcc9f90d3e5
--- /dev/null
+++ b/games-util/pyfa/files/pyfa-1.1.20-staticPath.patch
@@ -0,0 +1,27 @@
+From 69660180a59d0d100097dedbc507d4af73267e8d Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Wed, 30 Nov 2011 12:50:53 -0500
+Subject: [PATCH] Make staticPath settable from configforced
+
+---
+ config.py | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/config.py b/config.py
+index e39e0d3..e028c36 100644
+--- a/config.py
++++ b/config.py
+@@ -66,7 +66,9 @@ def defPaths():
+
+ # Static EVE Data from the staticdata repository, should be in the staticdata
+ # directory in our pyfa directory
+- staticPath = os.path.join(pyfaPath, "staticdata")
++ staticPath = getattr(configforced, "staticPath", None)
++ if staticPath is None:
++ staticPath = os.path.join(pyfaPath, "staticdata")
+
+ # The database where we store all the fits etc
+ saveDB = os.path.join(savePath, "saveddata.db")
+--
+1.8.5.3
+
diff --git a/games-util/pyfa/files/pyfa-1.1.8-html-export-path.patch b/games-util/pyfa/files/pyfa-1.1.8-html-export-path.patch
new file mode 100644
index 000000000000..e7614d21aa4d
--- /dev/null
+++ b/games-util/pyfa/files/pyfa-1.1.8-html-export-path.patch
@@ -0,0 +1,33 @@
+From 017938391c5b67327c489a5c3a6fc720d4204609 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Mon, 16 Jul 2012 05:43:38 -0400
+Subject: [PATCH] Export fits to home directory, not python sitedir
+
+---
+ service/settings.py | 3 ++-
+ 1 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/service/settings.py b/service/settings.py
+index 8f6e3a8..5ac386d 100644
+--- a/service/settings.py
++++ b/service/settings.py
+@@ -21,6 +21,7 @@ import cPickle
+ import os.path
+ import config
+ import urllib2
++import sys
+
+ class SettingsProvider():
+ BASE_PATH = os.path.join(config.savePath, "settings")
+@@ -199,7 +200,7 @@ class HTMLExportSettings():
+ return cls._instance
+
+ def __init__(self):
+- serviceHTMLExportDefaultSettings = {"enabled": False, "path": config.pyfaPath + os.sep + 'pyfaFits.html' }
++ serviceHTMLExportDefaultSettings = {"enabled": False, "path": unicode(os.path.expanduser(os.path.join('~', 'pyfaFits.html')), sys.getfilesystemencoding()) }
+ self.serviceHTMLExportSettings = SettingsProvider.getInstance().getSettings("pyfaServiceHTMLExportSettings", serviceHTMLExportDefaultSettings)
+
+ def getEnabled(self):
+--
+1.7.8.6
+
diff --git a/games-util/pyfa/files/pyfa.desktop b/games-util/pyfa/files/pyfa.desktop
new file mode 100644
index 000000000000..07f3f0ee22a7
--- /dev/null
+++ b/games-util/pyfa/files/pyfa.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Pyfa
+Comment=Ship fitting application for EVE Online
+Icon=pyfa
+Terminal=false
+Type=Application
+Categories=Game;RolePlaying;
+Exec=pyfa
diff --git a/games-util/pyfa/metadata.xml b/games-util/pyfa/metadata.xml
new file mode 100644
index 000000000000..39be7ad301d4
--- /dev/null
+++ b/games-util/pyfa/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>tetromino@gentoo.org</email>
+ <name>Alexandre Rostovtsev</name>
+ </maintainer>
+ <longdescription lang="en">
+Pyfa is the Python Fitting Assistant, a standalone application for creating
+fittings for the EVE Online SciFi MMORPG. It provides many advanced features
+such as graphs and full calculations of any possible combination of modules,
+fits, etc.
+</longdescription>
+ <use>
+ <flag name="graph">Enable support for graphs</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">DarkFenX/Pyfa</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/pyfa/pyfa-1.12.0.ebuild b/games-util/pyfa/pyfa-1.12.0.ebuild
new file mode 100644
index 000000000000..8f2241416ab5
--- /dev/null
+++ b/games-util/pyfa/pyfa-1.12.0.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite,threads"
+
+inherit eutils gnome2-utils python-r1
+
+DESCRIPTION="Python Fitting Assistant - a ship fitting application for EVE Online"
+HOMEPAGE="https://github.com/DarkFenX/Pyfa"
+
+LICENSE="GPL-3+ LGPL-2.1+ CC-BY-2.5 free-noncomm"
+SLOT="0"
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/DarkFenX/Pyfa.git"
+ inherit git-2
+ KEYWORDS=""
+else
+ SRC_URI="https://github.com/DarkFenX/Pyfa/archive/v${PV}.tar.gz -> pyfa-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+IUSE="+graph"
+
+RDEPEND="dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/wxpython:2.8[${PYTHON_USEDEP}]
+ graph? (
+ dev-python/matplotlib[wxwidgets,${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}] )
+ ${PYTHON_DEPS}"
+DEPEND="app-arch/unzip"
+
+S=${WORKDIR}/Pyfa-${PV}
+
+src_prepare() {
+ # get rid of CRLF line endings introduced in 1.1.10 so patches work
+ edos2unix config.py pyfa.py service/settings.py
+
+ # make staticPath settable from configforced again
+ epatch "${FILESDIR}/${PN}-1.1.20-staticPath.patch"
+
+ # do not try to save exported html to python sitedir
+ epatch "${FILESDIR}/${PN}-1.1.8-html-export-path.patch"
+
+ # fix import path in the main script for systemwide installation
+ epatch "${FILESDIR}/${PN}-1.1.11-import-pyfa.patch"
+ touch __init__.py
+
+ pyfa_make_configforced() {
+ mkdir -p "${BUILD_DIR}" || die
+ sed -e "s:%%SITEDIR%%:$(python_get_sitedir):" \
+ -e "s:%%EPREFIX%%:${EPREFIX}:" \
+ "${FILESDIR}/configforced.py" > "${BUILD_DIR}/configforced.py"
+ sed -e "s:%%SITEDIR%%:$(python_get_sitedir):" \
+ pyfa.py > "${BUILD_DIR}/pyfa"
+ }
+ python_foreach_impl pyfa_make_configforced
+}
+
+src_install() {
+ pyfa_py_install() {
+ local packagedir=$(python_get_sitedir)/${PN}
+ insinto "${packagedir}"
+ doins -r eos gui icons service config*.py __init__.py gpl.txt
+ [[ -e info.py ]] && doins info.py # only in zip releases
+ doins "${BUILD_DIR}/configforced.py"
+ python_doscript "${BUILD_DIR}/pyfa"
+ python_optimize
+ }
+ python_foreach_impl pyfa_py_install
+
+ insinto /usr/share/${PN}
+ doins -r staticdata
+ dodoc README.md
+ insinto /usr/share/icons/hicolor/32x32/apps
+ doins icons/pyfa.png
+ insinto /usr/share/icons/hicolor/64x64/apps
+ newins icons/pyfa64.png pyfa.png
+ domenu "${FILESDIR}/${PN}.desktop"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-util/pyfa/pyfa-9999.ebuild b/games-util/pyfa/pyfa-9999.ebuild
new file mode 100644
index 000000000000..8f2241416ab5
--- /dev/null
+++ b/games-util/pyfa/pyfa-9999.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite,threads"
+
+inherit eutils gnome2-utils python-r1
+
+DESCRIPTION="Python Fitting Assistant - a ship fitting application for EVE Online"
+HOMEPAGE="https://github.com/DarkFenX/Pyfa"
+
+LICENSE="GPL-3+ LGPL-2.1+ CC-BY-2.5 free-noncomm"
+SLOT="0"
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/DarkFenX/Pyfa.git"
+ inherit git-2
+ KEYWORDS=""
+else
+ SRC_URI="https://github.com/DarkFenX/Pyfa/archive/v${PV}.tar.gz -> pyfa-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+IUSE="+graph"
+
+RDEPEND="dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/wxpython:2.8[${PYTHON_USEDEP}]
+ graph? (
+ dev-python/matplotlib[wxwidgets,${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}] )
+ ${PYTHON_DEPS}"
+DEPEND="app-arch/unzip"
+
+S=${WORKDIR}/Pyfa-${PV}
+
+src_prepare() {
+ # get rid of CRLF line endings introduced in 1.1.10 so patches work
+ edos2unix config.py pyfa.py service/settings.py
+
+ # make staticPath settable from configforced again
+ epatch "${FILESDIR}/${PN}-1.1.20-staticPath.patch"
+
+ # do not try to save exported html to python sitedir
+ epatch "${FILESDIR}/${PN}-1.1.8-html-export-path.patch"
+
+ # fix import path in the main script for systemwide installation
+ epatch "${FILESDIR}/${PN}-1.1.11-import-pyfa.patch"
+ touch __init__.py
+
+ pyfa_make_configforced() {
+ mkdir -p "${BUILD_DIR}" || die
+ sed -e "s:%%SITEDIR%%:$(python_get_sitedir):" \
+ -e "s:%%EPREFIX%%:${EPREFIX}:" \
+ "${FILESDIR}/configforced.py" > "${BUILD_DIR}/configforced.py"
+ sed -e "s:%%SITEDIR%%:$(python_get_sitedir):" \
+ pyfa.py > "${BUILD_DIR}/pyfa"
+ }
+ python_foreach_impl pyfa_make_configforced
+}
+
+src_install() {
+ pyfa_py_install() {
+ local packagedir=$(python_get_sitedir)/${PN}
+ insinto "${packagedir}"
+ doins -r eos gui icons service config*.py __init__.py gpl.txt
+ [[ -e info.py ]] && doins info.py # only in zip releases
+ doins "${BUILD_DIR}/configforced.py"
+ python_doscript "${BUILD_DIR}/pyfa"
+ python_optimize
+ }
+ python_foreach_impl pyfa_py_install
+
+ insinto /usr/share/${PN}
+ doins -r staticdata
+ dodoc README.md
+ insinto /usr/share/icons/hicolor/32x32/apps
+ doins icons/pyfa.png
+ insinto /usr/share/icons/hicolor/64x64/apps
+ newins icons/pyfa64.png pyfa.png
+ domenu "${FILESDIR}/${PN}.desktop"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-util/qjoypad/Manifest b/games-util/qjoypad/Manifest
new file mode 100644
index 000000000000..9c78b62e0332
--- /dev/null
+++ b/games-util/qjoypad/Manifest
@@ -0,0 +1 @@
+DIST qjoypad-4.1.0.tar.gz 82306 SHA256 b5aa088827a6f7231e43e45fb942917e3f677ef933109a7b41e13a6b443c95ca SHA512 c14705aa24ead7c358dc2c82284ae5145df4eb041f47d4a017391346719b6330a8a1146e37ebd1f5d25d755385b611965b94b5835f9df0f6b2ef5e6a4ea3bc7b WHIRLPOOL d78ba76196899779e14eae78fcb528ca32f4802670c9f0f95faa6db6186c6924293cecffcf4c2e85f0ef5b5bfb77c568092a5eef650aaae9f70bea996c329793
diff --git a/games-util/qjoypad/files/qjoypad-4.1.0-underlink.patch b/games-util/qjoypad/files/qjoypad-4.1.0-underlink.patch
new file mode 100644
index 000000000000..8fde419546a7
--- /dev/null
+++ b/games-util/qjoypad/files/qjoypad-4.1.0-underlink.patch
@@ -0,0 +1,11 @@
+--- qjoypad.pro.old 2011-06-22 06:54:06.001667461 +0200
++++ qjoypad.pro 2011-06-22 06:56:17.580044446 +0200
+@@ -32,7 +32,7 @@
+
+ TEMPLATE = app
+ INCLUDEPATH += .
+-QMAKE_LIBS += -lXtst
++QMAKE_LIBS += -lXtst -lm -lX11
+
+ # Input
+ HEADERS += axis.h \
diff --git a/games-util/qjoypad/metadata.xml b/games-util/qjoypad/metadata.xml
new file mode 100644
index 000000000000..324067672b76
--- /dev/null
+++ b/games-util/qjoypad/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">qjoypad</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/qjoypad/qjoypad-4.1.0.ebuild b/games-util/qjoypad/qjoypad-4.1.0.ebuild
new file mode 100644
index 000000000000..ef1551520cb2
--- /dev/null
+++ b/games-util/qjoypad/qjoypad-4.1.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils qt4-r2
+
+DESCRIPTION="Translate gamepad/joystick input into key strokes/mouse actions in X"
+HOMEPAGE="http://qjoypad.sourceforge.net/"
+SRC_URI="mirror://sourceforge/qjoypad/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND="
+ x11-libs/libXtst
+ dev-qt/qtgui:4"
+DEPEND="${RDEPEND}
+ x11-proto/inputproto
+ x11-proto/xextproto
+ x11-proto/xproto"
+
+S=${WORKDIR}/${P}/src
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-underlink.patch
+ # fixup the icon tray support (bug #436426)
+ sed -i \
+ -e '/^icons.extra/d' \
+ -e '/^icons/s:/qjoypad::' \
+ -e 's/icon24.png/qjoypad4-24x24.png/' \
+ -e 's/icon64.png/qjoypad4-64x64.png/' \
+ qjoypad.pro || die
+}
+
+src_configure() {
+ eqmake4 qjoypad.pro PREFIX=/usr DEVDIR=/dev/input
+}
+
+src_install() {
+ local i
+ dobin qjoypad
+ dodoc ../README.txt
+ cd ../icons
+ for i in *; do
+ newicon ${i} ${i/gamepad/qjoypad}
+ done
+ make_desktop_entry qjoypad QJoypad ${PN}4-64x64
+}
diff --git a/games-util/qstat/Manifest b/games-util/qstat/Manifest
new file mode 100644
index 000000000000..d5411a66493a
--- /dev/null
+++ b/games-util/qstat/Manifest
@@ -0,0 +1 @@
+DIST qstat-2.11.tar.gz 258335 SHA256 16f0c0f55567597d7f2db5136a0858c56effb4481a2c821a48cd0432ea572150 SHA512 e3ff732c6fc45300eb2f32b3f3e8e1e5f8ee32234535e8d2ca19cf95cf6d4a6de5b6f1e48a5c64315d60a8b388521106b2de9d307f718f6150ad2cf40ba75a22 WHIRLPOOL 51650c2ee07c4e8b8604973babc8854073b13e4afb6502df585d97a4aa0a795e7e5d789d39d1a6a891a252975945ceb98fca713456578c3522a95815872c38a9
diff --git a/games-util/qstat/metadata.xml b/games-util/qstat/metadata.xml
new file mode 100644
index 000000000000..11bdc55aa68f
--- /dev/null
+++ b/games-util/qstat/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">qstat</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/qstat/qstat-2.11.ebuild b/games-util/qstat/qstat-2.11.ebuild
new file mode 100644
index 000000000000..2ec92da55507
--- /dev/null
+++ b/games-util/qstat/qstat-2.11.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DESCRIPTION="Server statics collector supporting many FPS games"
+HOMEPAGE="http://sourceforge.net/projects/qstat/"
+SRC_URI="mirror://sourceforge/qstat/${P}.tar.gz"
+
+LICENSE="Artistic"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm hppa ppc ppc64 x86"
+IUSE="debug"
+
+DEPEND="!sys-cluster/torque"
+
+src_prepare() {
+ # bug #530952
+ sed -i -e 's/strndup/l_strndup/g' qstat.c || die
+}
+
+src_configure() {
+ econf $(use_enable debug)
+}
+
+src_install() {
+ DOCS="CHANGES.txt COMPILE.txt template/README.txt" default
+ dosym qstat /usr/bin/quakestat
+ dohtml template/*.html qstatdoc.html
+}
diff --git a/games-util/ucon64/Manifest b/games-util/ucon64/Manifest
new file mode 100644
index 000000000000..19332b89f822
--- /dev/null
+++ b/games-util/ucon64/Manifest
@@ -0,0 +1 @@
+DIST ucon64-2.0.0-src.tar.gz 1188488 SHA256 62064324a1912387f84ac9d4c521c5d5e7b80f2567e9f61bf0ab3e1d976c0127 SHA512 d021fe6db9530405773e1e209bdfafe41a2bd997f275ca7fb387f9b3d8639f4581c2761cbdce859a1831d6eba9dab4d5df1019605698c6cb6a4695ab091b001c WHIRLPOOL 922d22e3b856df221d66bc506bae73d895fddb7e2a0577a14569c9874d5ddac33bf8e6b91c7c2ec3f8e8fea59b57159085d9be2ddf046a2b96ed31004ffd153d
diff --git a/games-util/ucon64/files/ucon64-2.0.0-ovflfix.patch b/games-util/ucon64/files/ucon64-2.0.0-ovflfix.patch
new file mode 100644
index 000000000000..0a1668f2d09f
--- /dev/null
+++ b/games-util/ucon64/files/ucon64-2.0.0-ovflfix.patch
@@ -0,0 +1,20 @@
+--- backup/lynxit.c.old 2010-11-04 09:07:18.000000000 +0100
++++ backup/lynxit.c 2010-11-04 09:08:17.000000000 +0100
+@@ -561,7 +561,7 @@
+ return FALSE;
+ }
+
+- if (strcmp (header.magic, "LYNX") != 0)
++ if (memcmp (header.magic, "LYNX", sizeof(header.magic)) != 0)
+ {
+ MESSAGE (("ERROR : %s is not a lynx image\n", filename));
+ fclose (fp);
+@@ -682,7 +682,7 @@
+ #endif
+
+ memset (&header, 0, sizeof (st_lnx_header_t));
+- strcpy (header.magic, MAGIC_STRING);
++ memcpy (header.magic, MAGIC_STRING, sizeof(header.magic));
+ strcpy (header.cartname, cartname);
+ strcpy (header.manufname, manufname);
+ header.page_size_bank0 = cart_analyse (BANK0);
diff --git a/games-util/ucon64/files/ucon64-2.0.0-zlib.patch b/games-util/ucon64/files/ucon64-2.0.0-zlib.patch
new file mode 100644
index 000000000000..7a122713d232
--- /dev/null
+++ b/games-util/ucon64/files/ucon64-2.0.0-zlib.patch
@@ -0,0 +1,45 @@
+--- misc/unzip.h.old 2011-09-23 19:53:09.708884325 +0200
++++ misc/unzip.h 2011-09-23 19:54:00.012878355 +0200
+@@ -49,6 +49,10 @@
+ #include "zlib.h"
+ #endif
+
++#ifndef OF
++#define OF(x) x
++#endif
++
+ #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
+ /* like the STRICT of WIN32, we define a pointer that cannot be converted
+ from (void*) without cast */
+--- libdiscmage/unzip.h.old 2011-09-23 19:59:47.319837133 +0200
++++ libdiscmage/unzip.h 2011-09-23 20:00:07.230834769 +0200
+@@ -48,6 +48,9 @@
+ #ifndef _ZLIB_H
+ #include "zlib.h"
+ #endif
++#ifndef OF
++#define OF(x) x
++#endif
+
+ #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
+ /* like the STRICT of WIN32, we define a pointer that cannot be converted
+--- libdiscmage/misc_z.c.old 2012-03-19 08:39:41.975022496 +0100
++++ libdiscmage/misc_z.c 2012-03-19 08:40:13.109803301 +0100
+@@ -27,6 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <sys/stat.h>
++#define Z_SOLO
+ #include <zlib.h>
+ #include "misc_z.h"
+ #include "misc.h"
+--- misc/archive.c.old 2012-03-19 08:41:06.478999810 +0100
++++ misc/archive.c 2012-03-19 08:41:24.134741668 +0100
+@@ -27,6 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <sys/stat.h>
++#define Z_SOLO
+ #include <zlib.h>
+ #ifdef HAVE_BYTESWAP_H
+ #include <byteswap.h>
diff --git a/games-util/ucon64/metadata.xml b/games-util/ucon64/metadata.xml
new file mode 100644
index 000000000000..c52bd2cff4e6
--- /dev/null
+++ b/games-util/ucon64/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">ucon64</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/ucon64/ucon64-2.0.0.ebuild b/games-util/ucon64/ucon64-2.0.0.ebuild
new file mode 100644
index 000000000000..b8922ca2989d
--- /dev/null
+++ b/games-util/ucon64/ucon64-2.0.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="The backup tool and wonderful emulator's Swiss Army knife program"
+HOMEPAGE="http://ucon64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/ucon64/${P}-src.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
+
+S=${WORKDIR}/${P}-src/src
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ovflfix.patch \
+ "${FILESDIR}"/${P}-zlib.patch
+ sed -i \
+ -e "/^CFLAGS/s/-O3/${CFLAGS}/" \
+ -e "/^LDFLAGS/s/-s$/${LDFLAGS}/" \
+ {,libdiscmage/}Makefile.in || die
+}
+
+src_configure() {
+ local myconf
+
+ if [[ ! -e /usr/include/sys/io.h ]] ; then
+ ewarn "Disabling support for parallel port"
+ myconf="${myconf} --disable-parallel"
+ fi
+
+ econf ${myconf}
+}
+
+src_install() {
+ dobin ucon64
+ dolib.so libdiscmage/discmage.so
+ cd ..
+ dohtml -x src -r -A png,jpg *
+}
+
+pkg_postinst() {
+ echo
+ elog "In order to use ${PN}, please create the directory ~/.ucon64/dat"
+ elog "The command to do that is:"
+ elog " mkdir -p ~/.ucon64/dat"
+ elog "Then, you can copy your DAT file collection to ~/.ucon64/dat"
+ elog
+ elog "To enable Discmage support, cp /usr/lib/discmage.so to ~/.ucon64"
+ elog "The command to do that is:"
+ elog " cp /usr/lib/discmage.so ~/.ucon64/"
+ elog
+ elog "Be sure to check ~/.ucon64rc for some options after"
+ elog "you've run uCON64 for the first time"
+}
diff --git a/games-util/uglygs/Manifest b/games-util/uglygs/Manifest
new file mode 100644
index 000000000000..2d3c1abff16b
--- /dev/null
+++ b/games-util/uglygs/Manifest
@@ -0,0 +1 @@
+DIST uglygs-rc11.tar.gz 9066873 SHA256 a304e01e0a570ba5dcac3ac3f9d4ade23b7fbe3e40222f9d9510df14ae8e09f0 SHA512 2a57eb7a4562525c00c69a7874d32fa52d5f12cb2926dffcf4bc8ad74e5847a962c464426b476412bff369963ee40120c3dfc9c0b506606f8a4668bca88d1970 WHIRLPOOL 84cb1923886425dd35366370102660e6bca80c685dcd2ea9bbe94c25c83f9f6da30ea64972a3b35bff92c15b3d42cf418fe0579bbf0615d9a1a7f30b9058aabc
diff --git a/games-util/uglygs/files/0_rc11-uglygs.conf.patch b/games-util/uglygs/files/0_rc11-uglygs.conf.patch
new file mode 100644
index 000000000000..6ee918c70088
--- /dev/null
+++ b/games-util/uglygs/files/0_rc11-uglygs.conf.patch
@@ -0,0 +1,31 @@
+--- uglygs.conf.orig 2003-06-30 11:16:57.000000000 -0400
++++ uglygs.conf 2003-06-30 11:22:50.000000000 -0400
+@@ -12,22 +12,23 @@
+ $runmode = "loop"; # Run mode, Run as a loop or as a cron Executable
+
+ $configfile = "servers.cfg"; # The Result file to be passed to other programs
+-$qstat = "qstat/qstat"; # The modified qstat file
++$qstat = "GENTOO_DIR/qstat"; # The modified qstat file
+ $cat = "/bin/cat"; # The cat file location
+-$data = "./data"; # Data Directory
+-$tmp = "./tmp"; # Temp Directory
++$data = "GENTOO_DIR/data"; # Data Directory
++$tmp = "GENTOO_DIR/tmp"; # Temp Directory
+ $template = "default"; # Template Directory
++$templates = "GENTOO_DIR/templates"; # Template base directory
+ $staticcfgfile = "$data/servers.static"; # A Static output file to append to final output
+
+ $refresh = "180"; # # If loop is on what is your update rate in sec
+
+ $serverquery = "n"; # Do u want Server Query output y or n
+-$serverqueryfile = "/var/www/html/servers.cfg"; # The output file for server query
++$serverqueryfile = "/home/httpd/htdocs/servers.cfg"; # The output file for server query
+
+ $html = "n"; # Do you want HTML output
+ $htmlgame="l"; # Game List Sort Order p=by-ping, g=by-game, i=by-IP-address, h=by-hostname, n=by-#-players, l=by-list-order
+ $htmlplayer="F"; # Player List Sort Order P=by-ping, F=by-frags, T=by-team
+-$htmldir = "/var/www/html/uglygs"; # The html output Directory
++$htmldir = "/home/httpd/htdocs/uglygs"; # The html output Directory
+ $htmlfile = "servers"; # The html output file
+ $htmlext = "html"; # THe file Ext eg. html, php, pl, asp
+ $htmlalias = "/uglygs"; # The html Directory Alias
diff --git a/games-util/uglygs/files/0_rc11-uglygs.pl.patch b/games-util/uglygs/files/0_rc11-uglygs.pl.patch
new file mode 100644
index 000000000000..8c7f7943c978
--- /dev/null
+++ b/games-util/uglygs/files/0_rc11-uglygs.pl.patch
@@ -0,0 +1,131 @@
+--- uglygs.pl.orig 2003-06-30 11:37:59.000000000 -0400
++++ uglygs.pl 2003-06-30 11:38:30.000000000 -0400
+@@ -8,7 +8,8 @@
+ ########## Contact uglygs@uglypunk.com ##########
+ #########################################################################################################################
+ #########################################################################################################################
+-require 'uglygs.conf';
++$qstatcfg = 'GENTOO_DIR/qstat.cfg';
++require 'GENTOO_DIR/uglygs.conf';
+
+ $VERSION = "rc10";
+
+@@ -23,7 +24,7 @@
+ if (!-f $qstat) { die "Sorry the Qstat file doesn't exist, you may no have compiled it yet"};
+ if (!-d $data) { die "Sorry the data directory doesn't exist, it should be located here: $data"};
+ if (!-d $tmp) { die "Sorry the temp directory doesn't exist, it should be located here: $tmp"};
+-if (!-d "./templates/$template") { die "Sorry the templates/template directory doesnt exist, it should be located here: templates/$template"};
++if (!-d "$templates/$template") { die "Sorry the templates/template directory doesnt exist, it should be located here: $templates/$template"};
+
+ if ($html eq "y"){
+ if (!-f $rrdtool) { die "Sorry the rrdtool file doesn't exist, Please install RRDTOOL"};
+@@ -88,7 +89,7 @@
+ $timemonth = $time - 2592000;
+ $timeyear = $time - 31536000;
+ system(`rm $tmp/*.tmp`);
+-require "templates/$template/graphs.conf";
++require "$templates/$template/graphs.conf";
+
+
+ ################################# Seach everything VERY MESSY #########################
+@@ -96,7 +97,7 @@
+ if ($doscan eq "y"){
+
+
+- open(QSTAT, "|$qstat -cfg qstat/qstat.cfg -maxsim 60 -timeout 8 -Ts ./templates/qstat $qstatcom $addports >> $tmp/serversannounce.tmp" );
++ open(QSTAT, "|$qstat -cfg $qstatcfg -maxsim 60 -timeout 8 -Ts $templates/qstat $qstatcom $addports >> $tmp/serversannounce.tmp" );
+ close(QSTAT);
+
+ if (-s "$tmp/serversannounce.tmp"){
+@@ -121,7 +122,7 @@
+ $defport = $tabledata[2];
+ $defport =~ s/\n//;
+ if ($tabledata[0] eq "Q3S") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -q3s $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -q3s $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+ if ($qstatoutput =~m/version=Wolf /) {
+@@ -172,7 +173,7 @@
+
+ ############################# SERVER QUERY PROCESSING ###############################
+
+-system( "$qstat -cfg qstat/qstat.cfg -maxsim 60 -timeout 8 -Ts ./templates/sqdata -of $tmp/sqservers.tmp -f $configfile" );
++system( "$qstat -cfg $qstatcfg -maxsim 60 -timeout 8 -Ts $templates/sqdata -of $tmp/sqservers.tmp -f $configfile" );
+
+ open (PROCESS, "< $tmp/sqservers.tmp");
+ @name = <PROCESS>;
+@@ -194,7 +195,7 @@
+ $defport = $tabledata[2];
+ $defport =~ s/\n//;
+ if ($tabledata[0] eq "GPS") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -gps $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -gps $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+
+@@ -206,7 +207,7 @@
+ close(QSTAT);
+
+ } elsif ($tabledata[0] eq "RWS") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -rws $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -rws $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+ if ($qstatoutput =~m/protocol=17,/) {
+@@ -218,7 +219,7 @@
+
+
+ } elsif ($tabledata[0] eq "RGS") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -rgs $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -rgs $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+
+@@ -231,7 +232,7 @@
+ close(QSTAT);
+
+ } elsif ($tabledata[0] eq "SMS") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -sms $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -sms $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+
+@@ -247,7 +248,7 @@
+
+
+ } elsif ($tabledata[0] eq "GOS") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -gos $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -gos $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+
+@@ -261,7 +262,7 @@
+
+
+ } elsif ($tabledata[0] eq "SF2S") {
+- open (QSTAT, "$qstat -cfg qstat/qstat.cfg -nh -R -sf2s $tabledata[1]:$defport|");
++ open (QSTAT, "$qstat -cfg $qstatcfg -nh -R -sf2s $tabledata[1]:$defport|");
+ @qstatoutput = <QSTAT>;
+ $qstatoutput = $qstatoutput[1];
+ if ($qstatoutput =~m/version=SOF2MP V1.02t/) {
+@@ -301,7 +302,7 @@
+
+
+ if ($html eq "y"){
+- open(TOTALOUT, "$qstat -cfg qstat/qstat.cfg -R -sort $htmlgame -maxsim 60 -timeout 4 -Th ./templates/$template/header.html -Tt ./templates/$template/footer.html -Ts ./templates/$template/data.html -f $configfile 2> /dev/null |");
++ open(TOTALOUT, "$qstat -cfg $qstatcfg -R -sort $htmlgame -maxsim 60 -timeout 4 -Th $templates/$template/header.html -Tt $templates/$template/footer.html -Ts $templates/$template/data.html -f $configfile 2> /dev/null |");
+ while( $totalline = <TOTALOUT> ){
+ my @totaldata = split(/ /,$totalline);
+ if ($totaldata[0] eq "<!--" and $totaldata[1] eq "gamedetails"){
+@@ -372,7 +373,7 @@
+ $graph = "$tabledata[0]$tabledata[1]$port";
+
+
+- open(QSTAT, "$qstat -cfg qstat/qstat.cfg -R -P -sort $htmlplayer -maxsim 60 -timeout 4 -Th ./templates/$template/gameheader.html -Tt ./templates/$template/gamefooter.html -Ts ./templates/$template/gamedata.html -Tp ./templates/$template/gameplayer.html -$gametype $tabledata[1]:$port | ");
++ open(QSTAT, "$qstat -cfg $qstatcfg -R -P -sort $htmlplayer -maxsim 60 -timeout 4 -Th $templates/$template/gameheader.html -Tt $templates/$template/gamefooter.html -Ts $templates/$template/gamedata.html -Tp $templates/$template/gameplayer.html -$gametype $tabledata[1]:$port | ");
+ while($serverline = <QSTAT>){
+ my @data = split(/ /,$serverline);
+ if ($data[0] eq "<!--" and $data[1] eq "gamedetails"){
+--- uglygs.pl.orig 2003-06-30 13:56:01.000000000 -0400
++++ uglygs.pl 2003-06-30 13:59:17.000000000 -0400
diff --git a/games-util/uglygs/metadata.xml b/games-util/uglygs/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/uglygs/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/uglygs/uglygs-0_rc11.ebuild b/games-util/uglygs/uglygs-0_rc11.ebuild
new file mode 100644
index 000000000000..e9b18b4c5c5a
--- /dev/null
+++ b/games-util/uglygs/uglygs-0_rc11.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+MY_P=${P/0_/}
+DESCRIPTION="quickly searches the network for game servers"
+HOMEPAGE="http://uglygs.uglypunk.com/"
+SRC_URI="ftp://ftp.uglypunk.com/uglygs/current/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha hppa ppc sparc x86"
+IUSE=""
+
+DEPEND="net-analyzer/rrdtool[graph]
+ dev-lang/perl"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-uglygs.conf.patch
+ sed -i \
+ -e "s:GENTOO_DIR:$(games_get_libdir)/${PN}:" uglygs.conf || die
+ epatch "${FILESDIR}"/${PV}-uglygs.pl.patch
+ sed -i \
+ -e "s:GENTOO_DIR:${GAMES_SYSCONFDIR}:" uglygs.pl || die
+ sed -i \
+ -e "s/strndup/${PN}_strndup/" qstat/qstat.c || die
+}
+
+src_compile() {
+ emake -C qstat CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ insinto "${GAMES_SYSCONFDIR}"
+ doins uglygs.conf qstat/qstat.cfg
+
+ dogamesbin uglygs.pl
+
+ insinto "$(games_get_libdir)"/${PN}
+ doins -r data templates tmp
+ insinto "$(games_get_libdir)"/${PN}/images
+ doins -r images/{avp2,bds,default.gif,hls,j2s,mhs,q3s,rws,sf2s,uns,vcs}
+ dosym bds "$(games_get_libdir)"/${PN}/images/bdl
+ keepdir "$(games_get_libdir)"/${PN}/tmp
+
+ exeinto "$(games_get_libdir)"/${PN}
+ doexe qstat/qstat
+
+ dodoc CHANGES README
+
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ elog "Dont forget to setup ${GAMES_SYSCONFDIR}/uglygs.conf and ${GAMES_SYSCONFDIR}/qstat.cfg"
+}
diff --git a/games-util/umodpack/Manifest b/games-util/umodpack/Manifest
new file mode 100644
index 000000000000..c778b2127390
--- /dev/null
+++ b/games-util/umodpack/Manifest
@@ -0,0 +1 @@
+DIST umodpack-0.5b16-allinone.tar.gz 3605080 SHA256 e4b291c333812efba65277feff45d7da132515a7945780f7df3b127793f9dedd SHA512 3678507c7aec30043f50f5519935e2d5eb7471b5e0692ba8b27c506bdd7a067fdb055e6731a6bffb04bb3008020c889f3486624a1466a77e0eab3e5139003ff0 WHIRLPOOL 8a453246832feefa333ea78a8ee176903ddc538fe489c5cf4fa3c5ee5c2e075dd1b379b69c2b0f88b4a0e64a0d4386dba0b94902fe32aa36ecfb6c893a0882b3
diff --git a/games-util/umodpack/metadata.xml b/games-util/umodpack/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/umodpack/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/umodpack/umodpack-0.5_beta16-r2.ebuild b/games-util/umodpack/umodpack-0.5_beta16-r2.ebuild
new file mode 100644
index 000000000000..117e06b1a253
--- /dev/null
+++ b/games-util/umodpack/umodpack-0.5_beta16-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit perl-module toolchain-funcs
+
+MY_P=${P/_beta/b}
+DESCRIPTION="portable and useful [un]packer for Unreal Tournament's Umod files"
+HOMEPAGE="http://www.oldunreal.com/wiki/index.php?title=UmodPack"
+SRC_URI="mirror://gentoo/${MY_P}-allinone.tar.gz"
+
+LICENSE="Artistic"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="tk"
+
+DEPEND="virtual/perl-IO-Compress
+ dev-perl/Archive-Zip
+ dev-perl/Tie-IxHash
+ tk? ( dev-perl/perl-tk )"
+
+S=${WORKDIR}/${MY_P}
+SRC_TEST="do parallel"
+
+src_prepare() {
+ # remove the stupid perl modules since we already installed em
+ rm -rf {Archive-Zip,Compress-Zlib,Tie-IxHash,Tk}* || die
+}
+
+src_compile() {
+ perl-module_src_compile
+
+ cd umr-0.3 || die
+ emake DEBUG=0 CFLAGS="${CFLAGS}" CC="$(tc-getCC)"
+}
+
+src_install() {
+ mydoc="Changes"
+ perl-module_src_install
+ dobin umod umr-0.3/umr
+ if use tk ; then
+ dobin xumod
+ fi
+}
diff --git a/games-util/uz2unpack/Manifest b/games-util/uz2unpack/Manifest
new file mode 100644
index 000000000000..ac1025ee51f8
--- /dev/null
+++ b/games-util/uz2unpack/Manifest
@@ -0,0 +1 @@
+DIST uz2unpack-0.1.tar.bz2 1483 SHA256 324eaaa114720bb22de2d59f182a87f3f44a60ddb8d49a541ce247deaf80f018 SHA512 b3876a54dfd4729399dc768f9e096aa9eed3af9d7a0a5ad68777159244a7f3f4a7ff113d2da00ca9dba60c731e8abc3b88888aab3c0aa2b934decfee9312654b WHIRLPOOL ebae970fc0198a52b8b99f64039c396b864fc57756108e57f582b356aefcbf00a94ec43aeb0a1d6010aee860891f81bcfa6b0c19dd2f55080856e987f906d230
diff --git a/games-util/uz2unpack/metadata.xml b/games-util/uz2unpack/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/uz2unpack/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/uz2unpack/uz2unpack-0.1.ebuild b/games-util/uz2unpack/uz2unpack-0.1.ebuild
new file mode 100644
index 000000000000..fb54dbae4e52
--- /dev/null
+++ b/games-util/uz2unpack/uz2unpack-0.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="UZ2 Decompressor for UT2003/UT2004"
+HOMEPAGE="http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?42:mss:1013:200406:kikgppboefcimdbadcdo"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+
+DEPEND="sys-libs/zlib"
+
+src_compile() {
+ emake CC="$(tc-getCC)" LDLIBS=-lz ${PN}
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc README
+}
diff --git a/games-util/vispatch/Manifest b/games-util/vispatch/Manifest
new file mode 100644
index 000000000000..eea9b9929121
--- /dev/null
+++ b/games-util/vispatch/Manifest
@@ -0,0 +1 @@
+DIST vispatch-1.4.6.tgz 227850 SHA256 a0707b148a5b225fcf204466395b61fe273643ebfd1242bb61b35e708d8bd5f0 SHA512 0034660c1ba238360cc5b71e846d2117f76af2340fcee2a0a25b42d1e200ec7231796b45d89335bf7e303379d9f5c03f4f0a9b22a1a54da356ac9a41b24abcc1 WHIRLPOOL 08eabb47a90a4bb02c070e50305f78730170d84a6bf7ac7db58c1e5a05ca1952ea1802ccdd40afd51f457d2a3a94108ed9a0e3040fc9739651ae3803f4e46ec0
diff --git a/games-util/vispatch/metadata.xml b/games-util/vispatch/metadata.xml
new file mode 100644
index 000000000000..0bce39bc51e7
--- /dev/null
+++ b/games-util/vispatch/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">vispatch</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/vispatch/vispatch-1.4.6.ebuild b/games-util/vispatch/vispatch-1.4.6.ebuild
new file mode 100644
index 000000000000..fc329eeb8667
--- /dev/null
+++ b/games-util/vispatch/vispatch-1.4.6.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="WaterVIS utility for glquake"
+HOMEPAGE="http://vispatch.sourceforge.net/"
+SRC_URI="mirror://sourceforge/vispatch/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+S=${WORKDIR}/${P}/source
+
+src_prepare() {
+ sed -i \
+ -e '/^CFLAGS/d' \
+ -e '/^LDFLAGS/d' \
+ makefile || die
+ tc-export CC
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc ${PN}.txt
+}
diff --git a/games-util/wiiload/Manifest b/games-util/wiiload/Manifest
new file mode 100644
index 000000000000..42c6bf4225c1
--- /dev/null
+++ b/games-util/wiiload/Manifest
@@ -0,0 +1 @@
+DIST wiiload-0.5.tar.gz 5291 SHA256 49da2326b43d95a5414d2491ba5a28bd5b97fbafecb1f40b79319213460fa912 SHA512 2c13490e5034078fef658ca3f9743be04fd6c870e485aae7be21a80967f2d1f1075fee016bf7945b20004bc5d96d0b3244f8a997c4410299f1f6afca002360e4 WHIRLPOOL d89ce7eb15151924365f15bd8dff8a8c6198be52ca171be24fda91f39e47958e2f22e7a005959b6ee5199df8aef657af6632419fc928bb147f94369ea9b1e6bf
diff --git a/games-util/wiiload/metadata.xml b/games-util/wiiload/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/wiiload/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/wiiload/wiiload-0.5.ebuild b/games-util/wiiload/wiiload-0.5.ebuild
new file mode 100644
index 000000000000..f225227b4c73
--- /dev/null
+++ b/games-util/wiiload/wiiload-0.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="load homebrew apps over the network to your Wii"
+HOMEPAGE="http://wiibrew.org/wiki/Wiiload"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LFLAGS="${LDFLAGS}" || die
+}
+
+src_install() {
+ dobin wiiload
+}
diff --git a/games-util/wit/Manifest b/games-util/wit/Manifest
new file mode 100644
index 000000000000..ef5e17032900
--- /dev/null
+++ b/games-util/wit/Manifest
@@ -0,0 +1,2 @@
+DIST wit-2.30a.tar.xz 716252 SHA256 5a63e554f69462474825c056abbd1411dcd0d6a24e9232a97a6c0d118eebe970 SHA512 177ae16a39b474116925a8b6cdae465ceb3e0a3cac2d3b704703ab59eed0cf380d63ad6617b56248c9030aa5250befebc31f06de1c97b8c1801c90922e8bdc69 WHIRLPOOL c5cd75213c7e25a887593d34a5812f68c9e5d8e5806d76e05201f4a1f6e74e797740c384fd06c6fe225556729a073e00259b44ed1d623313beea51b8bde3661e
+DIST wit-2.31a.tar.xz 717292 SHA256 73c6496f8c7477f5c25aa3bba981b5e98fb58eeb668d3a877a019a1c29c98cad SHA512 69ec679082e6fac2545d0af0ec3899a5d4a68fd10e26d8678bdd6facf3f80b83ea89347f54e2e2f553c91ecc4fa969a64021b003f29c18a4acea4cc1febebfe0 WHIRLPOOL f70c3e429fdc7ee91015f34b43df8328c7134be1f2309c9239d99cbce983022a33cf9e140311fcd7112a540899cdb8ddea97747c6b165c69da713283705824dd
diff --git a/games-util/wit/files/wit-2.30a-makefile.patch b/games-util/wit/files/wit-2.30a-makefile.patch
new file mode 100644
index 000000000000..d705487cd8ba
--- /dev/null
+++ b/games-util/wit/files/wit-2.30a-makefile.patch
@@ -0,0 +1,120 @@
+--- wit-2.30a/Makefile
++++ wit-2.30a/Makefile
+@@ -190,8 +190,8 @@
+ endif
+
+ # lib summary
+-LIB_LIST += libbz2 lzma
+-LIB_OBJECTS += $(LIBBZ2_OBJ) $(LZMA_OBJ)
++LIB_LIST += lzma
++LIB_OBJECTS += $(LZMA_OBJ)
+ RM_FILES += $(foreach l,$(LIB_LIST),src/$(l)/*.{d,o})
+
+
+@@ -273,10 +274,8 @@
+ DEFINES1 += -D_LZMA_PROB32=1 # LZMA option
+ DEFINES = $(strip $(DEFINES1) $(MODE) $(XDEF))
+
+-CFLAGS += -fomit-frame-pointer -fno-strict-aliasing -funroll-loops
+ CFLAGS += -Wall -Wno-parentheses -Wno-unused-function
+-#CFLAGS += -O3 -Isrc/libwbfs -Isrc/lzma -Isrc -I$(UI) -I. -Iwork
+-CFLAGS += -O3 -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork
++CFLAGS += -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork
+ ifeq ($(SYSTEM),mac)
+ CFLAGS += -I/usr/local/include
+ endif
+@@ -291,7 +290,7 @@
+ ifeq ($(HAVE_ZLIB),1)
+ LIBS += -lz
+ endif
+-LIBS += $(XLIBS)
++LIBS += $(XLIBS) -lbz2
+
+ DISTRIB_RM = ./wit-v$(VERSION)-r
+ DISTRIB_BASE = wit-v$(VERSION)-r$(REVISION_NEXT)
+@@ -344,71 +343,60 @@
+ # general rules
+
+ $(ALL_TOOLS_X): %: %.o $(ALL_OBJECTS) $(TOBJ_ALL) Makefile | $(HELPER_TOOLS)
+- @printf "$(LOGFORMAT)" tool "$@" "$(MODE) $(TOPT_$@) $(TOBJ_$@)"
+- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
+ $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) $(TOPT_$@) -o $@
+- @if test -f $@.exe; then $(STRIP) $@.exe; else $(STRIP) $@; fi
+
+- @mkdir -p bin/$(SYSTEM) bin/$(SYSTEM)/debug
+- @if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \
++ mkdir -p bin/$(SYSTEM) bin/$(SYSTEM)/debug
++ if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \
+ then cp -p $@ bin/$(SYSTEM)/debug/; \
+ else cp -p $@ bin/; cp -p $@ bin/$(SYSTEM)/; fi
+
+ #--------------------------
+
+ $(HELPER_TOOLS): %: %.o $(ALL_OBJECTS) $(UI_TABS) Makefile
+- @printf "$(LOGFORMAT)" helper "$@ $(TOBJ_$@)" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
+ $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) -o $@
+
+ #--------------------------
+
+ $(WDF_LINKS): wdf
+- @printf "$(LOGFORMAT)" "link" "wdf -> $@" ""
+- @ln -f wdf "$@"
++ ln -f wdf "$@"
+
+ #--------------------------
+
+ $(UI_OBJECTS): %.o: %.c ui-%.c ui-%.h version.h Makefile
+- @printf "$(LOGFORMAT)" +object "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(C_OBJECTS): %.o: %.c version.h Makefile $(TEXT_FILES)
+- @printf "$(LOGFORMAT)" object "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(ASM_OBJECTS): %.o: %.S Makefile
+- @printf "$(LOGFORMAT)" asm "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(SETUP_FILES): templates.sed $(SETUP_DIR)/$@
+- @printf "$(LOGFORMAT)" create "$@" ""
+- @chmod 775 $(GEN_TEMPLATE)
+- @$(GEN_TEMPLATE) $@
++ chmod 775 $(GEN_TEMPLATE)
++ $(GEN_TEMPLATE) $@
+
+ #--------------------------
+
+ $(TEXT_FILES): $(GEN_TEXT_FILE) $(TEXT_DIR)/$@
+- @printf "$(LOGFORMAT)" text "$@" ""
+- @chmod 775 $(GEN_TEXT_FILE)
+- @$(GEN_TEXT_FILE) $(TEXT_DIR) $@
++ chmod 775 $(GEN_TEXT_FILE)
++ $(GEN_TEXT_FILE) $(TEXT_DIR) $@
+
+ #--------------------------
+
+ $(UI_FILES): gen-ui.c tab-ui.c ui.h $(UI_TABS) | gen-ui
+- @printf "$(LOGFORMAT)" run gen-ui ""
+- @./gen-ui
++ ./gen-ui
+
+ .PHONY : ui
+ ui : gen-ui
+- @printf "$(LOGFORMAT)" run gen-ui ""
+- @./gen-ui
++ ./gen-ui
+
+ #
+ ###############################################################################
diff --git a/games-util/wit/files/wit-2.30a-no-exec-stack.patch b/games-util/wit/files/wit-2.30a-no-exec-stack.patch
new file mode 100644
index 000000000000..db91b45cfcb1
--- /dev/null
+++ b/games-util/wit/files/wit-2.30a-no-exec-stack.patch
@@ -0,0 +1,9 @@
+--- wit-2.30a/src/crypto/ssl-asm.S
++++ wit-2.30a/src/crypto/ssl-asm.S
+@@ -37,3 +37,6 @@
+ #define WIT_INCLUDE_SSL_ASM
+ #include "ssl-asm.h"
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/games-util/wit/files/wit-2.30a-sizeof-pointer-memaccess.patch b/games-util/wit/files/wit-2.30a-sizeof-pointer-memaccess.patch
new file mode 100644
index 000000000000..32ef56f8653c
--- /dev/null
+++ b/games-util/wit/files/wit-2.30a-sizeof-pointer-memaccess.patch
@@ -0,0 +1,31 @@
+--- wit-2.30a/src/lib-file.c
++++ wit-2.30a/src/lib-file.c
+@@ -3510,7 +3510,7 @@
+ DASSERT(fmap);
+ DASSERT(n_elem>0);
+
+- memset(fmap,0,sizeof(fmap));
++ memset(fmap,0,sizeof(*fmap));
+
+ u64 last_off = 0;
+ while ( last_off < file->st.st_size )
+--- wit-2.30a/src/wfuse.c
++++ wit-2.30a/src/wfuse.c
+@@ -340,7 +340,7 @@
+ }
+ ResetWBFS(df->wbfs);
+ FREE(df->wbfs);
+- memset(df,0,sizeof(df));
++ memset(df,0,sizeof(*df));
+ n_dfile--;
+ }
+
+@@ -352,7 +352,7 @@
+
+ if (found_df)
+ {
+- memset(found_df,0,sizeof(found_df));
++ memset(found_df,0,sizeof(*found_df));
+ WBFS_t * wbfs = MALLOC(sizeof(*wbfs));
+ InitializeWBFS(wbfs);
+ enumError err = OpenWBFS(wbfs,source_file,false,true,0);
diff --git a/games-util/wit/metadata.xml b/games-util/wit/metadata.xml
new file mode 100644
index 000000000000..b9f7ddab2bc2
--- /dev/null
+++ b/games-util/wit/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version = '1.0' encoding = 'UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <use>
+ <flag name="fuse">Enable image mount support via fuse</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-util/wit/wit-2.30a.ebuild b/games-util/wit/wit-2.30a.ebuild
new file mode 100644
index 000000000000..b3f9c40ac312
--- /dev/null
+++ b/games-util/wit/wit-2.30a.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A set of command line tools to manipulate Wii/GameCube ISO images and WBFS containers"
+HOMEPAGE="http://wit.wiimm.de/"
+SRC_URI="http://dev.gentoo.org/~radhermit/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse +zlib"
+
+RDEPEND="
+ app-arch/bzip2
+ fuse? ( sys-fs/fuse )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+DOCS="doc/*.txt"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-makefile.patch
+ epatch "${FILESDIR}"/${P}-no-exec-stack.patch
+ epatch "${FILESDIR}"/${P}-sizeof-pointer-memaccess.patch
+}
+
+src_compile() {
+ export NO_FUSE=$(usex fuse 0 1)
+ export NO_ZLIB=$(usex zlib 0 1)
+
+ emake INSTALL_PATH="${D}"/usr CC="$(tc-getCC)"
+ emake doc
+}
diff --git a/games-util/wit/wit-2.31a.ebuild b/games-util/wit/wit-2.31a.ebuild
new file mode 100644
index 000000000000..7ec7ea3c1bb6
--- /dev/null
+++ b/games-util/wit/wit-2.31a.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A set of command line tools to manipulate Wii/GameCube ISO images and WBFS containers"
+HOMEPAGE="http://wit.wiimm.de/"
+SRC_URI="http://dev.gentoo.org/~radhermit/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse +zlib"
+
+RDEPEND="
+ app-arch/bzip2
+ fuse? ( sys-fs/fuse )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+DOCS="doc/*.txt"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.30a-makefile.patch
+ epatch "${FILESDIR}"/${PN}-2.30a-no-exec-stack.patch
+ epatch "${FILESDIR}"/${PN}-2.30a-sizeof-pointer-memaccess.patch
+}
+
+src_compile() {
+ export NO_FUSE=$(usex fuse 0 1)
+ export NO_ZLIB=$(usex zlib 0 1)
+
+ emake INSTALL_PATH="${D}"/usr CC="$(tc-getCC)"
+ emake doc
+}
diff --git a/games-util/wxchtdecoder/Manifest b/games-util/wxchtdecoder/Manifest
new file mode 100644
index 000000000000..b1003ea275c1
--- /dev/null
+++ b/games-util/wxchtdecoder/Manifest
@@ -0,0 +1 @@
+DIST wxchtdecoder-1.5a.tar.bz2 84088 SHA256 8f2c0307ffbc103a70a2566ec56bfc4766714118c4d408b18486b950dc2a209e SHA512 edb606d1b88cedcb725a1dca2c82f4a81ebff5a1b8786a4127505e021b1fc8cc351363d05963a68c7d555f895b3b762fbd34dfc3f26640759619daecce1097df WHIRLPOOL a49ce993e228a8c3c9dfdeb5f0a1e148aecef71cf736d069ef0c3446b443e2f2b28d072511e8b7d4c8cc7fec54f6c061aca4edf849670348a9f15af17e30e3a0
diff --git a/games-util/wxchtdecoder/metadata.xml b/games-util/wxchtdecoder/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/wxchtdecoder/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/wxchtdecoder/wxchtdecoder-1.5a.ebuild b/games-util/wxchtdecoder/wxchtdecoder-1.5a.ebuild
new file mode 100644
index 000000000000..b084ba9eb533
--- /dev/null
+++ b/games-util/wxchtdecoder/wxchtdecoder-1.5a.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+WX_GTK_VER="2.8"
+inherit wxwidgets
+
+DESCRIPTION="A program to decode .CHT files in Snes9x and ZSNES to plain text"
+HOMEPAGE="http://games.technoplaza.net/chtdecoder/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="x11-libs/wxGTK:2.8[X]"
+RDEPEND=${DEPEND}
+
+src_configure() {
+ econf --with-wx-config=${WX_CONFIG}
+}
+
+src_install() {
+ dobin source/wxchtdecoder
+ dodoc docs/wxchtdecoder.txt
+}
diff --git a/games-util/xboxdrv/Manifest b/games-util/xboxdrv/Manifest
new file mode 100644
index 000000000000..4f53fe707bcc
--- /dev/null
+++ b/games-util/xboxdrv/Manifest
@@ -0,0 +1 @@
+DIST xboxdrv-linux-0.8.5.tar.bz2 265805 SHA256 411195c4f5310a1a5f21f015daaf00b277f75da89df710308f8abfcf8f337e78 SHA512 954a3664462dfeff63a455f3dfea4bc14f8c3e07fa9b0c299bb523b4089faad7f8d634511eb66c023bd289adbbf18e96ce26cbcf5b8ffc9bb3088f1afe532601 WHIRLPOOL f47cdbcf40bd237715ff2b55354c6570ebbccd9cd0beb09b91869fa37db247c57019593b317d2acd767044fe92019defa01c9592bb3b63d2283103ff10dae844
diff --git a/games-util/xboxdrv/files/org.seul.Xboxdrv.conf b/games-util/xboxdrv/files/org.seul.Xboxdrv.conf
new file mode 100644
index 000000000000..fc685d6e8e83
--- /dev/null
+++ b/games-util/xboxdrv/files/org.seul.Xboxdrv.conf
@@ -0,0 +1,7 @@
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+ <policy context="default">
+ <allow own="org.seul.Xboxdrv"/>
+ </policy>
+</busconfig>
diff --git a/games-util/xboxdrv/files/xboxdrv-0.8.4-libusbx-1.0.13-fix.patch b/games-util/xboxdrv/files/xboxdrv-0.8.4-libusbx-1.0.13-fix.patch
new file mode 100644
index 000000000000..5b8d2f453ede
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv-0.8.4-libusbx-1.0.13-fix.patch
@@ -0,0 +1,340 @@
+commit 27cdd9c6a994f3059b8ae683adb711169341ffa5
+Author: Ingo Ruhnke <grumbel@gmail.com>
+Date: Wed Dec 19 11:39:31 2012 +0100
+
+ Added additional bookkeeping to USBController to allow clean shutdowns with libusbx
+
+ Fixes #28
+
+--- a/src/firestorm_dual_controller.cpp
++++ b/src/firestorm_dual_controller.cpp
+@@ -99,8 +99,6 @@ FirestormDualController::FirestormDualController(libusb_device* dev, bool is_vsb
+
+ FirestormDualController::~FirestormDualController()
+ {
+- usb_cancel_read();
+- usb_release_interface(0);
+ }
+
+ void
+--- a/src/generic_usb_controller.cpp
++++ b/src/generic_usb_controller.cpp
+@@ -62,8 +62,6 @@ GenericUSBController::GenericUSBController(libusb_device* dev,
+
+ GenericUSBController::~GenericUSBController()
+ {
+- usb_cancel_read();
+- usb_release_interface(m_interface);
+ }
+
+ void
+--- a/src/playstation3_usb_controller.cpp
++++ b/src/playstation3_usb_controller.cpp
+@@ -37,8 +37,6 @@ Playstation3USBController::Playstation3USBController(libusb_device* dev, bool tr
+
+ Playstation3USBController::~Playstation3USBController()
+ {
+- usb_cancel_read();
+- usb_release_interface(0);
+ }
+
+ #define HID_GET_REPORT 0x01
+--- a/src/saitek_p2500_controller.cpp
++++ b/src/saitek_p2500_controller.cpp
+@@ -66,8 +66,6 @@ SaitekP2500Controller::SaitekP2500Controller(libusb_device* dev, bool try_detach
+
+ SaitekP2500Controller::~SaitekP2500Controller()
+ {
+- usb_cancel_read();
+- usb_release_interface(0);
+ }
+
+ void
+--- a/src/usb_controller.cpp
++++ b/src/usb_controller.cpp
+@@ -28,7 +28,8 @@
+ USBController::USBController(libusb_device* dev) :
+ m_dev(dev),
+ m_handle(0),
+- m_read_transfer(),
++ m_transfers(),
++ m_interfaces(),
+ m_usbpath(),
+ m_usbid(),
+ m_name()
+@@ -78,7 +79,29 @@ USBController::USBController(libusb_device* dev) :
+
+ USBController::~USBController()
+ {
+- //log_tmp("~USBController");
++ // cancel all transfers
++ for(std::set<libusb_transfer*>::iterator it = m_transfers.begin(); it != m_transfers.end(); ++it)
++ {
++ libusb_cancel_transfer(*it);
++ }
++
++ // wait for cancel to succeed
++ while (!m_transfers.empty())
++ {
++ int ret = libusb_handle_events(NULL);
++ if (ret != 0)
++ {
++ log_error("libusb_handle_events() failure: " << ret);
++ }
++ }
++
++ // release all claimed interfaces
++ for(std::set<int>::iterator it = m_interfaces.begin(); it != m_interfaces.end(); ++it)
++ {
++ libusb_release_interface(m_handle, *it);
++ }
++
++ // read and write transfers might still be going on and might need to be canceled
+ libusb_close(m_handle);
+ }
+
+@@ -103,23 +126,26 @@ USBController::get_name() const
+ void
+ USBController::usb_submit_read(int endpoint, int len)
+ {
+- assert(!m_read_transfer);
+-
+- m_read_transfer = libusb_alloc_transfer(0);
++ libusb_transfer* transfer = libusb_alloc_transfer(0);
+
+ uint8_t* data = static_cast<uint8_t*>(malloc(sizeof(uint8_t) * len));
+- m_read_transfer->flags |= LIBUSB_TRANSFER_FREE_BUFFER;
+- libusb_fill_interrupt_transfer(m_read_transfer, m_handle,
++ transfer->flags |= LIBUSB_TRANSFER_FREE_BUFFER;
++ libusb_fill_interrupt_transfer(transfer, m_handle,
+ endpoint | LIBUSB_ENDPOINT_IN,
+ data, len,
+ &USBController::on_read_data_wrap, this,
+ 0); // timeout
+ int ret;
+- ret = libusb_submit_transfer(m_read_transfer);
++ ret = libusb_submit_transfer(transfer);
+ if (ret != LIBUSB_SUCCESS)
+ {
++ libusb_free_transfer(transfer);
+ raise_exception(std::runtime_error, "libusb_submit_transfer(): " << usb_strerror(ret));
+ }
++ else
++ {
++ m_transfers.insert(transfer);
++ }
+ }
+
+ void
+@@ -127,7 +153,6 @@ USBController::usb_write(int endpoint, uint8_t* data_in, int len)
+ {
+ libusb_transfer* transfer = libusb_alloc_transfer(0);
+ transfer->flags |= LIBUSB_TRANSFER_FREE_BUFFER;
+- transfer->flags |= LIBUSB_TRANSFER_FREE_TRANSFER;
+
+ // copy data into a newly allocated buffer
+ uint8_t* data = static_cast<uint8_t*>(malloc(sizeof(uint8_t) * len));
+@@ -143,8 +168,13 @@ USBController::usb_write(int endpoint, uint8_t* data_in, int len)
+ ret = libusb_submit_transfer(transfer);
+ if (ret != LIBUSB_SUCCESS)
+ {
++ libusb_free_transfer(transfer);
+ raise_exception(std::runtime_error, "libusb_submit_transfer(): " << usb_strerror(ret));
+ }
++ else
++ {
++ m_transfers.insert(transfer);
++ }
+ }
+
+ void
+@@ -154,7 +184,6 @@ USBController::usb_control(uint8_t bmRequestType, uint8_t bRequest,
+ {
+ libusb_transfer* transfer = libusb_alloc_transfer(0);
+ transfer->flags |= LIBUSB_TRANSFER_FREE_BUFFER;
+- transfer->flags |= LIBUSB_TRANSFER_FREE_TRANSFER;
+
+ // create and fill control buffer
+ uint8_t* data = static_cast<uint8_t*>(malloc(wLength + 8));
+@@ -168,14 +197,22 @@ USBController::usb_control(uint8_t bmRequestType, uint8_t bRequest,
+ ret = libusb_submit_transfer(transfer);
+ if (ret != LIBUSB_SUCCESS)
+ {
++ libusb_free_transfer(transfer);
+ raise_exception(std::runtime_error, "libusb_submit_transfer(): " << usb_strerror(ret));
+ }
++ else
++ {
++ m_transfers.insert(transfer);
++ }
+ }
+
+ void
+ USBController::on_control(libusb_transfer* transfer)
+ {
+ log_debug("control transfer");
++
++ m_transfers.erase(transfer);
++ libusb_free_transfer(transfer);
+ }
+
+ void
+@@ -183,19 +220,12 @@ USBController::on_write_data(libusb_transfer* transfer)
+ {
+ if (transfer->status != LIBUSB_TRANSFER_COMPLETED)
+ {
+- log_error("USB write failure: " << transfer->length << ": " << usb_transfer_strerror(transfer->status));
++ if (transfer->status != LIBUSB_TRANSFER_CANCELLED)
++ log_error("USB write failure: " << transfer->length << ": " << usb_transfer_strerror(transfer->status));
+ }
+-}
+
+-void
+-USBController::usb_cancel_read()
+-{
+- if (m_read_transfer)
+- {
+- libusb_cancel_transfer(m_read_transfer);
+- libusb_free_transfer(m_read_transfer);
+- m_read_transfer = 0;
+- }
++ m_transfers.erase(transfer);
++ libusb_free_transfer(transfer);
+ }
+
+ void
+@@ -203,31 +233,30 @@ USBController::on_read_data(libusb_transfer* transfer)
+ {
+ assert(transfer);
+
+- // FIXME: check for LIBUSB_TRANSFER_COMPLETED
+-
+- // process data
+- XboxGenericMsg msg;
+- if (parse(transfer->buffer, transfer->actual_length, &msg))
++ if (transfer->status != LIBUSB_TRANSFER_COMPLETED)
+ {
+- submit_msg(msg);
+- }
++ if (transfer->status != LIBUSB_TRANSFER_CANCELLED)
++ log_error("USB read failure: " << transfer->length << ": " << usb_transfer_strerror(transfer->status));
+
+- if (false) // cleanup
+- {
++ m_transfers.erase(transfer);
+ libusb_free_transfer(transfer);
+ }
+- else // resubmit
+- {
++ else
++ {
++ // process data
++ XboxGenericMsg msg;
++ if (parse(transfer->buffer, transfer->actual_length, &msg))
++ {
++ submit_msg(msg);
++ }
++
+ int ret;
+ ret = libusb_submit_transfer(transfer);
+ if (ret != LIBUSB_SUCCESS) // could also check for LIBUSB_ERROR_NO_DEVICE
+ {
+ log_error("failed to resubmit USB transfer: " << usb_strerror(ret));
+
+- assert(m_read_transfer == transfer);
+-
+ libusb_free_transfer(transfer);
+- m_read_transfer = 0;
+
+ send_disconnect();
+ }
+@@ -237,6 +266,11 @@ USBController::on_read_data(libusb_transfer* transfer)
+ void
+ USBController::usb_claim_interface(int ifnum, bool try_detach)
+ {
++ // keep track of all claimed interfaces so they can be released in
++ // the destructor
++ assert(m_interfaces.find(ifnum) == m_interfaces.end());
++ m_interfaces.insert(ifnum);
++
+ int err = usb_claim_n_detach_interface(m_handle, ifnum, try_detach);
+ if (err != 0)
+ {
+@@ -247,13 +281,6 @@ USBController::usb_claim_interface(int ifnum, bool try_detach)
+ }
+ }
+
+-void
+-USBController::usb_release_interface(int ifnum)
+-{
+- // should be called before closing the device handle
+- libusb_release_interface(m_handle, ifnum);
+-}
+-
+ int
+ USBController::usb_find_ep(int direction, uint8_t if_class, uint8_t if_subclass, uint8_t if_protocol)
+ {
+--- a/src/usb_controller.hpp
++++ b/src/usb_controller.hpp
+@@ -22,6 +22,7 @@
+ #include <libusb.h>
+ #include <string>
+ #include <memory>
++#include <set>
+
+ #include "controller.hpp"
+
+@@ -31,7 +32,8 @@ protected:
+ libusb_device* m_dev;
+ libusb_device_handle* m_handle;
+
+- libusb_transfer* m_read_transfer;
++ std::set<libusb_transfer*> m_transfers;
++ std::set<int> m_interfaces;
+
+ std::string m_usbpath;
+ std::string m_usbid;
+@@ -50,10 +52,8 @@ public:
+ int usb_find_ep(int direction, uint8_t if_class, uint8_t if_subclass, uint8_t if_protocol);
+
+ void usb_claim_interface(int ifnum, bool try_detach);
+- void usb_release_interface(int ifnum);
+
+ void usb_submit_read(int endpoint, int len);
+- void usb_cancel_read();
+
+ void usb_write(int endpoint, uint8_t* data, int len);
+ void usb_control(uint8_t bmRequestType, uint8_t bRequest,
+--- a/src/xbox360_controller.cpp
++++ b/src/xbox360_controller.cpp
+@@ -86,8 +86,6 @@ Xbox360Controller::Xbox360Controller(libusb_device* dev,
+
+ Xbox360Controller::~Xbox360Controller()
+ {
+- usb_cancel_read();
+- usb_release_interface(0);
+ }
+
+ void
+--- a/src/xbox360_wireless_controller.cpp
++++ b/src/xbox360_wireless_controller.cpp
+@@ -50,8 +50,6 @@ Xbox360WirelessController::Xbox360WirelessController(libusb_device* dev, int con
+
+ Xbox360WirelessController::~Xbox360WirelessController()
+ {
+- usb_cancel_read();
+- usb_release_interface(m_interface);
+ }
+
+ void
+--- a/src/xbox_controller.cpp
++++ b/src/xbox_controller.cpp
+@@ -41,8 +41,6 @@ XboxController::XboxController(libusb_device* dev, bool try_detach) :
+
+ XboxController::~XboxController()
+ {
+- usb_cancel_read();
+- usb_release_interface(0);
+ }
+
+ void
diff --git a/games-util/xboxdrv/files/xboxdrv-0.8.5-scons.patch b/games-util/xboxdrv/files/xboxdrv-0.8.5-scons.patch
new file mode 100644
index 000000000000..cb81f6d51470
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv-0.8.5-scons.patch
@@ -0,0 +1,13 @@
+http://dev.gentoo.org/~vapier/scons-blows.txt
+
+--- SConstruct
++++ SConstruct
+@@ -85,6 +85,8 @@
+ opts.Add('LINKFLAGS', 'Linker Compiler flags')
+ opts.Add('CC', 'C Compiler')
+ opts.Add('CXX', 'C++ Compiler')
++opts.Add('AR', 'Archiver')
++opts.Add('RANLIB', 'Archive indexer')
+ opts.Add('BUILD', 'Build type: release, custom, development')
+
+ opts.Update(env)
diff --git a/games-util/xboxdrv/files/xboxdrv.confd b/games-util/xboxdrv/files/xboxdrv.confd
new file mode 100644
index 000000000000..c42cc9d1ec74
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv.confd
@@ -0,0 +1,6 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+XBOXDRV_OPTS=""
+#XBOXDRV_OPTS="${XBOXDRV_OPTS} --next-controller --config /etc/xboxdrv/controller.ini"
diff --git a/games-util/xboxdrv/files/xboxdrv.initd b/games-util/xboxdrv/files/xboxdrv.initd
new file mode 100644
index 000000000000..d0cb58bd9025
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv.initd
@@ -0,0 +1,19 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+PIDFILE="/var/run/${SVCNAME}.pid"
+
+start() {
+ ebegin "Starting xboxdrv"
+ start-stop-daemon --start --pidfile "${PIDFILE}" --exec /usr/bin/xboxdrv -- \
+ --daemon --detach --pid-file "${PIDFILE}" ${XBOXDRV_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping xboxdrv"
+ start-stop-daemon --stop --pidfile "${PIDFILE}"
+ eend $?
+}
diff --git a/games-util/xboxdrv/files/xboxdrv.service b/games-util/xboxdrv/files/xboxdrv.service
new file mode 100644
index 000000000000..b0d372696e0a
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Userspace Xbox 360 Controller driver
+BindsTo=sys-subsystem-usb-xbox-controller0.device
+After=sys-subsystem-usb-xbox-controller0.device
+
+[Service]
+BusName=org.seul.Xboxdrv
+ExecStart=/usr/bin/xboxdrv --silent --daemon
+KillSignal=SIGINT
+# xboxdrv can not stop gracefully if controller gets unplugged
+TimeoutStopSec=2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/games-util/xboxdrv/files/xboxdrv.udev-rules b/games-util/xboxdrv/files/xboxdrv.udev-rules
new file mode 100644
index 000000000000..c571b2b5ab02
--- /dev/null
+++ b/games-util/xboxdrv/files/xboxdrv.udev-rules
@@ -0,0 +1,5 @@
+SUBSYSTEM=="usb", ACTION=="add",\
+ ENV{ID_MODEL_FROM_DATABASE}=="Xbox*Controller|Xbox*Controller S",\
+ TAG+="systemd",\
+ ENV{SYSTEMD_ALIAS}="/sys/subsystem/usb/xbox/controller$number",\
+ ENV{SYSTEMD_WANTS}+="xboxdrv.service"
diff --git a/games-util/xboxdrv/metadata.xml b/games-util/xboxdrv/metadata.xml
new file mode 100644
index 000000000000..668ca6c70661
--- /dev/null
+++ b/games-util/xboxdrv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <maintainer>
+ <email>tristan@gentoo.org</email>
+ <name>Tristan Heaven</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/games-util/xboxdrv/xboxdrv-0.8.5-r1.ebuild b/games-util/xboxdrv/xboxdrv-0.8.5-r1.ebuild
new file mode 100644
index 000000000000..1257e8bea9a3
--- /dev/null
+++ b/games-util/xboxdrv/xboxdrv-0.8.5-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit base linux-info scons-utils toolchain-funcs
+
+MY_P=${PN}-linux-${PV}
+DESCRIPTION="Userspace Xbox 360 Controller driver"
+HOMEPAGE="http://pingus.seul.org/~grumbel/xboxdrv/"
+SRC_URI="http://pingus.seul.org/~grumbel/xboxdrv/${MY_P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="dev-libs/boost
+ virtual/udev
+ sys-apps/dbus
+ dev-libs/glib:2
+ virtual/libusb:1
+ x11-libs/libX11"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+CONFIG_CHECK="~INPUT_EVDEV ~INPUT_JOYDEV ~INPUT_UINPUT ~!JOYSTICK_XPAD"
+PATCHES=( "${FILESDIR}"/${P}-scons.patch )
+
+src_compile() {
+ escons \
+ BUILD=custom \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ CXXFLAGS="-Wall ${CXXFLAGS}" \
+ LINKFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin xboxdrv
+ doman doc/xboxdrv.1
+ dodoc AUTHORS NEWS PROTOCOL README TODO
+
+ newinitd "${FILESDIR}"/xboxdrv.initd xboxdrv
+ newconfd "${FILESDIR}"/xboxdrv.confd xboxdrv
+}
diff --git a/games-util/xboxdrv/xboxdrv-0.8.5-r2.ebuild b/games-util/xboxdrv/xboxdrv-0.8.5-r2.ebuild
new file mode 100644
index 000000000000..f03ce60ac124
--- /dev/null
+++ b/games-util/xboxdrv/xboxdrv-0.8.5-r2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit linux-info scons-utils toolchain-funcs systemd udev
+
+MY_P=${PN}-linux-${PV}
+DESCRIPTION="Userspace Xbox 360 Controller driver"
+HOMEPAGE="http://pingus.seul.org/~grumbel/xboxdrv/"
+SRC_URI="http://pingus.seul.org/~grumbel/xboxdrv/${MY_P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/boost
+ dev-libs/dbus-glib:=
+ virtual/libudev:=
+ sys-apps/dbus:=
+ dev-libs/glib:2=
+ virtual/libusb:1=
+ x11-libs/libX11:="
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+CONFIG_CHECK="~INPUT_EVDEV ~INPUT_JOYDEV ~INPUT_UINPUT ~!JOYSTICK_XPAD"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-scons.patch
+}
+
+src_compile() {
+ escons \
+ BUILD=custom \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ CXXFLAGS="-Wall ${CXXFLAGS}" \
+ LINKFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin xboxdrv
+ doman doc/xboxdrv.1
+ dodoc AUTHORS NEWS PROTOCOL README TODO
+
+ newinitd "${FILESDIR}"/xboxdrv.initd xboxdrv
+ newconfd "${FILESDIR}"/xboxdrv.confd xboxdrv
+
+ insinto /etc/dbus-1/system.d/
+ doins "${FILESDIR}/org.seul.Xboxdrv.conf"
+
+ udev_newrules "${FILESDIR}"/xboxdrv.udev-rules 99-xbox-controller.rules
+ systemd_dounit "${FILESDIR}"/xboxdrv.service
+}
+
+pkg_postinst() {
+ udev_reload
+}
diff --git a/games-util/xboxgw/Manifest b/games-util/xboxgw/Manifest
new file mode 100644
index 000000000000..10320c9abb05
--- /dev/null
+++ b/games-util/xboxgw/Manifest
@@ -0,0 +1,2 @@
+DIST hmlibs-1.07-2.i386.tgz 120364 SHA256 945fb8b4e8707db489d4c50c0577ec2e4eab9bbca91175035ba2f6b4583b2abc SHA512 2624c44bee7985586288f3c3e2c27e30fb23735a555635ec5a2813a40a54eb7ae1ec0e6f691d883832ec2790ad88a7f03e15ebbaea464db20e2107635463c96c WHIRLPOOL 43064a41d5d25cd860153a0b3ca1423180d90f0390d4ef3303940b198b8d1513c177f46df7e3de78be5941e21f86848980c0bcc111b455877c809683ce3bf1dc
+DIST xboxgw-1.08-2.tgz 91488 SHA256 17a3ace82d36e6049762cf6a455595cc5e3b45ee3bc7780a96c4c14d84c81335 SHA512 dd4b97fd535e84b4cae34135ab8220399e410a0ca3c73e3fff244ba6ec7f6944f40a7e33c74f3872496cae03fb87dc90e11b7fd4b788ee061d32f86ad36b0617 WHIRLPOOL 1383dfe0229517bf8cf2302a4c0c4d1dc086e523c8214c78f5d211dbb527bc1db0288aa35978d9415773ce0cabdf14e39dc73c044265f7bf445ac9342108a4d1
diff --git a/games-util/xboxgw/metadata.xml b/games-util/xboxgw/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-util/xboxgw/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/xboxgw/xboxgw-1.082.ebuild b/games-util/xboxgw/xboxgw-1.082.ebuild
new file mode 100644
index 000000000000..35e13bbe10ed
--- /dev/null
+++ b/games-util/xboxgw/xboxgw-1.082.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+XBOXGW_P="${PN}-1.08-2"
+HMLIBS_P="hmlibs-1.07-2"
+
+DESCRIPTION="Tunnels XBox system link games over the net"
+HOMEPAGE="http://www.xboxgw.com/"
+SRC_URI="http://www.xboxgw.com/rel/dist2.1/tarballs/i386/${XBOXGW_P}.tgz
+ http://www.xboxgw.com/rel/dist2.1/tarballs/i386/${HMLIBS_P}.i386.tgz"
+
+LICENSE="freedist"
+SLOT="0"
+KEYWORDS="~amd64 x86"
+IUSE=""
+
+QA_PREBUILT="opt/${PN}/lib/libhmdb.so
+ opt/${PN}/lib/libhmsched.so
+ opt/${PN}/lib/libhmcli.so
+ opt/${PN}/lib/libhmsdb.so
+ opt/${PN}/bin/hmdbdump
+ opt/${PN}/bin/xboxgw
+ opt/${PN}/bin/xbifsetup"
+
+S=${WORKDIR}
+
+src_install() {
+ into /opt/${PN}
+
+ cd "${WORKDIR}/${HMLIBS_P}"
+ dolib.so *.so
+ dobin hmdbdump
+ insinto /usr/include/hmlibs
+ doins *.h
+
+ cd "${WORKDIR}/${XBOXGW_P}"
+ dobin xboxgw xbifsetup
+ dodoc *.txt
+
+ if use amd64 ; then
+ mv "${D}"/opt/${PN}/lib64 "${D}"/opt/${PN}/lib || die
+ fi
+}
diff --git a/games-util/xgame-gtk2/Manifest b/games-util/xgame-gtk2/Manifest
new file mode 100644
index 000000000000..1aab4fa21639
--- /dev/null
+++ b/games-util/xgame-gtk2/Manifest
@@ -0,0 +1 @@
+DIST xgame-gtk2-2.0.2.tar.gz 6055 SHA256 b8178d71fda27088d84d7a03711d370611792655ad5f1ffd432527ff47ca204f SHA512 708a831f78866356e6fb5d2aa0926562eaf0a247e88b7971505f41aaa71ad7d30d5f4d2fefc57030fe1e27138a58799e7396da2026a01bd130febd8e5170c25b WHIRLPOOL 6b73f5e88797d9fa2b07a3c29a8d3e0670da9edd7c158db40d910ceca245f0188c6516194fb79553c510d580c4dc0b5c307731a17c6342ba0507d5d5ad1760e8
diff --git a/games-util/xgame-gtk2/metadata.xml b/games-util/xgame-gtk2/metadata.xml
new file mode 100644
index 000000000000..cad5a2aa1773
--- /dev/null
+++ b/games-util/xgame-gtk2/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/xgame-gtk2/xgame-gtk2-2.0.2.ebuild b/games-util/xgame-gtk2/xgame-gtk2-2.0.2.ebuild
new file mode 100644
index 000000000000..7df990d54ab3
--- /dev/null
+++ b/games-util/xgame-gtk2/xgame-gtk2-2.0.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit games
+
+DESCRIPTION="Run games in a separate X session"
+HOMEPAGE="http://xgame.tlhiv.com/"
+SRC_URI="http://downloads.tlhiv.com/xgame/${PF}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND="dev-lang/perl
+ >=dev-perl/gtk2-perl-1.040"
+
+src_install() {
+ dogamesbin xgame-gtk2
+ dodoc README
+ prepgamesdirs
+}
diff --git a/games-util/xgame/Manifest b/games-util/xgame/Manifest
new file mode 100644
index 000000000000..166e9e22e848
--- /dev/null
+++ b/games-util/xgame/Manifest
@@ -0,0 +1 @@
+DIST xgame-1.7.1.tar.gz 4657 SHA256 d02024a3934bcce53d07ffb29d62c02156783af50da2e8336eea2f4748dd7f49 SHA512 1efe88dcac3ce6290220f60d664b3afa0e76901b9708502d954a3edca2ee73b3686af7639213067b2164990313db7eee66a404b9184440891a9f44a294008738 WHIRLPOOL af60bf8657c65be806e9be575d25ba5abc850ba5f157769741103a44fe05f1bbc1c9d33a85d8da7b5d36aaf9e7fd368ebab66fe960bf276c1d76074ec9e0a230
diff --git a/games-util/xgame/metadata.xml b/games-util/xgame/metadata.xml
new file mode 100644
index 000000000000..cad5a2aa1773
--- /dev/null
+++ b/games-util/xgame/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+</pkgmetadata>
diff --git a/games-util/xgame/xgame-1.7.1.ebuild b/games-util/xgame/xgame-1.7.1.ebuild
new file mode 100644
index 000000000000..b2687a5f93c5
--- /dev/null
+++ b/games-util/xgame/xgame-1.7.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit games
+
+DESCRIPTION="Run games in a separate X session"
+HOMEPAGE="http://xgame.tlhiv.com/"
+SRC_URI="http://downloads.tlhiv.com/xgame/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND=
+RDEPEND="dev-lang/perl"
+
+src_install() {
+ dogamesbin xgame
+ dodoc README
+ prepgamesdirs
+}
diff --git a/games-util/xgamer/Manifest b/games-util/xgamer/Manifest
new file mode 100644
index 000000000000..0ee0841116e9
--- /dev/null
+++ b/games-util/xgamer/Manifest
@@ -0,0 +1 @@
+DIST xgamer-0.6.2.tar.gz 43222 SHA256 2fdf43166e2dc7806788fe0d3e3ab95581c0e6d1074dae1794960dbf8c494f08 SHA512 caffebe5d4f07f532366e3a5f6ff717251f254d012bb5c33c431538720a2fa301ab8b9cf277771659655cac6fbe2734534146c224ef881486f7dfc51ac992315 WHIRLPOOL 8d0d2a7d392d7f63a3a2a6465fecdedcf18abd1abfbbb14db040ba30177cd612aca152d281c6c23160bbd7434b15e00b0ebc40c0f13d8f9621775a0d3003dfd5
diff --git a/games-util/xgamer/files/xgamer-0.6.2-desktopfile.patch b/games-util/xgamer/files/xgamer-0.6.2-desktopfile.patch
new file mode 100644
index 000000000000..3639de18e5e1
--- /dev/null
+++ b/games-util/xgamer/files/xgamer-0.6.2-desktopfile.patch
@@ -0,0 +1,10 @@
+--- xgamer/share/applications/xgamer.desktop
++++ xgamer/share/applications/xgamer.desktop
+@@ -5,6 +5,6 @@
+ Icon=xgamer
+ StartupNotify=true
+ Terminal=false
+-Categories=GTK;Game
++Categories=GTK;Game;
+ Name=XGamer
+ Comment=X Game Launcher
diff --git a/games-util/xgamer/metadata.xml b/games-util/xgamer/metadata.xml
new file mode 100644
index 000000000000..35bd0d7c0969
--- /dev/null
+++ b/games-util/xgamer/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="google-code">xgamer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/xgamer/xgamer-0.6.2.ebuild b/games-util/xgamer/xgamer-0.6.2.ebuild
new file mode 100644
index 000000000000..08b155cb47e7
--- /dev/null
+++ b/games-util/xgamer/xgamer-0.6.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit perl-module
+
+DESCRIPTION="A launcher for starting games in a second X session"
+HOMEPAGE="http://code.google.com/p/xgamer/"
+SRC_URI="http://xgamer.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND=">=dev-lang/perl-5.10
+ >=x11-libs/gtk+-2.18:2
+ >=dev-perl/gtk2-perl-1.120
+ virtual/perl-File-Path
+ virtual/perl-File-Spec
+ virtual/perl-File-Temp
+ dev-perl/File-BaseDir
+ dev-perl/XML-Twig
+ dev-perl/glib-perl
+ x11-misc/numlockx
+ media-gfx/feh"
+DEPEND="${RDEPEND}
+ dev-perl/Module-Build"
+
+S=${WORKDIR}/${PN}
+
+PATCHES=( "${FILESDIR}"/${P}-desktopfile.patch )
+
+pkg_postinst() {
+ elog "optional dependencies:"
+ elog " x11-wm/openbox (integrates well)"
+}
diff --git a/games-util/xqf/Manifest b/games-util/xqf/Manifest
new file mode 100644
index 000000000000..53ccf87ef979
--- /dev/null
+++ b/games-util/xqf/Manifest
@@ -0,0 +1 @@
+DIST xqf-1.0.5.tar.gz 742183 SHA256 ee0ab9a40516c55d9f00e65ab06b1c6669f0de858bc8a7416e6993a76c0d9b67 SHA512 2e571ed43da9ff440b6b13473ac618d2d87634a9571f892a11a7269e39518f74bf54e39e1508f734cb06e336f99cc2d3b9427666c93ff1ad8ec2b37ae6363035 WHIRLPOOL d65f896cfdbf28b4f1647dfe2ec54c68f356fa3d5e393e17b2c50145a0738fc3ff96a36481eb86b7dad96983ea66f311215a0812bdf72940a27bc0f0ff9d6cc4
diff --git a/games-util/xqf/files/xqf-1.0.5-cpu-overrun.patch b/games-util/xqf/files/xqf-1.0.5-cpu-overrun.patch
new file mode 100644
index 000000000000..567d82a6a6c2
--- /dev/null
+++ b/games-util/xqf/files/xqf-1.0.5-cpu-overrun.patch
@@ -0,0 +1,22 @@
+diff -aburN xqf.orig/src/launch.c xqf/src/launch.c
+--- xqf.orig/src/launch.c 2009-10-13 11:58:24.000000000 +0200
++++ xqf/src/launch.c 2009-10-13 11:59:35.000000000 +0200
+@@ -168,13 +168,17 @@
+
+ res = read (fd, cl->buffer + cl->pos, CLIENT_ERROR_BUFFER - 1 - cl->pos);
+
+- if (res <= 0) { /* read error or EOF */
++ if (res < 0) { /* read error or EOF */
+ if (errno == EAGAIN || errno == EWOULDBLOCK)
+ return;
+
+ client_detach (cl);
+ return;
+ }
++ else if (res == 0) {
++ client_detach (cl);
++ return;
++ }
+
+ if (cl->pos + res == CLIENT_ERROR_BUFFER - 1) {
+ tmp = &cl->buffer[CLIENT_ERROR_BUFFER - 1];
diff --git a/games-util/xqf/files/xqf-1.0.5-underlink.patch b/games-util/xqf/files/xqf-1.0.5-underlink.patch
new file mode 100644
index 000000000000..523204cd9247
--- /dev/null
+++ b/games-util/xqf/files/xqf-1.0.5-underlink.patch
@@ -0,0 +1,10 @@
+--- src/Makefile.in.old 2011-06-14 21:32:28.929746563 +0200
++++ src/Makefile.in 2011-06-14 21:32:46.567818865 +0200
+@@ -311,6 +311,7 @@
+ $(GEOIP_LIB) \
+ $(PACKAGE_LIBS) \
+ $(GDK_PIXBUF_LIBS) \
++ -lX11 -ldl \
+ -lz
+
+ xqf_LDFLAGS = -Wl,-rpath,$(pkglibdir) -Wl,--export-dynamic -Wl,--version-script=$(top_srcdir)/src/xqf.map
diff --git a/games-util/xqf/files/xqf-1.0.5-zlib-1.2.5.1-compile-fix.patch b/games-util/xqf/files/xqf-1.0.5-zlib-1.2.5.1-compile-fix.patch
new file mode 100644
index 000000000000..9bd433b3b27e
--- /dev/null
+++ b/games-util/xqf/files/xqf-1.0.5-zlib-1.2.5.1-compile-fix.patch
@@ -0,0 +1,11 @@
+--- xqf-1.0.5/src/zip/ioapi.h
++++ xqf-1.0.5/src/zip/ioapi.h
+@@ -6,6 +6,8 @@
+ Copyright (C) 1998-2003 Gilles Vollant
+ */
+
++#define OF(x) x
++
+ #ifndef _ZLIBIOAPI_H
+ #define _ZLIBIOAPI_H
+
diff --git a/games-util/xqf/metadata.xml b/games-util/xqf/metadata.xml
new file mode 100644
index 000000000000..2d7c8b9fdee9
--- /dev/null
+++ b/games-util/xqf/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <remote-id type="sourceforge">xqf</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-util/xqf/xqf-1.0.5.ebuild b/games-util/xqf/xqf-1.0.5.ebuild
new file mode 100644
index 000000000000..626d756d5462
--- /dev/null
+++ b/games-util/xqf/xqf-1.0.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="A server browser for many FPS games (frontend for qstat)"
+HOMEPAGE="http://www.linuxgames.com/xqf/"
+SRC_URI="mirror://sourceforge/xqf/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 hppa ppc x86"
+IUSE="bzip2 geoip nls"
+
+RDEPEND="x11-libs/gtk+:2
+ >=games-util/qstat-2.11
+ nls? ( virtual/libintl )
+ geoip? ( dev-libs/geoip )
+ bzip2? ( app-arch/bzip2 )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+# bug #288853
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-cpu-overrun.patch \
+ "${FILESDIR}"/${P}-underlink.patch \
+ "${FILESDIR}"/${P}-zlib-1.2.5.1-compile-fix.patch
+ sed -i \
+ -e '/Icon/s/.png//' \
+ xqf.desktop.in || die
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable geoip) \
+ $(use_enable bzip2) \
+ --enable-gtk2
+}