summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /games-sports
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'games-sports')
-rw-r--r--games-sports/billardgl/Manifest2
-rw-r--r--games-sports/billardgl/billardgl-1.75-r1.ebuild55
-rw-r--r--games-sports/billardgl/metadata.xml8
-rw-r--r--games-sports/bygfoot/Manifest1
-rw-r--r--games-sports/bygfoot/bygfoot-2.3.2.ebuild44
-rw-r--r--games-sports/bygfoot/metadata.xml8
-rw-r--r--games-sports/dustrac/Manifest1
-rw-r--r--games-sports/dustrac/dustrac-1.11.0.ebuild70
-rw-r--r--games-sports/dustrac/files/dustrac-1.11.0-cmake.patch23
-rw-r--r--games-sports/dustrac/metadata.xml15
-rw-r--r--games-sports/foobillard/Manifest1
-rw-r--r--games-sports/foobillard/files/foobillard-3.0a-as-needed.patch10
-rw-r--r--games-sports/foobillard/files/foobillard-3.0a-fbsd.patch29
-rw-r--r--games-sports/foobillard/files/foobillard-3.0a-gl-clamp.patch14
-rw-r--r--games-sports/foobillard/files/foobillard-3.0a-no_nvidia.patch18
-rw-r--r--games-sports/foobillard/foobillard-3.0a.ebuild53
-rw-r--r--games-sports/foobillard/metadata.xml5
-rw-r--r--games-sports/gracer/Manifest1
-rw-r--r--games-sports/gracer/files/0.1.5-gldefs.patch33
-rw-r--r--games-sports/gracer/files/gracer-0.1.5-as-needed.patch11
-rw-r--r--games-sports/gracer/files/gracer-0.1.5-gcc41.patch11
-rw-r--r--games-sports/gracer/files/gracer-0.1.5-libpng14.patch13
-rw-r--r--games-sports/gracer/files/gracer-0.1.5-png15.patch11
-rw-r--r--games-sports/gracer/files/gracer-gcc-3.4.patch120
-rw-r--r--games-sports/gracer/gracer-0.1.5.ebuild54
-rw-r--r--games-sports/gracer/metadata.xml8
-rw-r--r--games-sports/metadata.xml32
-rw-r--r--games-sports/miniracer/Manifest1
-rw-r--r--games-sports/miniracer/files/miniracer-1.04-ldflags.patch48
-rw-r--r--games-sports/miniracer/files/miniracer-1.04-nosharedelf.patch23
-rw-r--r--games-sports/miniracer/metadata.xml8
-rw-r--r--games-sports/miniracer/miniracer-1.04.ebuild42
-rw-r--r--games-sports/ski/Manifest2
-rw-r--r--games-sports/ski/metadata.xml5
-rw-r--r--games-sports/ski/ski-6.8.ebuild34
-rw-r--r--games-sports/ski/ski-6.9.ebuild34
-rw-r--r--games-sports/speed-dreams/Manifest1
-rw-r--r--games-sports/speed-dreams/files/speed-dreams-1.4.0-asneeded.patch110
-rw-r--r--games-sports/speed-dreams/files/speed-dreams-1.4.0-automake.patch35
-rw-r--r--games-sports/speed-dreams/files/speed-dreams-1.4.0-libpng15.patch20
-rw-r--r--games-sports/speed-dreams/metadata.xml11
-rw-r--r--games-sports/speed-dreams/speed-dreams-1.4.0.ebuild83
-rw-r--r--games-sports/stormbaancoureur/Manifest1
-rw-r--r--games-sports/stormbaancoureur/files/stormbaancoureur-2.1.6-gentoo.patch110
-rw-r--r--games-sports/stormbaancoureur/metadata.xml5
-rw-r--r--games-sports/stormbaancoureur/stormbaancoureur-2.1.6.ebuild39
-rw-r--r--games-sports/torcs/Manifest1
-rw-r--r--games-sports/torcs/files/torcs-1.3.6-as-needed.patch96
-rw-r--r--games-sports/torcs/files/torcs-1.3.6-flags.patch14
-rw-r--r--games-sports/torcs/files/torcs-1.3.6-no-automake.patch21
-rw-r--r--games-sports/torcs/files/torcs-1.3.6-noXmuXt.patch15
-rw-r--r--games-sports/torcs/metadata.xml8
-rw-r--r--games-sports/torcs/torcs-1.3.6.ebuild63
-rw-r--r--games-sports/toycars/Manifest1
-rw-r--r--games-sports/toycars/files/toycars-0.3.10-gcc45.patch37
-rw-r--r--games-sports/toycars/files/toycars-0.3.10-gcc46.patch10
-rw-r--r--games-sports/toycars/files/toycars-0.3.10-glibc-2.10.patch101
-rw-r--r--games-sports/toycars/metadata.xml15
-rw-r--r--games-sports/toycars/toycars-0.3.10.ebuild55
-rw-r--r--games-sports/trigger/Manifest1
-rw-r--r--games-sports/trigger/metadata.xml8
-rw-r--r--games-sports/trigger/trigger-0.6.1.ebuild54
-rw-r--r--games-sports/trophy/Manifest1
-rw-r--r--games-sports/trophy/metadata.xml8
-rw-r--r--games-sports/trophy/trophy-2.0.3.ebuild42
-rw-r--r--games-sports/ultimatestunts/Manifest1
-rw-r--r--games-sports/ultimatestunts/files/ultimatestunts-0.7.7-gcc-4.7.patch16
-rw-r--r--games-sports/ultimatestunts/files/ultimatestunts-0.7.7-paths.patch19
-rw-r--r--games-sports/ultimatestunts/metadata.xml8
-rw-r--r--games-sports/ultimatestunts/ultimatestunts-0.7.7.ebuild54
-rw-r--r--games-sports/vdrift/Manifest2
-rw-r--r--games-sports/vdrift/files/vdrift-20120722-build.patch28
-rw-r--r--games-sports/vdrift/files/vdrift-20120722-bullet.patch100
-rw-r--r--games-sports/vdrift/metadata.xml8
-rw-r--r--games-sports/vdrift/vdrift-20120722.ebuild71
-rw-r--r--games-sports/xmoto/Manifest2
-rw-r--r--games-sports/xmoto/files/xmoto-0.5.11-utf8.patch15
-rw-r--r--games-sports/xmoto/metadata.xml8
-rw-r--r--games-sports/xmoto/xmoto-0.5.11.ebuild92
79 files changed, 2238 insertions, 0 deletions
diff --git a/games-sports/billardgl/Manifest b/games-sports/billardgl/Manifest
new file mode 100644
index 000000000000..ec1c9217b98b
--- /dev/null
+++ b/games-sports/billardgl/Manifest
@@ -0,0 +1,2 @@
+DIST BillardGL-1.75.tar.gz 736295 SHA256 9b865b1254aa30125480ec7ea2ce00d91524db066a524b78492545782856df96 SHA512 a81d50aa44f97f06fcafd32c3436709c302f86d37f915b2d63acd9c5d48eef22259858064ff56366c7c1cdff40e4a16ad84abe1b91a0daa408cb05ba728d1e88 WHIRLPOOL bb1a48bdcee58b76f959ae98068e0a215dab573ab1fe243d0e2ab4e76ce1a28430ab14d1d3d537982abd95cdeaa36bddae798d90a1504f226260454deb24bdd2
+DIST billardgl.png 3212 SHA256 a79b27cffca343ddb8f57cd6880acc6c60daf82959919868932a296f57be286e SHA512 d9606d8c6e6f9e2ce820a135aa32a8d3604b619a6ce6626fe742424074e48e71703919c5a1923d1ee6b38670ee70c757c328123d3f3c7f595a3c2fc704bd6f74 WHIRLPOOL 40baf57c751225571ee712912cdaac081a46554485cd8d89b83fd1612405ac65f3887cc9d9526c763a3fb1cceec7837668ac6c2e4dc33ea16b71f6b106035203
diff --git a/games-sports/billardgl/billardgl-1.75-r1.ebuild b/games-sports/billardgl/billardgl-1.75-r1.ebuild
new file mode 100644
index 000000000000..4045ecb5f1b7
--- /dev/null
+++ b/games-sports/billardgl/billardgl-1.75-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="an OpenGL billards game"
+HOMEPAGE="http://www.billardgl.de/"
+SRC_URI="mirror://sourceforge/${PN}/BillardGL-${PV}.tar.gz
+ mirror://gentoo/${PN}.png"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND="x11-libs/libXi
+ x11-libs/libXmu
+ virtual/opengl
+ virtual/glu
+ media-libs/freeglut"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/BillardGL-${PV}/src
+
+src_prepare() {
+ sed -i \
+ -e "s:/usr/share/BillardGL/:${GAMES_DATADIR}/${PN}/:" \
+ Namen.h \
+ || die "sed Namen.h failed"
+ sed -i \
+ -e '/^LINK/s:g++:$(CXX):' \
+ -e '/^CXX[[:space:]]/d' \
+ -e '/^CC[[:space:]]/d' \
+ -e '/^CXXFLAGS/s:=.*\(-D.*\)-.*:+=\1:' \
+ -e "/^LFLAGS/s:=:=${LDFLAGS}:" \
+ Makefile \
+ || die "sed Makefile failed"
+ sed -i \
+ -e 's:<iostream.h>:<iostream>:' \
+ -e 's:<fstream.h>:<fstream>\nusing namespace std;:' \
+ bmp.cpp \
+ || die "sed bmp.cpp failed"
+}
+
+src_install() {
+ newgamesbin BillardGL ${PN}
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r lang Texturen
+ dodoc README
+ doicon "${DISTDIR}"/${PN}.png
+ make_desktop_entry ${PN} BillardGL
+ prepgamesdirs
+}
diff --git a/games-sports/billardgl/metadata.xml b/games-sports/billardgl/metadata.xml
new file mode 100644
index 000000000000..727be76d7a9b
--- /dev/null
+++ b/games-sports/billardgl/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">billardgl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/bygfoot/Manifest b/games-sports/bygfoot/Manifest
new file mode 100644
index 000000000000..a70300bd010b
--- /dev/null
+++ b/games-sports/bygfoot/Manifest
@@ -0,0 +1 @@
+DIST bygfoot-2.3.2.tar.bz2 1585550 SHA256 2e7f300ff33d45406cae3fa9e846fd5abcccbef500787a690ec8eccd020a224d SHA512 ce93333f50de6696538a494794d469d6768b93332f8cca1c96725259d23a78f64b94fcfff1e6227ddce52e75ae2d1e55ed78f2e94603bf1c06c6fc808f0b9626 WHIRLPOOL 33132c3410924e2edf29c85a465dcedff6f63fe9283f02cfe198e351710330e46d4ac4d0b7cfcbca74952bb4c5c19c0a85c8c6d712363df1080b7015e9f902f8
diff --git a/games-sports/bygfoot/bygfoot-2.3.2.ebuild b/games-sports/bygfoot/bygfoot-2.3.2.ebuild
new file mode 100644
index 000000000000..24ad0c46138a
--- /dev/null
+++ b/games-sports/bygfoot/bygfoot-2.3.2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="GTK+2 Soccer Management Game"
+HOMEPAGE="http://bygfoot.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+RDEPEND="x11-libs/gtk+:2
+ media-libs/freetype:2
+ app-arch/zip
+ virtual/libintl"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/gettext"
+
+src_prepare() {
+ sed -i \
+ -e 's:$(gnulocaledir):/usr/share/locale:' \
+ -e '/PACKAGE_LOCALE_DIR/s:\$(prefix)/\$(DATADIRNAME):/usr/share:' \
+ -e '/bygfoot_LDADD/s/$/ -lm/' \
+ po/Makefile.in.in src/Makefile.in || die
+}
+
+src_configure() {
+ egamesconf --disable-gstreamer
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ esvn_clean "${D}"
+ dodoc AUTHORS ChangeLog README TODO UPDATE
+ newicon support_files/pixmaps/bygfoot_icon.png ${PN}.png
+ make_desktop_entry ${PN} Bygfoot
+ prepgamesdirs
+}
diff --git a/games-sports/bygfoot/metadata.xml b/games-sports/bygfoot/metadata.xml
new file mode 100644
index 000000000000..193d489e2fc4
--- /dev/null
+++ b/games-sports/bygfoot/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">bygfoot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/dustrac/Manifest b/games-sports/dustrac/Manifest
new file mode 100644
index 000000000000..6f760fb66413
--- /dev/null
+++ b/games-sports/dustrac/Manifest
@@ -0,0 +1 @@
+DIST dustrac-1.11.0.tar.gz 27505282 SHA256 3f1cca3d431152eb2e7702c772f744a216a47c4e0f44fa193aa62ba227e15e43 SHA512 af67b76a815543d41cf8e5681ede11bfd63a2d6be7e4a21986d495d77b2673f5a145bb1c9cd5237d2caf64a4e77f221ae48b97a38a883dcd4e5bb0ef8c55f839 WHIRLPOOL fb9dea84a5d2b771124d5ac933646fbc228078916a29cffd9330f39cb31a825379d5a40000a96909e270c739ceea5725b8798969eff3193142897e1ba659526a
diff --git a/games-sports/dustrac/dustrac-1.11.0.ebuild b/games-sports/dustrac/dustrac-1.11.0.ebuild
new file mode 100644
index 000000000000..e34e5f7106c8
--- /dev/null
+++ b/games-sports/dustrac/dustrac-1.11.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils gnome2-utils cmake-utils games
+
+DESCRIPTION="Tile-based, cross-platform 2D racing game"
+HOMEPAGE="http://dustrac.sourceforge.net/"
+SRC_URI="mirror://sourceforge/dustrac/${P}.tar.gz"
+
+LICENSE="GPL-3+ CC-BY-SA-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtopengl:5
+ dev-qt/qtxml:5
+ dev-qt/linguist-tools:5
+ media-libs/libvorbis
+ media-libs/openal
+ virtual/opengl"
+DEPEND="${RDEPEND}
+ dev-qt/qttest:5
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-cmake.patch
+}
+
+src_configure() {
+ # -DGLES=ON didn't build for me but maybe just need use flags on some QT package?
+ # Maybe add a local gles use flag
+ local mycmakeargs=(
+ -DReleaseBuild=ON
+ -DDATA_PATH="${GAMES_DATADIR}/${PN}"
+ -DBIN_PATH="${GAMES_BINDIR}"
+ -DDOC_PATH=/usr/share/doc/${PF}
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ dosym /usr/share/fonts/ubuntu-font-family/UbuntuMono-B.ttf "${GAMES_DATADIR}/${PN}/fonts/UbuntuMono-B.ttf"
+ dosym /usr/share/fonts/ubuntu-font-family/UbuntuMono-R.ttf "${GAMES_DATADIR}/${PN}/fonts/UbuntuMono-R.ttf"
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-sports/dustrac/files/dustrac-1.11.0-cmake.patch b/games-sports/dustrac/files/dustrac-1.11.0-cmake.patch
new file mode 100644
index 000000000000..6f497e4969ef
--- /dev/null
+++ b/games-sports/dustrac/files/dustrac-1.11.0-cmake.patch
@@ -0,0 +1,23 @@
+--- dustrac-1.11.0.orig/CMakeLists.txt
++++ dustrac-1.11.0/CMakeLists.txt
+@@ -68,8 +68,7 @@
+ endif()
+
+ if(CMAKE_COMPILER_IS_GNUCXX OR MINGW OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+- add_compile_options(-std=c++11 -W -Wall -O3 -pedantic)
+- add_compile_options(-fomit-frame-pointer -finline-functions -ffast-math)
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -W -Wall -fomit-frame-pointer -finline-functions")
+ elseif(MSVC)
+ add_definitions(-DNOMINMAX)
+ endif()
+--- dustrac-1.11.0.orig/InstallLinux.cmake
++++ dustrac-1.11.0/InstallLinux.cmake
+@@ -58,7 +58,7 @@
+ install(FILES data/fonts.conf DESTINATION ${DATA_PATH})
+ install(FILES data/meshes.conf DESTINATION ${DATA_PATH})
+ install(FILES data/surfaces.conf DESTINATION ${DATA_PATH})
+- install(FILES AUTHORS CHANGELOG COPYING README DESTINATION ${DOC_PATH})
++ install(FILES AUTHORS CHANGELOG README DESTINATION ${DOC_PATH})
+ install(DIRECTORY data/images DESTINATION ${DATA_PATH} FILES_MATCHING PATTERN "*.jpg")
+ install(DIRECTORY data/images DESTINATION ${DATA_PATH} FILES_MATCHING PATTERN "*.png")
+ install(DIRECTORY data/levels DESTINATION ${DATA_PATH} FILES_MATCHING PATTERN "*.trk")
diff --git a/games-sports/dustrac/metadata.xml b/games-sports/dustrac/metadata.xml
new file mode 100644
index 000000000000..c552dd293090
--- /dev/null
+++ b/games-sports/dustrac/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">
+ Dust Racing (Dustrac) is a tile-based, cross-platform 2D racing
+ game written in Qt (C++) and OpenGL. Dust Racing comes with a
+ Qt-based level editor for easy level creation. A custom engine,
+ MiniCore, is used for physics modeling. Dust Racing 2D is
+ inspired by Super Cars and Slicks’n Slide.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">dustrac</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/foobillard/Manifest b/games-sports/foobillard/Manifest
new file mode 100644
index 000000000000..5619a33f0b8f
--- /dev/null
+++ b/games-sports/foobillard/Manifest
@@ -0,0 +1 @@
+DIST foobillard-3.0a.tar.gz 1138477 SHA256 d05807077bdba32c4ca1d369344ac983675dc859cb7b192fca4196f23b89b137 SHA512 6ff85255384a83cb147a9682beefa021658ba34ad00ed7879bf7887fff248d41aeb34d2dbe39148ee10bffc53091ea5f168b4afeddac9b50d577bad7799d59b2 WHIRLPOOL 97e4ce788721c5327d7b1e7f42cb507c61af6b8e0e00208a728b107d8eb3bd89216810a607fab1e950c7045c9774d0aa4ce3ef95b31def953de0ce615bf590aa
diff --git a/games-sports/foobillard/files/foobillard-3.0a-as-needed.patch b/games-sports/foobillard/files/foobillard-3.0a-as-needed.patch
new file mode 100644
index 000000000000..1d9ddbd8b729
--- /dev/null
+++ b/games-sports/foobillard/files/foobillard-3.0a-as-needed.patch
@@ -0,0 +1,10 @@
+--- foobillard-3.0a.old/src/Makefile.am 2004-02-25 07:23:56.000000000 +0100
++++ foobillard-3.0a/src/Makefile.am 2008-12-06 21:57:03.000000000 +0100
+@@ -83,6 +83,5 @@ AM_CFLAGS = -Wall `freetype-config --cfl
+
+ #LIBS = -L$(LIBDIR) -lglut -lGLU -lGL -lXext -lXaw -lm -lXi -lpng -lz
+ #LIBS = -L$(LIBDIR) -lglut -lGLU -lGL -lXext -lXaw -lm -lXi -lpng -lz
+-AM_LDFLAGS = ${all_libraries} `freetype-config --libs` ${SDL_LIBS} ${GLUT_LIBS}
+ #LDADD = ${X_PRE_LIBS} ${X_LIBS} ${X_EXTRA_LIBS} -lGL -lGLU -lXaw -lm -lXi -lpng -lz -L/home/floh/nvsdk/OpenGL/lib/ -lnvparse
+-LDADD = ${X_PRE_LIBS} ${X_LIBS} ${X_EXTRA_LIBS} -lGL -lGLU -lXaw -lm -lXi -lpng -lz
++LIBS = ${all_libraries} `freetype-config --libs` ${SDL_LIBS} ${GLUT_LIBS} ${X_PRE_LIBS} ${X_LIBS} ${X_EXTRA_LIBS} -lGL -lGLU -lXaw -lm -lXi -lpng -lz
diff --git a/games-sports/foobillard/files/foobillard-3.0a-fbsd.patch b/games-sports/foobillard/files/foobillard-3.0a-fbsd.patch
new file mode 100644
index 000000000000..301260cb8360
--- /dev/null
+++ b/games-sports/foobillard/files/foobillard-3.0a-fbsd.patch
@@ -0,0 +1,29 @@
+Index: foobillard-3.0a/configure.in
+===================================================================
+--- foobillard-3.0a.orig/configure.in
++++ foobillard-3.0a/configure.in
+@@ -13,7 +13,7 @@ dnl Checks for libraries.
+
+ dnl Checks for header files.
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS(limits.h unistd.h math.h stdlib.h stdio.h ft2build.h)
++AC_CHECK_HEADERS(limits.h unistd.h math.h stdlib.h stdio.h ft2build.h endian.h sys/endian.h)
+
+ dnl Checks for typedefs, structures, and compiler characteristics.
+ AC_C_CONST
+Index: foobillard-3.0a/src/billard3d.c
+===================================================================
+--- foobillard-3.0a.orig/src/billard3d.c
++++ foobillard-3.0a/src/billard3d.c
+@@ -24,7 +24,11 @@
+ #include <string.h>
+ #include <math.h>
+ #include <unistd.h>
++#ifdef HAVE_ENDIAN_H
+ #include <endian.h>
++#elif defined(HAVE_SYS_ENDIAN_H)
++#include <sys/endian.h>
++#endif
+
+ #ifndef USE_SDL
+ #include <GL/glut.h>
diff --git a/games-sports/foobillard/files/foobillard-3.0a-gl-clamp.patch b/games-sports/foobillard/files/foobillard-3.0a-gl-clamp.patch
new file mode 100644
index 000000000000..972d14cabb0a
--- /dev/null
+++ b/games-sports/foobillard/files/foobillard-3.0a-gl-clamp.patch
@@ -0,0 +1,14 @@
+diff -ur foobillard-3.0a/src/table.c foobillard-3.0a-glclamp/src/table.c
+--- foobillard-3.0a/src/table.c 2004-01-11 21:53:02.000000000 +0000
++++ foobillard-3.0a-glclamp/src/table.c 2011-02-21 09:14:36.000000000 +0000
+@@ -1214,8 +1214,8 @@
+ GL_UNSIGNED_BYTE, tabletexdata);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, options_tex_min_filter);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, options_tex_mag_filter);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
+ free( tabletexdata );
+ } else {
+ tabletexbind=0;
diff --git a/games-sports/foobillard/files/foobillard-3.0a-no_nvidia.patch b/games-sports/foobillard/files/foobillard-3.0a-no_nvidia.patch
new file mode 100644
index 000000000000..b43707bc403b
--- /dev/null
+++ b/games-sports/foobillard/files/foobillard-3.0a-no_nvidia.patch
@@ -0,0 +1,18 @@
+--- src/ball.c.orig 2004-06-02 07:00:57.000000000 -0400
++++ src/ball.c 2004-06-02 07:03:52.000000000 -0400
+@@ -1821,6 +1821,7 @@
+ } else if( options_cuberef && cuberef_binds!=0 ){
+ glBindTexture(GL_TEXTURE_CUBE_MAP_ARB, cuberef_binds[i]);
+ #ifdef GL_VERTEX_PROGRAM_NV
++#ifdef USE_BALL_FRESNEL
+ {
+ myvec cam_pos2;
+ // cam_pos2=vec_scale(vec_unit(vec_diff(cam_pos,balls.ball[i].r)),BALL_D/2.5);
+@@ -1829,6 +1830,7 @@
+ BALL_D/2.0,BALL_D/2.5,0,0 );
+ }
+ #endif
++#endif
+ draw_ball(&balls.ball[i],cam_pos,cam_FOV,win_width,0);
+ }else{
+ draw_ball(&balls.ball[i],cam_pos,cam_FOV,win_width,0);
diff --git a/games-sports/foobillard/foobillard-3.0a.ebuild b/games-sports/foobillard/foobillard-3.0a.ebuild
new file mode 100644
index 000000000000..babc1d84dc38
--- /dev/null
+++ b/games-sports/foobillard/foobillard-3.0a.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils autotools games
+
+DESCRIPTION="8ball, 9ball, snooker and carambol game"
+HOMEPAGE="http://foobillard.sourceforge.net/"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-fbsd"
+IUSE="sdl video_cards_nvidia"
+
+DEPEND="x11-libs/libXaw
+ x11-libs/libXi
+ virtual/opengl
+ virtual/glu
+ >=media-libs/freetype-2.0.9
+ media-libs/libpng
+ sdl? ( media-libs/libsdl )
+ !sdl? ( media-libs/freeglut )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-no_nvidia.patch \
+ "${FILESDIR}"/${P}-fbsd.patch \
+ "${FILESDIR}"/${P}-as-needed.patch \
+ "${FILESDIR}"/${P}-gl-clamp.patch
+ mv configure.{in,ac}
+ rm aclocal.m4
+
+ eautoreconf
+}
+
+src_configure() {
+ egamesconf \
+ --enable-sound \
+ $(use_enable sdl SDL) \
+ $(use_enable !sdl glut) \
+ $(use_enable video_cards_nvidia nvidia)
+}
+
+src_install() {
+ default
+ doman foobillard.6
+ newicon data/full_symbol.png foobillard.png
+ make_desktop_entry foobillard Foobillard
+ prepgamesdirs
+}
diff --git a/games-sports/foobillard/metadata.xml b/games-sports/foobillard/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-sports/foobillard/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-sports/gracer/Manifest b/games-sports/gracer/Manifest
new file mode 100644
index 000000000000..6479a745ae36
--- /dev/null
+++ b/games-sports/gracer/Manifest
@@ -0,0 +1 @@
+DIST gracer-0.1.5.tar.gz 520599 SHA256 dc478610d60cd5f00a52cc52877a333bd4b3a2d96ed1660ba8d26ad7143367c0 SHA512 eb812c517087a955d4b421e5d0e4bc841428162ed3f76dcac1a7a36b67e6ac14e8a6c231cca2a8ba9c60a4a25c79d532983a13dc4e9b9e4b7dfad3e78f1284bc WHIRLPOOL f0a68874ce5aaed897197c94b2028f94fd89aac4cc961e75260bb48ddb66bf790e8a0ecda3be30916b97a88796e004096c3f6c10a8bf739ac00cf01e96383c0e
diff --git a/games-sports/gracer/files/0.1.5-gldefs.patch b/games-sports/gracer/files/0.1.5-gldefs.patch
new file mode 100644
index 000000000000..825edff861dc
--- /dev/null
+++ b/games-sports/gracer/files/0.1.5-gldefs.patch
@@ -0,0 +1,33 @@
+--- src/glbind.c.orig 2003-07-30 00:18:37.000000000 -0400
++++ src/glbind.c 2003-07-30 00:19:32.000000000 -0400
+@@ -22,6 +22,8 @@
+ #include <unistd.h>
+ #include <GL/gl.h>
+ #include <GL/glut.h>
++#undef GL_EXT_texture_object
++#include <GL/glext.h>
+ #include <string.h>
+ #include <stdlib.h>
+ #include <ctype.h>
+--- src/glhash.h.orig 2003-07-30 00:20:32.000000000 -0400
++++ src/glhash.h 2003-07-30 00:20:58.000000000 -0400
+@@ -1,4 +1,5 @@
+ /* this file is generated automaticaly from GL/gl.h */
++#undef GL_EXT_paletted_texture
+ #include <GL/gl.h>
+
+ glWordList glwordlist[] = {
+@@ -632,13 +632,11 @@
+
+ #ifdef GL_SGIS_multitexture
+ {"selected_texture_sgis", GL_SELECTED_TEXTURE_SGIS},
+- {"selected_texture_coord_set_sgis", GL_SELECTED_TEXTURE_COORD_SET_SGIS},
+ {"max_textures_sgis", GL_MAX_TEXTURES_SGIS},
+ {"texture0_sgis", GL_TEXTURE0_SGIS},
+ {"texture1_sgis", GL_TEXTURE1_SGIS},
+ {"texture2_sgis", GL_TEXTURE2_SGIS},
+ {"texture3_sgis", GL_TEXTURE3_SGIS},
+- {"texture_coord_set_source_sgis", GL_TEXTURE_COORD_SET_SOURCE_SGIS},
+ #endif
+
+ #ifdef GL_EXT_multitexture
diff --git a/games-sports/gracer/files/gracer-0.1.5-as-needed.patch b/games-sports/gracer/files/gracer-0.1.5-as-needed.patch
new file mode 100644
index 000000000000..3d3c53bcd46e
--- /dev/null
+++ b/games-sports/gracer/files/gracer-0.1.5-as-needed.patch
@@ -0,0 +1,11 @@
+--- src/Makefile.in.old 2009-02-11 14:31:56.000000000 +0100
++++ src/Makefile.in 2009-02-11 14:32:29.000000000 +0100
+@@ -109,7 +109,7 @@
+ INCLUDES = -I$(top_srcdir) @X_CFLAGS@ @GL_CFLAGS@ @GLUT_CFLAGS@ @TCL_CFLAGS@ @GIF_CFLAGS@ @JPEG_CFLAGS@ @PNG_CFLAGS@ @PLIB_CFLAGS@
+
+
+-gracer_LDADD = @PLIB_LDFLAGS@ @GIF_LDFLAGS@ @JPEG_LDFLAGS@ @PNG_LDFLAGS@ @GL_LDFLAGS@ @GLUT_LDFLAGS@ @X_LDFLAGS@ @TCL_LDFLAGS@ @TCL_LIBS@ @X_LIBS@ @GL_LIBS@ @GLUT_LIBS@ @GIF_LIBS@ @JPEG_LIBS@ @PNG_LIBS@ @SOUND_LIBS@ $(top_builddir)/common/libcommon.a
++gracer_LDADD = $(top_builddir)/common/libcommon.a @PLIB_LDFLAGS@ @GIF_LDFLAGS@ @JPEG_LDFLAGS@ @PNG_LDFLAGS@ @GL_LDFLAGS@ @GLUT_LDFLAGS@ @X_LDFLAGS@ @TCL_LDFLAGS@ @TCL_LIBS@ @X_LIBS@ @GL_LIBS@ @GLUT_LIBS@ @GIF_LIBS@ @JPEG_LIBS@ @PNG_LIBS@ @SOUND_LIBS@
+
+
+ gracer_SOURCES = control.h glbind.c glbind.h glutwidgets.c glutwidgets.h gluttclwidgets.c gluttclwidgets.h glutgame.c glutgame.h gr_world.c gr_world.h glhash.h gluthash.h vehicle.c vehicle.h lap.c lap.h joystick.c joystick.h tcldefs.h sound.h sound.cxx main.cxx
diff --git a/games-sports/gracer/files/gracer-0.1.5-gcc41.patch b/games-sports/gracer/files/gracer-0.1.5-gcc41.patch
new file mode 100644
index 000000000000..7d47f96b98c8
--- /dev/null
+++ b/games-sports/gracer/files/gracer-0.1.5-gcc41.patch
@@ -0,0 +1,11 @@
+--- common/gr_memory.h.old 2006-05-23 09:16:21.000000000 +0200
++++ common/gr_memory.h 2006-05-23 09:16:40.000000000 +0200
+@@ -64,7 +64,7 @@
+ void gr_dlist_free (GrDList *list);
+
+ #define gr_FOREACH(l,p) \
+- for (; (l) != NULL && ((void *)(p) = (l)->data, 1); (l) = (l)->next)
++ for (; (l) != NULL && (p = (l)->data, 1); (l) = (l)->next)
+
+ void gr_ref_incr (GrRef *ref);
+ void gr_ref_decr (GrRef *ref);
diff --git a/games-sports/gracer/files/gracer-0.1.5-libpng14.patch b/games-sports/gracer/files/gracer-0.1.5-libpng14.patch
new file mode 100644
index 000000000000..6230eb276401
--- /dev/null
+++ b/games-sports/gracer/files/gracer-0.1.5-libpng14.patch
@@ -0,0 +1,13 @@
+http://bugs.gentoo.org/show_bug.cgi?id=308885
+
+--- common/gr_texture.c
++++ common/gr_texture.c
+@@ -419,7 +419,7 @@ read_png_file (GrTexture *texture, char
+ if (fread (header, 1, PNG_BYTES_TO_CHECK, file) != PNG_BYTES_TO_CHECK) {
+ goto ERROR;
+ }
+- if (!png_check_sig (header, PNG_BYTES_TO_CHECK)) {
++ if (png_sig_cmp (header, 0, PNG_BYTES_TO_CHECK)) {
+ goto ERROR;
+ }
+
diff --git a/games-sports/gracer/files/gracer-0.1.5-png15.patch b/games-sports/gracer/files/gracer-0.1.5-png15.patch
new file mode 100644
index 000000000000..1efaec3d6fc6
--- /dev/null
+++ b/games-sports/gracer/files/gracer-0.1.5-png15.patch
@@ -0,0 +1,11 @@
+--- common/gr_texture.c.old 2011-09-14 14:23:46.820207882 +0200
++++ common/gr_texture.c 2011-09-14 14:24:22.861203604 +0200
+@@ -431,7 +431,7 @@
+ if (!info_ptr) {
+ goto ERROR;
+ }
+- if (setjmp (png_ptr->jmpbuf)) {
++ if (setjmp (png_jmpbuf(png_ptr))) {
+ goto ERROR;
+ }
+ png_init_io (png_ptr, file);
diff --git a/games-sports/gracer/files/gracer-gcc-3.4.patch b/games-sports/gracer/files/gracer-gcc-3.4.patch
new file mode 100644
index 000000000000..354f9865a655
--- /dev/null
+++ b/games-sports/gracer/files/gracer-gcc-3.4.patch
@@ -0,0 +1,120 @@
+--- src/glbind.c.old 2004-11-05 01:15:07.141221016 +0000
++++ src/glbind.c 2004-11-05 01:15:32.808319024 +0000
+@@ -2150,6 +2150,7 @@
+ return 3;
+
+ default:
++ ;
+ }
+
+ ERROR:
+@@ -2889,6 +2890,7 @@
+ return 6;
+
+ default:
++ ;
+ }
+
+ ERROR:
+@@ -3081,6 +3083,7 @@
+ return 4;
+
+ default:
++ ;
+ }
+
+ ERROR:
+--- src/glutwidgets.c.old 2004-11-05 01:17:17.941336376 +0000
++++ src/glutwidgets.c 2004-11-05 01:18:42.059548464 +0000
+@@ -255,6 +255,7 @@
+ widget->width += (width - screen_width);
+ break;
+ default:
++ ;
+ }
+ switch (widget->anchor & GR_VERTICAL_MASK) {
+ case GR_BOTTOM:
+@@ -268,6 +269,7 @@
+ widget->height += (width - screen_height);
+ break;
+ default:
++ ;
+ }
+ glut_widget_calc_bbox (widget);
+ }
+@@ -327,6 +329,7 @@
+ break;
+
+ default:
++ ;
+ }
+ }
+
+@@ -504,6 +507,7 @@
+ break;
+
+ default:
++ ;
+ }
+ }
+
+@@ -1299,6 +1303,7 @@
+ break;
+
+ default:
++ ;
+ }
+ }
+
+@@ -1571,6 +1576,7 @@
+ break;
+
+ default:
++ ;
+ }
+
+ glColor4fv (widget->fg_color[GR_STATE_NORMAL]);
+--- src/gr_world.c.old 2004-11-05 01:19:30.766143936 +0000
++++ src/gr_world.c 2004-11-05 01:19:07.717647840 +0000
+@@ -169,6 +169,7 @@
+ break;
+
+ default:
++ ;
+ }
+
+ tlist = entry->triggers;
+--- ac2scene/ac2scene.c.old 2004-11-05 01:13:55.845059680 +0000
++++ ac2scene/ac2scene.c 2004-11-05 01:14:32.526483256 +0000
+@@ -162,6 +162,7 @@
+ break;
+
+ default:
++ ;
+ }
+
+ return 0;
+@@ -234,6 +235,7 @@
+ break;
+
+ default:
++ ;
+ }
+
+ return 0;
+@@ -316,6 +318,7 @@
+ }
+ break;
+ default:
++ ;
+ }
+
+ return 0;
+@@ -399,6 +402,7 @@
+ break;
+
+ default:
++ ;
+ }
+ }
+
diff --git a/games-sports/gracer/gracer-0.1.5.ebuild b/games-sports/gracer/gracer-0.1.5.ebuild
new file mode 100644
index 000000000000..43992b421cb9
--- /dev/null
+++ b/games-sports/gracer/gracer-0.1.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+DESCRIPTION="3D motor sports simulator"
+HOMEPAGE="http://gracer.sourceforge.net/"
+SRC_URI="mirror://sourceforge/gracer/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86"
+IUSE="joystick"
+
+DEPEND="
+ dev-lang/tcl:0
+ media-libs/freeglut
+ media-libs/giflib
+ media-libs/libpng:0
+ media-libs/plib
+ x11-libs/libXi
+ x11-libs/libXmu
+ virtual/glu
+ virtual/opengl
+ virtual/jpeg"
+RDEPEND=${DEPEND}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PV}-gldefs.patch \
+ "${FILESDIR}"/${PN}-gcc-3.4.patch \
+ "${FILESDIR}/${P}"-gcc41.patch \
+ "${FILESDIR}"/${P}-as-needed.patch \
+ "${FILESDIR}"/${P}-libpng14.patch \
+ "${FILESDIR}"/${P}-png15.patch
+}
+
+src_configure() {
+ egamesconf \
+ --enable-gif \
+ --enable-jpeg \
+ --enable-png \
+ $(use_enable joystick)
+ sed -i \
+ -e 's:-lplibsl:-lplibsl -lplibul:' \
+ $(find -name Makefile) || die
+}
+
+src_install() {
+ default
+ prepgamesdirs
+}
diff --git a/games-sports/gracer/metadata.xml b/games-sports/gracer/metadata.xml
new file mode 100644
index 000000000000..dabcf648c232
--- /dev/null
+++ b/games-sports/gracer/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">gracer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/metadata.xml b/games-sports/metadata.xml
new file mode 100644
index 000000000000..370d356069e1
--- /dev/null
+++ b/games-sports/metadata.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The games-sports category contains sports games.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie games-sports enthält Sportspiele.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría games-sports contiene juegos de deporte.
+ </longdescription>
+ <longdescription lang="ja">
+ games-sportsカテゴリーにはスポーツ・ゲームが含まれています。
+ </longdescription>
+ <longdescription lang="nl">
+ De games-sports categorie bevat sportspellen.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm games-sports chứa các trò chơi thể thao.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria games-sports contiene giochi sportivi.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria games-sports contém jogos de esportes.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria games-sports zawiera gry sportowe.
+ </longdescription>
+</catmetadata>
+
diff --git a/games-sports/miniracer/Manifest b/games-sports/miniracer/Manifest
new file mode 100644
index 000000000000..8ec0be480ccc
--- /dev/null
+++ b/games-sports/miniracer/Manifest
@@ -0,0 +1 @@
+DIST miniracer-1.04.tar.gz 5315353 SHA256 474ab98fd952df6233e51a5080bae655012ad573ff22cb42eca2ceaf97fe385d SHA512 6dc34371b6ea2d67c4a7d86b1200c9e7c7d56ef6b91af5ec4b0648da11dcfe6e125f6dc401a85e4c5bd3af2980d5a54b322c5466f96b7e21683e85ec4a7b0d6c WHIRLPOOL 79a1bccbb1106ccfdcaa5a3af07fc51e41783ff0e699d27721524e5efbc0908c859040c5bbb11e5bc6dbdee19e53d2dc1bad944ab2de397974554930c5c1ebf1
diff --git a/games-sports/miniracer/files/miniracer-1.04-ldflags.patch b/games-sports/miniracer/files/miniracer-1.04-ldflags.patch
new file mode 100644
index 000000000000..4c37dc9e1aa3
--- /dev/null
+++ b/games-sports/miniracer/files/miniracer-1.04-ldflags.patch
@@ -0,0 +1,48 @@
+--- Makefile.old 2010-10-13 12:41:01.000000000 +0200
++++ Makefile 2010-10-13 12:56:04.000000000 +0200
+@@ -10,13 +10,12 @@
+
+ BUILDDIR=obj
+
+-CC=gcc
+ DEFS=-DVIDMODEXT_GAMMA_RAMP -DSOUND
+-INCLUDES= -I. -I/usr/X11R6/include -I/usr/include/SDL
+-CFLAGS=$(DEFS) $(INCLUDES) -O3 -march=i486 -ffast-math -fexpensive-optimizations
++INCLUDES= -I. -I/usr/X11R6/include $(shell sdl-config --cflags)
++CFLAGS=$(DEFS) $(INCLUDES) @CFLAGS@
+
+ GL_LDFLAGS=-L/usr/X11R6/lib -lGL -lXxf86dga -lXxf86vm -lX11 -lXext -lm
+-LDFLAGS=$(GL_LDFLAGS) -ldl -lSDL -lSDL_mixer -lpthread
++LDLIBS=$(GL_LDFLAGS) -ldl -lSDL_mixer $(shell sdl-config --libs)
+
+ #############################################################################
+ # SETUP AND BUILD
+@@ -43,15 +42,16 @@
+ build_release: engine.glx
+
+ install:
+- install -d $(DESTDIR)/usr/bin
++ install -d $(DESTDIR)@GAMES_BINDIR@
+ install -d $(DESTDIR)/usr/share/man/man6
+ install -d $(DESTDIR)/usr/share/games/MiniRacer
+ install -d $(DESTDIR)/usr/share/games/MiniRacer/data
+ install -d $(DESTDIR)/usr/share/games/MiniRacer/data/maps
+- install -m 755 engine.glx $(DESTDIR)/usr/share/games/MiniRacer
++ install -d $(DESTDIR)@GAMES_LIBDIR@
++ install -m 755 engine.glx $(DESTDIR)@GAMES_LIBDIR@
+ install -m 644 data/pak0.pak $(DESTDIR)/usr/share/games/MiniRacer/data
+ install -m 644 data/config.cfg $(DESTDIR)/usr/share/games/MiniRacer/data
+- install -m 755 miniracer $(DESTDIR)/usr/bin/miniracer
++ install -m 755 miniracer $(DESTDIR)@GAMES_BINDIR@/miniracer
+ install -m 644 miniracer.6 $(DESTDIR)/usr/share/man/man6
+ install -m 644 data/maps/*.bsp $(DESTDIR)/usr/share/games/MiniRacer/data/maps
+ install -m 644 data/maps/maps1.lst $(DESTDIR)/usr/share/games/MiniRacer/data/maps
+@@ -145,7 +145,7 @@
+ $(CC) $(CFLAGS) $(GLCFLAGS) -o $@ -c $<
+
+ engine.glx : $(GLMR_OBJS)
+- $(CC) $(CFLAGS) -o $@ $(GLMR_OBJS) $(LDFLAGS)
++ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(GLMR_OBJS) $(LDLIBS)
+
+ #############################################################################
+ # MISC
diff --git a/games-sports/miniracer/files/miniracer-1.04-nosharedelf.patch b/games-sports/miniracer/files/miniracer-1.04-nosharedelf.patch
new file mode 100644
index 000000000000..0bb0b5da846e
--- /dev/null
+++ b/games-sports/miniracer/files/miniracer-1.04-nosharedelf.patch
@@ -0,0 +1,23 @@
+--- miniracer.old 2010-02-27 21:05:11.000000000 +0100
++++ miniracer 2010-02-27 21:10:34.000000000 +0100
+@@ -12,10 +12,6 @@
+ fi
+
+ #checks for files
+-if ! [ -f $HOME/.MiniRacer/engine.glx ]; then
+- ln -s $MINIRACERDIR/engine.glx $HOME/.MiniRacer
+-fi
+-
+ if ! [ -f $HOME/.MiniRacer/data/pak0.pak ]; then
+ ln -s $MINIRACERDIR/data/pak0.pak $HOME/.MiniRacer/data
+ fi
+@@ -35,7 +31,4 @@
+
+ # change directory and start MiniRacer
+ cd $HOME/.MiniRacer
+-./engine.glx $*
+-
+-exit 0
+-
+\ No newline at end of file
++exec @GAMES_LIBDIR@/engine.glx $*
diff --git a/games-sports/miniracer/metadata.xml b/games-sports/miniracer/metadata.xml
new file mode 100644
index 000000000000..a7a28412717c
--- /dev/null
+++ b/games-sports/miniracer/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">miniracer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/miniracer/miniracer-1.04.ebuild b/games-sports/miniracer/miniracer-1.04.ebuild
new file mode 100644
index 000000000000..4675eab0502d
--- /dev/null
+++ b/games-sports/miniracer/miniracer-1.04.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 games
+
+DESCRIPTION="an OpenGL car racing game, based on ID's famous Quake engine"
+HOMEPAGE="http://miniracer.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86"
+IUSE=""
+
+RDEPEND="virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86dga
+ x11-libs/libXxf86vm
+ media-libs/libsdl
+ media-libs/sdl-mixer"
+DEPEND="${RDEPEND}
+ x11-proto/xf86dgaproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xproto"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-nosharedelf.patch \
+ "${FILESDIR}"/${P}-ldflags.patch
+ sed -i \
+ -e "s:@CFLAGS@:${CFLAGS}:" \
+ -e "s:@GAMES_LIBDIR@:$(games_get_libdir)/${PN}:" \
+ -e "s:@GAMES_BINDIR@:${GAMES_BINDIR}:" \
+ miniracer Makefile || die
+}
+
+src_install() {
+ default
+ prepgamesdirs
+}
diff --git a/games-sports/ski/Manifest b/games-sports/ski/Manifest
new file mode 100644
index 000000000000..45cd3d4f1ef6
--- /dev/null
+++ b/games-sports/ski/Manifest
@@ -0,0 +1,2 @@
+DIST ski-6.8.tar.gz 17119 SHA256 776849dc61ffe834def7d22b9027a64491559a1700351d817313f187cee36c4d SHA512 0e63b6d34e809d74ddaea3749e6d1df44907ebe26bc19185b6c9cc6998f538747cb32a747fd0b4307bf05beec65564f1174e982a851270e344117d943f4ecca9 WHIRLPOOL ff730a786e7961170545c5dbe9f26c0030e78a9cf422e60791e90cb02098b7c0352489b08af16838a1b4f48dca3bb8b9e386d665dd537094482de937dfccc08d
+DIST ski-6.9.tar.gz 17543 SHA256 d0f2fd7770a63319340fab8ee275c6221dff0e0e7fe488f2298f567583902d37 SHA512 bdcd9a267153b23bc1e4b99f0073d9d26ff8a8d670d70ec06cc27b91cd4a3bdaf821507671d73a359b3447261d52e596c61cbf9596eead7191102d1a089178b6 WHIRLPOOL ee31f8ddcfb28111e353be6162fc6e49ce2f8aa45d3f57e34e7343a4e4244a4be59ae026cbd27a08b0c4f4f7660d8558a945cd1bcfd8778d23f2c337c8296b5c
diff --git a/games-sports/ski/metadata.xml b/games-sports/ski/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-sports/ski/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-sports/ski/ski-6.8.ebuild b/games-sports/ski/ski-6.8.ebuild
new file mode 100644
index 000000000000..010180304d7a
--- /dev/null
+++ b/games-sports/ski/ski-6.8.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+inherit python-single-r1 games
+
+DESCRIPTION="A simple text-mode skiing game"
+HOMEPAGE="http://www.catb.org/~esr/ski/"
+SRC_URI="http://www.catb.org/~esr/ski/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+pkg_setup() {
+ games_pkg_setup
+ python-single-r1_pkg_setup
+}
+
+src_install() {
+ dogamesbin ski
+ dodoc NEWS README
+ doman ski.6
+ domenu ski.desktop
+ doicon ski.png
+ prepgamesdirs
+ python_fix_shebang "${ED}${GAMES_BINDIR}"
+}
diff --git a/games-sports/ski/ski-6.9.ebuild b/games-sports/ski/ski-6.9.ebuild
new file mode 100644
index 000000000000..dd760911b186
--- /dev/null
+++ b/games-sports/ski/ski-6.9.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+inherit python-single-r1 games
+
+DESCRIPTION="A simple text-mode skiing game"
+HOMEPAGE="http://www.catb.org/~esr/ski/"
+SRC_URI="http://www.catb.org/~esr/ski/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+pkg_setup() {
+ games_pkg_setup
+ python-single-r1_pkg_setup
+}
+
+src_install() {
+ dogamesbin ski
+ dodoc NEWS README
+ doman ski.6
+ domenu ski.desktop
+ doicon ski.png
+ prepgamesdirs
+ python_fix_shebang "${ED}${GAMES_BINDIR}"
+}
diff --git a/games-sports/speed-dreams/Manifest b/games-sports/speed-dreams/Manifest
new file mode 100644
index 000000000000..c5b899dc14ac
--- /dev/null
+++ b/games-sports/speed-dreams/Manifest
@@ -0,0 +1 @@
+DIST speed-dreams-1.4.0-r2307-src.tar.bz2 332667666 SHA256 c109bb77785e33ab66992db8566584f4393d2f141fb12e32a58793953fcd6893
diff --git a/games-sports/speed-dreams/files/speed-dreams-1.4.0-asneeded.patch b/games-sports/speed-dreams/files/speed-dreams-1.4.0-asneeded.patch
new file mode 100644
index 000000000000..837a2511a191
--- /dev/null
+++ b/games-sports/speed-dreams/files/speed-dreams-1.4.0-asneeded.patch
@@ -0,0 +1,110 @@
+--- configure.in
++++ configure.in
+@@ -123,8 +123,7 @@
+ AC_CHECK_LIB(Xrandr, XRRQueryVersion,,AC_MSG_ERROR([Can't find libXrandr. Please check config.log and if you can't solve the problem send the file to speed-dreams-users@lists.sourceforge.net with the subject \"Speed Dreams compilation problem\"]))
+ AC_CHECK_LIB(openal, alEnable,, AC_MSG_ERROR([Can't find AL/al.h. OpenAL can be found on http://www.openal.org/]))
+ AC_CHECK_LIB(alut, alutLoadWAVFile,
+- LDFLAGS="$LDFLAGS -lalut",
+- LDFLAGS="$LDFLAGS")
++ LIBS="$LIBS -lalut", )
+
+ AC_CHECK_LIB(dl, dlopen)
+ AC_CHECK_FUNC(dlopen,,AC_MSG_ERROR([Can't find dlopen function. Please check config.log and if you can't solve the problem send the file to speed-dreams-users@lists.sourceforge.net with the subject \"Speed Dreams compilation problem\"]))
+@@ -141,7 +140,7 @@
+ AC_CHECK_LIB(glut, glutSwapBuffers,,AC_MSG_ERROR([Can't find libglut. freeglut can be found on http://freeglut.sourceforge.net/]))
+
+ dnl Checks for plib libraries.
+-LDFLAGS="$LDFLAGS -lplibjs"
++AC_CHECK_LIB(plibjs, main,,AC_MSG_ERROR([Can't find libplibjs. PLIB can be found on http://plib.sourceforge.net/]))
+ AC_CHECK_LIB(plibul, main,,AC_MSG_ERROR([Can't find libplibul. PLIB can be found on http://plib.sourceforge.net/]))
+ AC_CHECK_LIB(plibsg, main,,AC_MSG_ERROR([Can't find libplibsg. PLIB can be found on http://plib.sourceforge.net/]))
+ AC_CHECK_LIB(plibsl, main,,AC_MSG_ERROR([Can't find libplibsl. PLIB can be found on http://plib.sourceforge.net/]))
+--- Make-default.mk
++++ Make-default.mk
+@@ -402,7 +402,7 @@
+ ifdef PROGRAM
+
+ ${PROGRAM}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${SOLIBS} ${EXT_LIBS} -o $@
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ installprogram: ${PROGRAM}
+ @ createdir="${INSTLIBBASE}" ; \
+@@ -420,14 +420,14 @@
+ ifdef LOCALTOOLS
+
+ ${LOCALTOOLS}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${EXT_LIBS} ${SOLIBS} -o $@
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ endif
+
+ ifdef TOOLS
+
+ ${TOOLS}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${EXT_LIBS} ${SOLIBS} -o $@
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ installtools: ${TOOLS}
+ @createdir="${INSTBINBASE}/${TOOLSDIR}" ; \
+@@ -478,7 +478,7 @@
+ ifdef SOLIBRARY
+
+ ${SOLIBRARY}: ${OBJECTS}
+- ${CXX} -shared -o ${SOLIBRARY} ${OBJECTS} ${LDFLAGS} ${LIBSPATH} ${LIBS} ${DEBUG_LIBS}
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -shared -o ${SOLIBRARY} ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+ @D=`pwd` ; \
+ createdir="${EXPORTBASE}/lib" ; \
+ $(mkinstalldirs) $$createdir ; \
+@@ -509,7 +509,7 @@
+ ifdef MODULE
+
+ ${MODULE}: ${OBJECTS}
+- ${CXX} -shared -o ${MODULE} ${OBJECTS} ${LDFLAGS} ${LIBSPATH} ${LIBS}
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -shared -o ${MODULE} ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+ @D=`pwd` ; \
+ createdir="${EXPORTBASE}/${MODULEDIR}" ; \
+ $(mkinstalldirs) $$createdir ; \
+--- src/libs/client/Makefile
++++ src/libs/client/Makefile
+@@ -23,6 +23,8 @@
+ SOURCES = entry.cpp mainmenu.cpp splash.cpp exitmenu.cpp \
+ optionmenu.cpp
+
++SOLIBS = -lconfscreens -lraceengine
++
+ LIBS = -lplibssg -lplibsg -lplibul
+
+ EXPDIR = include
+--- src/libs/Makefile
++++ src/libs/Makefile
+@@ -23,7 +23,7 @@
+
+ TOOLSUBDIRS = txml
+
+-SUBDIRS = confscreens racescreens robottools txml tgf tgfclient client raceengineclient learning \
++SUBDIRS = confscreens racescreens robottools txml tgf tgfclient raceengineclient client learning \
+ portability math
+
+ PKGSUBDIRS = $(SUBDIRS)
+--- src/libs/raceengineclient/Makefile
++++ src/libs/raceengineclient/Makefile
+@@ -23,6 +23,8 @@
+ SOURCES = singleplayer.cpp raceinit.cpp racemain.cpp racemanmenu.cpp racestate.cpp racegl.cpp \
+ raceengine.cpp raceresults.cpp
+
++SOLIBS = -lconfscreens -lrobottools -lracescreens
++
+ EXPDIR = include
+
+ EXPORTS = singleplayer.h raceinit.h
+--- src/libs/tgf/Makefile
++++ src/libs/tgf/Makefile
+@@ -29,6 +29,7 @@
+ profiler.cpp \
+ hash.cpp
+
++SOLIBS = -ltxml
+
+ EXPDIR = include
+
diff --git a/games-sports/speed-dreams/files/speed-dreams-1.4.0-automake.patch b/games-sports/speed-dreams/files/speed-dreams-1.4.0-automake.patch
new file mode 100644
index 000000000000..56f9b9bab642
--- /dev/null
+++ b/games-sports/speed-dreams/files/speed-dreams-1.4.0-automake.patch
@@ -0,0 +1,35 @@
+--- configure.in.old 2012-03-13 08:15:34.891163505 +0100
++++ configure.in 2012-03-13 08:18:40.154092687 +0100
+@@ -14,9 +14,10 @@
+ #
+ ##############################################################################
+
+-AC_INIT(Make-config.in)
++AC_INIT([speed-dreams], [1.4.0-r2307])
++AC_CONFIG_SRCDIR([Make-config.in])
+ AC_CONFIG_HEADERS(config.h)
+-AM_INIT_AUTOMAKE(speed-dreams, 1.4.0-r2307)
++AC_DEFINE(VERSION, ["1.4.0-r2307"], [Version])
+
+ dnl Checks for programs.
+ AC_PROG_CC
+--- Makefile.old 2012-03-13 10:43:30.563720337 +0100
++++ Makefile 2012-03-13 10:44:26.339794119 +0100
+@@ -88,17 +88,7 @@
+ -include ${MAKE_DEFAULT}
+
+ Make-config: configure Make-config.in
+- rm -f config.status config.log config.cache
+ ./configure
+- rm -f config.status config.log config.cache
+-
+-configure: configure.in config.h.in aclocal.m4
+- rm -f config.status config.log config.cache
+- autoheader
+- autoconf
+-
+-aclocal.m4: acinclude.m4
+- aclocal
+
+ distclean: clean
+ rm -f config.status config.log config.cache
diff --git a/games-sports/speed-dreams/files/speed-dreams-1.4.0-libpng15.patch b/games-sports/speed-dreams/files/speed-dreams-1.4.0-libpng15.patch
new file mode 100644
index 000000000000..6b09ce2a41c8
--- /dev/null
+++ b/games-sports/speed-dreams/files/speed-dreams-1.4.0-libpng15.patch
@@ -0,0 +1,20 @@
+--- a/src/libs/tgfclient/img.cpp
++++ b/src/libs/tgfclient/img.cpp
+@@ -98,7 +98,7 @@
+ return (unsigned char *)NULL;
+ }
+
+- if (setjmp(png_ptr->jmpbuf))
++ if (setjmp(png_jmpbuf(png_ptr)))
+ {
+ /* Free all of the memory associated with the png_ptr and info_ptr */
+ png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
+@@ -229,7 +229,7 @@
+ return -1;
+ }
+
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ fclose(fp);
+ return -1;
diff --git a/games-sports/speed-dreams/metadata.xml b/games-sports/speed-dreams/metadata.xml
new file mode 100644
index 000000000000..7f5789ee7fb3
--- /dev/null
+++ b/games-sports/speed-dreams/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>
+ <use>
+ <flag name="xrandr">Enable support for the X xrandr extension</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">speed-dreams</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/speed-dreams/speed-dreams-1.4.0.ebuild b/games-sports/speed-dreams/speed-dreams-1.4.0.ebuild
new file mode 100644
index 000000000000..a45859f1808f
--- /dev/null
+++ b/games-sports/speed-dreams/speed-dreams-1.4.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils versionator games
+
+DESCRIPTION="A fork of the famous open racing car simulator TORCS"
+HOMEPAGE="http://speed-dreams.sourceforge.net/"
+SRC_URI="mirror://sourceforge/speed-dreams/${P}-r2307-src.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="xrandr"
+
+RDEPEND="virtual/opengl
+ virtual/glu
+ media-libs/freeglut
+ media-libs/openal
+ media-libs/freealut
+ x11-libs/libX11
+ x11-libs/libXxf86vm
+ xrandr? ( x11-libs/libXrandr )
+ sys-libs/zlib
+ >=media-libs/libpng-1.2.40"
+DEPEND="${RDEPEND}
+ >=media-libs/plib-1.8.3
+ x11-proto/xproto
+ x11-libs/libXext
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXt
+ x11-libs/libXi
+ x11-libs/libXmu
+ x11-libs/libXrender
+ xrandr? ( x11-proto/randrproto )"
+
+S=${WORKDIR}/${PN}-$(get_version_component_range 1-3)-src
+
+src_prepare() {
+ # http://sourceforge.net/apps/trac/speed-dreams/ticket/111
+ MAKEOPTS="${MAKEOPTS} -j1"
+
+ epatch \
+ "${FILESDIR}"/${P}-asneeded.patch \
+ "${FILESDIR}"/${P}-automake.patch \
+ "${FILESDIR}"/${P}-libpng15.patch
+
+ sed -i \
+ -e '/ADDCFLAGS/s: -O2::' \
+ configure.in || die
+ sed -i \
+ -e '/COPYING/s:=.*:= \\:' \
+ Makefile || die
+ sed -i \
+ -e "/^datadir/s:=.*:= ${GAMES_DATADIR}/${PN}:" \
+ Make-config.in || die
+
+ eautoreconf
+}
+
+src_configure() {
+ addpredict $(echo /dev/snd/controlC? | sed 's/ /:/g')
+ [[ -e /dev/dsp ]] && addpredict /dev/dsp
+ egamesconf \
+ --prefix=/usr \
+ --bindir="${GAMES_BINDIR}" \
+ $(use_enable xrandr)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install datainstall
+
+ find "${D}" -name Makefile -exec rm -f {} +
+
+ dodoc CHANGES README TODO
+
+ newicon icon.svg ${PN}.svg
+ make_desktop_entry ${PN} "Speed Dreams"
+
+ prepgamesdirs
+}
diff --git a/games-sports/stormbaancoureur/Manifest b/games-sports/stormbaancoureur/Manifest
new file mode 100644
index 000000000000..616e3e262109
--- /dev/null
+++ b/games-sports/stormbaancoureur/Manifest
@@ -0,0 +1 @@
+DIST stormbaancoureur-2.1.6.tar.gz 3976459 SHA256 c6bd67695734fd430ce8e8d744710531ed4dae1bc78d5cd0529af930144e7903 SHA512 af949efc966aa088e75aadae27cd6b7e4e342d3fa00563a756ce6fb90b0ea64071f2e85087644fb6472db81c6a92584b485c5dcc71653cc54d90231e60bafd08 WHIRLPOOL 56917ebaa653ebb4271234f6e8fd0af96c246063e2f6eb4227055250b4e3f67ea6d4a64b1141b05a8546b4f6c4d085ba6935b77d48343921a87c8926e34a289a
diff --git a/games-sports/stormbaancoureur/files/stormbaancoureur-2.1.6-gentoo.patch b/games-sports/stormbaancoureur/files/stormbaancoureur-2.1.6-gentoo.patch
new file mode 100644
index 000000000000..07413ecb5448
--- /dev/null
+++ b/games-sports/stormbaancoureur/files/stormbaancoureur-2.1.6-gentoo.patch
@@ -0,0 +1,110 @@
+--- stormbaancoureur-2.1.6.orig/src-stormbaancoureur/Makefile
++++ stormbaancoureur-2.1.6/src-stormbaancoureur/Makefile
+@@ -5,21 +5,21 @@
+ GLPREFIX=/usr
+ PLIBPREFIX=/usr
+ ODEPREFIX=/usr
+-CXX=g++
+ LIBDIRNAME=lib
+
+ # END OF CUSTOM SETTINGS
+
+-CXXFLAGS=\
++LCXXFLAGS:=\
+ -I$(GLPREFIX)/include \
+ -I$(ODEPREFIX)/include \
+ -I$(PLIBPREFIX)/include \
+ -I../src-common \
+ -I. \
+ -DGAMEVERSION=$(VERSION) \
+- -O2 -g -Wall
++ $(shell ode-config --cflags) \
++ $(CXXFLAGS)
+
+-LFLAGS=\
++LFLAGS= $(LDFLAGS) \
+ -L$(PLIBPREFIX)/$(LIBDIRNAME) \
+ -L/usr/X11R6/$(LIBDIRNAME)
+
+@@ -39,7 +38,7 @@
+
+
+ LIBS=\
+- $(ODEPREFIX)/$(LIBDIRNAME)/libode.a \
++ -lode \
+ -lplibssgaux -lplibssg -lplibsg -lplibpu -lplibfnt -lplibul \
+ -lglut -lGLU -lGL -lasound
+
+@@ -47,41 +46,41 @@
+ all: stormbaancoureur
+
+
+-stormbaancoureur: $(OBJS) $(ODEPREFIX)/$(LIBDIRNAME)/libode.a
++stormbaancoureur: $(OBJS)
+ $(CXX) -o stormbaancoureur $(OBJS) $(LFLAGS) $(LIBS)
+
+ staticworldobject.o: ../src-common/staticworldobject.cxx ../src-common/staticworldobject.h ../src-common/worldobject.h
+- $(CXX) -c $(CXXFLAGS) ../src-common/staticworldobject.cxx
++ $(CXX) -c $(LCXXFLAGS) ../src-common/staticworldobject.cxx
+
+ dynamicobject.o: ../src-common/dynamicobject.cxx ../src-common/dynamicobject.h ../src-common/worldobject.h
+- $(CXX) -c $(CXXFLAGS) ../src-common/dynamicobject.cxx
++ $(CXX) -c $(LCXXFLAGS) ../src-common/dynamicobject.cxx
+
+ carobject.o: carobject.cxx carobject.h
+- $(CXX) -c $(CXXFLAGS) carobject.cxx
++ $(CXX) -c $(LCXXFLAGS) carobject.cxx
+
+ controllerpad.o: controllerpad.cxx controller.h ../src-common/joydb.h
+- $(CXX) -c $(CXXFLAGS) controllerpad.cxx
++ $(CXX) -c $(LCXXFLAGS) controllerpad.cxx
+
+ controllerkey.o: controllerkey.cxx
+- $(CXX) -c $(CXXFLAGS) controllerkey.cxx
++ $(CXX) -c $(LCXXFLAGS) controllerkey.cxx
+
+ intro.o: intro.cxx intro.h
+- $(CXX) -c $(CXXFLAGS) intro.cxx
++ $(CXX) -c $(LCXXFLAGS) intro.cxx
+
+ vectortext.o: ../src-common/vectortext.cxx ../src-common/vectortext.h
+- $(CXX) -c $(CXXFLAGS) ../src-common/vectortext.cxx
++ $(CXX) -c $(LCXXFLAGS) ../src-common/vectortext.cxx
+
+ postscore.o: postscore.cxx postscore.h
+- $(CXX) -c $(CXXFLAGS) postscore.cxx
++ $(CXX) -c $(LCXXFLAGS) postscore.cxx
+
+ soundenginealsa.o: ../src-common/soundenginealsa.cxx ../src-common/soundenginealsa.h ../src-common/soundfeed.h ../src-common/soundclip.h
+- $(CXX) -c $(CXXFLAGS) ../src-common/soundenginealsa.cxx
++ $(CXX) -c $(LCXXFLAGS) ../src-common/soundenginealsa.cxx
+
+ ogl.o: ../src-common/ogl.cxx
+- $(CXX) -c $(CXXFLAGS) ../src-common/ogl.cxx
++ $(CXX) -c $(LCXXFLAGS) ../src-common/ogl.cxx
+
+ main.o: main.cxx ../src-common/usercam.h ../src-common/trackingcam.h ../src-common/soundenginealsa.h cratewall.h controller.h intro.h plodegui.h doorstand.h carpettrack.h spikejump.h ferriswheel.h turntable.h sturmbahn.h ../src-common/modelmap.h starsky.h carobject.h respawnpoint.h
+- $(CXX) -c $(CXXFLAGS) main.cxx
++ $(CXX) -c $(LCXXFLAGS) main.cxx
+
+ debugrun: stormbaancoureur
+ PLODE_DATADIR=`pwd` gdb ./stormbaancoureur
+--- stormbaancoureur-2.1.6.orig/src-stormbaancoureur/main.cxx
++++ stormbaancoureur-2.1.6/src-stormbaancoureur/main.cxx
+@@ -836,15 +836,7 @@
+ fprintf(stderr,"plib is (c) by Steve Baker\n");
+ fprintf(stderr,"OpenDE is (c) by Russel L. Smith\n");
+
+- char *bindirname = dirname(argv[0]);
+- if (!strcmp(bindirname,"."))
+- dirprefix="/usr/share/games/stormbaancoureur";
+- else
+- {
+- dirprefix = dirname(bindirname) + std::string("/share/games/stormbaancoureur");
+- }
+- if (getenv("PLODE_DATADIR"))
+- dirprefix = getenv("PLODE_DATADIR");
++ dirprefix="GENTOODIR";
+ if (getenv("PLODE_DISPLAYMODE"))
+ displaymode = getenv("PLODE_DISPLAYMODE");
+ assert(displaymode == "monoscopic" || displaymode == "quadbufferstereoscopic" || displaymode == "passivestereoscopic");
diff --git a/games-sports/stormbaancoureur/metadata.xml b/games-sports/stormbaancoureur/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-sports/stormbaancoureur/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-sports/stormbaancoureur/stormbaancoureur-2.1.6.ebuild b/games-sports/stormbaancoureur/stormbaancoureur-2.1.6.ebuild
new file mode 100644
index 000000000000..6541d22fb014
--- /dev/null
+++ b/games-sports/stormbaancoureur/stormbaancoureur-2.1.6.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 games
+
+DESCRIPTION="Simulated obstacle course for automobiles"
+HOMEPAGE="http://www.stolk.org/stormbaancoureur/"
+SRC_URI="http://www.stolk.org/stormbaancoureur/download/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+DEPEND="virtual/opengl
+ virtual/glu
+ media-libs/freeglut
+ >=dev-games/ode-0.8
+ >=media-libs/plib-1.8.4
+ media-libs/alsa-lib"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}/${P}/src-${PN}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+ sed -ie "s:GENTOODIR:${GAMES_DATADIR}/${PN}:" main.cxx || die
+}
+
+src_install() {
+ dogamesbin ${PN}
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r images/ models/ sounds/ shaders/
+ dodoc JOYSTICKS README TODO
+ make_desktop_entry ${PN} "Stormbaan Coureur"
+ prepgamesdirs
+}
diff --git a/games-sports/torcs/Manifest b/games-sports/torcs/Manifest
new file mode 100644
index 000000000000..d1defc2be57a
--- /dev/null
+++ b/games-sports/torcs/Manifest
@@ -0,0 +1 @@
+DIST torcs-1.3.6.tar.bz2 477954437 SHA256 193cb1820170eb18335dffeaa345499229a4b7972a78acbfaca197597a3075af SHA512 4116c920b92ecbf5dcd3f14a137e86685651167f68725f2ad4549b2d3d20e3dc54569685925e08ffff6e7e19e532ecb1a95ec77dfe22a542a26c9e006b0c8c0d WHIRLPOOL 41579dc91f3df9950a9808d7c858f736b0218a781bf8565914097edca4ba2918ea6f5434335f5f6fae488d391bbce2f7c68be613fbd95825575497d093124f10
diff --git a/games-sports/torcs/files/torcs-1.3.6-as-needed.patch b/games-sports/torcs/files/torcs-1.3.6-as-needed.patch
new file mode 100644
index 000000000000..d848538c07ea
--- /dev/null
+++ b/games-sports/torcs/files/torcs-1.3.6-as-needed.patch
@@ -0,0 +1,96 @@
+--- torcs-1.3.6.orig/Make-default.mk
++++ torcs-1.3.6/Make-default.mk
+@@ -402,7 +402,7 @@
+ ifdef PROGRAM
+
+ ${PROGRAM}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${SOLIBS} ${EXT_LIBS} -o $@
++ ${CXX} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ installprogram: ${PROGRAM}
+ @ createdir="${INSTLIBBASE}" ; \
+@@ -420,14 +420,14 @@
+ ifdef LOCALTOOLS
+
+ ${LOCALTOOLS}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${EXT_LIBS} ${SOLIBS} -o $@
++ ${CXX} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ endif
+
+ ifdef TOOLS
+
+ ${TOOLS}: ${OBJECTS} $(subst -l,${EXPORTBASE}/lib/lib, ${LIBS:=.a})
+- ${CXX} ${OBJECTS} ${LDFLAGS} ${LIBS} ${EXT_LIBS} ${SOLIBS} -o $@
++ ${CXX} ${LDFLAGS} -o $@ ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+
+ installtools: ${TOOLS}
+ @createdir="${INSTBINBASE}/${TOOLSDIR}" ; \
+@@ -478,7 +478,7 @@
+ ifdef SOLIBRARY
+
+ ${SOLIBRARY}: ${OBJECTS}
+- ${CXX} -shared -o ${SOLIBRARY} ${OBJECTS} ${SOLIBS} ${LDFLAGS} ${LIBSPATH} ${LIBS} ${DEBUG_LIBS}
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -shared -o ${SOLIBRARY} ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+ @D=`pwd` ; \
+ createdir="${EXPORTBASE}/lib" ; \
+ $(mkinstalldirs) $$createdir ; \
+@@ -509,7 +509,7 @@
+ ifdef MODULE
+
+ ${MODULE}: ${OBJECTS}
+- ${CXX} -shared -o ${MODULE} ${OBJECTS} ${LDFLAGS} ${LIBSPATH} ${LIBS}
++ ${CXX} ${CXXFLAGS} ${LDFLAGS} -shared -o ${MODULE} ${OBJECTS} ${SOLIBS} ${LIBS} ${EXT_LIBS}
+ @D=`pwd` ; \
+ createdir="${EXPORTBASE}/${MODULEDIR}" ; \
+ $(mkinstalldirs) $$createdir ; \
+--- torcs-1.3.6.orig/configure.in
++++ torcs-1.3.6/configure.in
+@@ -123,11 +123,11 @@
+ AC_CHECK_LIB(Xxf86vm, XF86VidModeSetViewPort,,AC_MSG_ERROR([Can't find libXxf86vm. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ AC_CHECK_LIB(Xrender, XRenderSetSubpixelOrder,,AC_MSG_ERROR([Can't find libXrender. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ AC_CHECK_LIB(Xrandr, XRRQueryVersion,,AC_MSG_ERROR([Can't find libXrandr. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+-AC_CHECK_LIB(openal, alEnable, LDFLAGS="$LDFLAGS -lopenal", AC_MSG_ERROR([Can't find AL/al.h. OpenAL can be found on http://www.openal.org/]))
++AC_CHECK_LIB(openal, alEnable, LIBS="$LIBS -lopenal", AC_MSG_ERROR([Can't find AL/al.h. OpenAL can be found on http://www.openal.org/]))
+ AC_CHECK_LIB(alut, alutLoadWAVFile,
+- LDFLAGS="$LDFLAGS -lalut",
+- LDFLAGS="$LDFLAGS")
+-AC_CHECK_LIB(vorbisfile, ov_fopen, LDFLAGS="$LDFLAGS -lvorbisfile", AC_MSG_ERROR([Can't find libvorbis.]))
++ LIBS="$LIBS -lalut", )
++AC_CHECK_LIB(vorbisfile, ov_fopen, LIBS="$LIBS -lvorbisfile", AC_MSG_ERROR([Can't find libvorbis.]))
++
+
+ AC_CHECK_LIB(dl, dlopen)
+ AC_CHECK_FUNC(dlopen,,AC_MSG_ERROR([Can't find dlopen function. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+--- torcs-1.3.6.orig/src/libs/Makefile
++++ torcs-1.3.6/src/libs/Makefile
+@@ -23,7 +23,7 @@
+
+ TOOLSUBDIRS = txml
+
+-SUBDIRS = confscreens racescreens robottools txml tgf tgfclient client raceengineclient learning \
++SUBDIRS = confscreens racescreens robottools txml tgf tgfclient raceengineclient client learning \
+ portability math musicplayer
+
+ PKGSUBDIRS = $(SUBDIRS)
+--- torcs-1.3.6.orig/src/libs/client/Makefile
++++ torcs-1.3.6/src/libs/client/Makefile
+@@ -23,6 +23,8 @@
+ SOURCES = entry.cpp mainmenu.cpp splash.cpp exitmenu.cpp \
+ optionmenu.cpp
+
++SOLIBS = -lconfscreens -lraceengine
++
+ LIBS = -lplibssg -lplibsg -lplibul
+
+ EXPDIR = include
+--- torcs-1.3.6.orig/src/libs/tgf/Makefile
++++ torcs-1.3.6/src/libs/tgf/Makefile
+@@ -29,6 +29,7 @@
+ profiler.cpp \
+ hash.cpp
+
++SOLIBS = -ltxml
+
+ EXPDIR = include
+
diff --git a/games-sports/torcs/files/torcs-1.3.6-flags.patch b/games-sports/torcs/files/torcs-1.3.6-flags.patch
new file mode 100644
index 000000000000..5f11fd270ef1
--- /dev/null
+++ b/games-sports/torcs/files/torcs-1.3.6-flags.patch
@@ -0,0 +1,14 @@
+respect cflags
+
+--- torcs-1.3.6/configure.in
++++ torcs-1.3.6/configure.in
+@@ -50,8 +50,7 @@
+ ADDCFLAGS="-Wall -fPIC -fno-strict-aliasing"
+ AC_ARG_ENABLE(debug,
+ [ --enable-debug set the debug mode],
+- ADDCFLAGS="$ADDCFLAGS -g -DDEBUG -DDEBUG_OUT",
+- ADDCFLAGS="$ADDCFLAGS -O2")
++ ADDCFLAGS="$ADDCFLAGS -g -DDEBUG -DDEBUG_OUT")
+
+ AC_ARG_ENABLE(xrandr,
+ [ --disable-xrandr reset the XRANDR mode],
diff --git a/games-sports/torcs/files/torcs-1.3.6-no-automake.patch b/games-sports/torcs/files/torcs-1.3.6-no-automake.patch
new file mode 100644
index 000000000000..9b47bfb9a64c
--- /dev/null
+++ b/games-sports/torcs/files/torcs-1.3.6-no-automake.patch
@@ -0,0 +1,21 @@
+torcs doesn't use automake, so it shouldn't be calling the macro
+
+http://bugs.gentoo.org/408473
+
+--- torcs-1.3.6.orig/configure.in
++++ torcs-1.3.6/configure.in
+@@ -15,9 +15,12 @@
+ #
+ ##############################################################################
+
+-AC_INIT(Make-config.in)
++AC_INIT(torcs, 1.3.6)
+ AC_CONFIG_HEADERS(config.h)
+-AM_INIT_AUTOMAKE(torcs, 1.3.6)
++dnl Workaround code using old VERSION instead of new PACKAGE_VERSION
++VERSION=$PACKAGE_VERSION
++AC_DEFINE_UNQUOTED([VERSION], "$VERSION", [old VERSION workaround])
++AC_SUBST(VERSION)
+
+ dnl Checks for programs.
+ AC_PROG_CC
diff --git a/games-sports/torcs/files/torcs-1.3.6-noXmuXt.patch b/games-sports/torcs/files/torcs-1.3.6-noXmuXt.patch
new file mode 100644
index 000000000000..6f4a2e406223
--- /dev/null
+++ b/games-sports/torcs/files/torcs-1.3.6-noXmuXt.patch
@@ -0,0 +1,15 @@
+--- configure.in.old
++++ configure.in
+@@ -116,12 +116,8 @@
+ AC_CHECK_LIB(ICE, IceSetIOErrorHandler,,AC_MSG_ERROR([Can't find libICE. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ dnl Replace `main' with a function in -lSM:
+ AC_CHECK_LIB(SM, SmsSetErrorHandler,,AC_MSG_ERROR([Can't find libSM. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+-dnl Replace `main' with a function in -lXt:
+-AC_CHECK_LIB(Xt, XtDisplay,,AC_MSG_ERROR([Can't find libXt. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ dnl Replace `main' with a function in -lXi:
+ AC_CHECK_LIB(Xi, XOpenDevice,,AC_MSG_ERROR([Can't find libXi. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+-dnl Replace `main' with a function in -lXmu:
+-AC_CHECK_LIB(Xmu, XmuSimpleErrorHandler,,AC_MSG_ERROR([Can't find libXmu. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ AC_CHECK_LIB(Xxf86vm, XF86VidModeSetViewPort,,AC_MSG_ERROR([Can't find libXxf86vm. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ AC_CHECK_LIB(Xrender, XRenderSetSubpixelOrder,,AC_MSG_ERROR([Can't find libXrender. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
+ AC_CHECK_LIB(Xrandr, XRRQueryVersion,,AC_MSG_ERROR([Can't find libXrandr. Please check config.log and if you can't solve the problem send the file to torcs-users@lists.sourceforge.net with the subject \"torcs compilation problem\"]))
diff --git a/games-sports/torcs/metadata.xml b/games-sports/torcs/metadata.xml
new file mode 100644
index 000000000000..383b10b59a65
--- /dev/null
+++ b/games-sports/torcs/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">torcs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/torcs/torcs-1.3.6.ebuild b/games-sports/torcs/torcs-1.3.6.ebuild
new file mode 100644
index 000000000000..4c01238e2991
--- /dev/null
+++ b/games-sports/torcs/torcs-1.3.6.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 autotools eutils multilib games
+
+DESCRIPTION="The Open Racing Car Simulator"
+HOMEPAGE="http://torcs.sourceforge.net/"
+SRC_URI="mirror://sourceforge/torcs/${P}.tar.bz2"
+
+LICENSE="GPL-2 FreeArt"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="media-libs/freealut
+ media-libs/freeglut
+ media-libs/libpng:0
+ media-libs/libvorbis:=
+ media-libs/openal
+ >=media-libs/plib-1.8.5
+ sys-libs/zlib:0=
+ virtual/opengl
+ virtual/glu
+ x11-libs/libX11
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ x11-proto/xf86vidmodeproto"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-no-automake.patch \
+ "${FILESDIR}"/${P}-as-needed.patch \
+ "${FILESDIR}"/${P}-flags.patch \
+ "${FILESDIR}"/${P}-noXmuXt.patch
+ eautoreconf
+ ecvs_clean
+}
+
+src_configure() {
+ addpredict $(echo /dev/snd/controlC? | sed 's/ /:/g')
+ [[ -e /dev/dsp ]] && addpredict /dev/dsp
+ egamesconf \
+ --datadir="${GAMES_DATADIR_BASE}" \
+ --x-libraries=/usr/$(get_libdir) \
+ --enable-xrandr
+}
+
+src_compile() {
+ # So ugly... patches welcome.
+ emake -j1
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install datainstall
+ newicon Ticon.png ${PN}.png
+ make_desktop_entry ${PN} TORCS
+ dodoc README doc/history/history.txt
+ doman doc/man/*.6
+ dohtml -r doc/faq/faq.html doc/tutorials doc/userman
+ prepgamesdirs
+}
diff --git a/games-sports/toycars/Manifest b/games-sports/toycars/Manifest
new file mode 100644
index 000000000000..c2b7f78106d2
--- /dev/null
+++ b/games-sports/toycars/Manifest
@@ -0,0 +1 @@
+DIST toycars-0.3.10.tar.gz 6390760 SHA256 8ead77f160128231e909e9c34dc158cbffe5917eb13effcfda4712484d609658 SHA512 48de5b4fccd39058bb32a6b4f4514d1d25ddcb3e39ac72798162a29975d0d6fe48ef1324237f7096edda7c3f927ad620679fa8b3e42be2e05f1293ed9358982e WHIRLPOOL 36ac699c136eec7b7b9583c4c5a1c307654c28ac5355172e4084e0bee9111f6966b2e551756dbed8385385efa70a2b32e664000ab588b959f5e8fc497d0274b0
diff --git a/games-sports/toycars/files/toycars-0.3.10-gcc45.patch b/games-sports/toycars/files/toycars-0.3.10-gcc45.patch
new file mode 100644
index 000000000000..0e4f350a89dd
--- /dev/null
+++ b/games-sports/toycars/files/toycars-0.3.10-gcc45.patch
@@ -0,0 +1,37 @@
+Fixing compilation with gcc-4.5
+
+http://bugs.gentoo.org/show_bug.cgi?id=317751
+
+Patch written by Kacper Kowalik <xarthisius.kk@gmail.com>
+
+--- toycars_vehicle_editor/src/VehicleEditorUI.cxx
++++ toycars_vehicle_editor/src/VehicleEditorUI.cxx
+@@ -228,7 +228,7 @@
+ sprintf(str, "%d", n);
+ convexChoice->add(str);
+ convexChoice->value(n);
+-vehicleObj.getGeometry()->push_back(std::list<Vec2D>::list());
++vehicleObj.getGeometry()->push_back(std::list<Vec2D>());
+ spriteView->setConvexChoice(n);
+ spriteView->redraw();
+ }
+--- toycars_vehicle_editor/src/VehicleObject.cpp
++++ toycars_vehicle_editor/src/VehicleObject.cpp
+@@ -152,7 +152,7 @@
+ short count;
+ geometry.clear();
+ for (xConvex = xGeometry->FirstChild(); xConvex != NULL; xConvex = xConvex->NextSibling("convex")) {
+- geometry.push_back(std::list<Vec2D>::list());
++ geometry.push_back(std::list<Vec2D>());
+ std::list<Vec2D> &convex = geometry.back();
+ readPointsFromString(xConvex->FirstChild()->ToText()->Value(), convex, count);
+ }
+@@ -411,7 +411,7 @@
+ short count;
+ geometry.clear();
+ for (xConvex = xGeometry->FirstChild(); xConvex != NULL; xConvex = xConvex->NextSibling("convex")) {
+- geometry.push_back(std::list<Vec2D>::list());
++ geometry.push_back(std::list<Vec2D>());
+ std::list<Vec2D> &convex = geometry.back();
+ readPointsFromString(xConvex->FirstChild()->ToText()->Value(), convex, count);
+ }
diff --git a/games-sports/toycars/files/toycars-0.3.10-gcc46.patch b/games-sports/toycars/files/toycars-0.3.10-gcc46.patch
new file mode 100644
index 000000000000..127b75920322
--- /dev/null
+++ b/games-sports/toycars/files/toycars-0.3.10-gcc46.patch
@@ -0,0 +1,10 @@
+--- toycars/src/MyFisix/Convex.h.old 2011-04-09 21:17:43.000000000 +0200
++++ toycars/src/MyFisix/Convex.h 2011-04-09 21:18:22.000000000 +0200
+@@ -21,6 +21,7 @@
+ #include "config.h"
+ #endif
+
++#include <cstddef>
+ #include <list>
+ using namespace std;
+
diff --git a/games-sports/toycars/files/toycars-0.3.10-glibc-2.10.patch b/games-sports/toycars/files/toycars-0.3.10-glibc-2.10.patch
new file mode 100644
index 000000000000..e3c184724c6d
--- /dev/null
+++ b/games-sports/toycars/files/toycars-0.3.10-glibc-2.10.patch
@@ -0,0 +1,101 @@
+diff --git a/toycars_track_editor/src/TrackView.cxx b/toycars_track_editor/src/TrackView.cxx
+index d52daba..e1a66df 100644
+--- a/toycars_track_editor/src/TrackView.cxx
++++ b/toycars_track_editor/src/TrackView.cxx
+@@ -89,7 +89,7 @@ TiXmlDocument *findXMLFile(const char *filename, SearchDirectories *dirs, char *
+ //{jpg,png,bmp,pnm,pbm,pgm,ppm}
+ Fl_Image* loadImage(const char *filename)
+ {
+- char *suffix = strrchr(filename, '.');
++ const char *suffix = strrchr(filename, '.');
+ if (suffix == NULL)
+ return NULL;
+ if (strcmp(suffix,".jpg") == 0)
+@@ -969,13 +969,13 @@ void TrackView::installMap(const char *name)
+ uninstallMap(name);
+
+ // chop off any .xml suffix
+- temp = strrchr(name, '.');
++ temp = const_cast<char*>( strrchr(name, '.') );
+ if (temp) {
+ if (strcmp(temp, ".xml") == 0)
+ temp[0] = '\0';
+ }
+ // remove path
+- temp = strrchr(name, '/');
++ temp = const_cast<char*>( strrchr(name, '/') );
+ if (temp) {
+ strncpy(trackname, temp+1, 255);
+ }
+@@ -1044,13 +1044,13 @@ void TrackView::uninstallMap(const char *name)
+ char *temp;
+
+ // chop off any .xml suffix
+- temp = strrchr(name, '.');
++ temp = const_cast<char*>( strrchr(name, '.') );
+ if (temp) {
+ if (strcmp(temp, ".xml") == 0)
+ temp[0] = '\0';
+ }
+ // remove path
+- temp = strrchr(name, '/');
++ temp = const_cast<char*>( strrchr(name, '/') );
+ if (temp) {
+ strncpy(trackname, temp+1, 255);
+ }
+diff --git a/toycars_vehicle_editor/src/LoadSpriteFromImage.cpp b/toycars_vehicle_editor/src/LoadSpriteFromImage.cpp
+index 4b6ff50..7aa6c40 100644
+--- a/toycars_vehicle_editor/src/LoadSpriteFromImage.cpp
++++ b/toycars_vehicle_editor/src/LoadSpriteFromImage.cpp
+@@ -23,7 +23,7 @@
+ //{jpg,png,bmp,pnm,pbm,pgm,ppm}
+ Fl_Image* loadImage(const char *filename)
+ {
+- char *suffix = strrchr(filename, '.');
++ const char *suffix = strrchr(filename, '.');
+ if (suffix == NULL)
+ return NULL;
+ if (strcmp(suffix,".jpg") == 0)
+diff --git a/toycars_vehicle_editor/src/VehicleObject.cpp b/toycars_vehicle_editor/src/VehicleObject.cpp
+index 3f61114..0bd2978 100644
+--- a/toycars_vehicle_editor/src/VehicleObject.cpp
++++ b/toycars_vehicle_editor/src/VehicleObject.cpp
+@@ -533,13 +533,13 @@ void VehicleObject::installVehicle(const char *name)
+ uninstallVehicle(name);
+
+ // chop off any .xml suffix
+- temp = strrchr(name, '.');
++ temp = const_cast<char*>( strrchr(name, '.') );
+ if (temp) {
+ if (strcmp(temp, ".xml") == 0)
+ temp[0] = '\0';
+ }
+ // remove path
+- temp = strrchr(name, '/');
++ temp = const_cast<char*>( strrchr(name, '/') );
+ if (temp) {
+ strncpy(carname, temp+1, 255);
+ }
+@@ -610,13 +610,13 @@ void VehicleObject::uninstallVehicle(const char *name)
+ char *temp;
+
+ // chop off any .xml suffix
+- temp = strrchr(name, '.');
++ temp = const_cast<char*>( strrchr(name, '.') );
+ if (temp) {
+ if (strcmp(temp, ".xml") == 0)
+ temp[0] = '\0';
+ }
+ // remove path
+- temp = strrchr(name, '/');
++ temp = const_cast<char*>( strrchr(name, '/') );
+ if (temp) {
+ strncpy(carname, temp+1, 255);
+ }
+@@ -675,4 +675,4 @@ void VehicleObject::uninstallVehicle(const char *name)
+ system(str);
+ */
+ #endif
+-}
+\ No newline at end of file
++}
diff --git a/games-sports/toycars/metadata.xml b/games-sports/toycars/metadata.xml
new file mode 100644
index 000000000000..88f07eae9c7b
--- /dev/null
+++ b/games-sports/toycars/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">
+Toy Cars is a physics based 2-D racer. In Timed Race mode the aim is to complete
+four laps in the best time you can. In Hot Potato mode the aim is to avoid
+having the bomb when the fuse runs out. The bomb can be transfered between
+players if they crash into each other. In Knock 'em Out mode the aim is to
+race around the track and to try and prevent your car from going off the screen.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">toycars</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/toycars/toycars-0.3.10.ebuild b/games-sports/toycars/toycars-0.3.10.ebuild
new file mode 100644
index 000000000000..c0a9ae00d0e8
--- /dev/null
+++ b/games-sports/toycars/toycars-0.3.10.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic games
+
+DESCRIPTION="a physics based 2-D racer inspired by Micro Machines"
+HOMEPAGE="http://sourceforge.net/projects/toycars"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="media-libs/libsdl[sound,video,joystick]
+ media-libs/sdl-image[png]
+ x11-libs/fltk:1[opengl]
+ >=media-libs/fmod-4.25.07-r1:1
+ virtual/glu
+ virtual/opengl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-glibc-2.10.patch \
+ "${FILESDIR}"/${P}-gcc45.patch \
+ "${FILESDIR}"/${P}-gcc46.patch
+ mv data/tracks/Corner/{c,C}orner.map
+}
+
+src_configure() {
+ append-ldflags -L/opt/fmodex/api/lib
+ egamesconf
+}
+
+src_install() {
+ default
+ local d f
+
+ newicon toycars/celica-render.png ${PN}.png
+ make_desktop_entry ${PN} "Toy Cars"
+
+ for d in toycars toycars_track_editor toycars_vehicle_editor
+ do
+ for f in ChangeLog README TODO
+ do
+ if [[ -s $d/$f ]] ; then
+ newdoc $d/$f $d.$f
+ fi
+ done
+ done
+ prepgamesdirs
+}
diff --git a/games-sports/trigger/Manifest b/games-sports/trigger/Manifest
new file mode 100644
index 000000000000..291c41f48996
--- /dev/null
+++ b/games-sports/trigger/Manifest
@@ -0,0 +1 @@
+DIST trigger-rally-0.6.1.tar.bz2 61083932 SHA256 00b22fd290420ed7ed217c3d0bf53b46ad2eaf4c691347f4d3aaca5b1384958a SHA512 9f7e57758ffa61002efff6c7ac4d69f53ef4769651bdfdd21b6a8d101f8fd06ba7dc5998a8877146f50e6124896300e3595b4b5fff4decd53b6555e622de85bf WHIRLPOOL 8b4553a3758f915a3da7d2f6d2fc38a42338e4262e44c0f83026240546aa30e4fcf18b5810436a03e9209d14e8ed228e353c60b32d92f647adcbb0f2e72d6808
diff --git a/games-sports/trigger/metadata.xml b/games-sports/trigger/metadata.xml
new file mode 100644
index 000000000000..e8df7dee9458
--- /dev/null
+++ b/games-sports/trigger/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">trigger-rally</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/trigger/trigger-0.6.1.ebuild b/games-sports/trigger/trigger-0.6.1.ebuild
new file mode 100644
index 000000000000..a42faf645ab6
--- /dev/null
+++ b/games-sports/trigger/trigger-0.6.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+MY_PN=${PN}-rally
+MY_P=${MY_PN}-${PV}
+DESCRIPTION="Free OpenGL rally car racing game"
+HOMEPAGE="http://www.positro.net/trigger/"
+SRC_URI="mirror://sourceforge/${MY_PN}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+RDEPEND="virtual/opengl
+ virtual/glu
+ media-libs/libsdl
+ media-libs/sdl-image[jpeg,png]
+ media-libs/sdl-mixer
+ media-libs/openal
+ media-libs/freealut
+ dev-games/physfs"
+DEPEND="${RDEPEND}
+ dev-util/ftjam"
+
+S=${WORKDIR}/${MY_P}
+
+src_configure() {
+ egamesconf --datadir="${GAMES_DATADIR}"/${PN}
+}
+
+src_compile() {
+ AR="${AR} cru" jam -dx -qa || die
+}
+
+src_install() {
+ dogamesbin ${PN}
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r data/*
+ newicon data/textures/life_helmet.png ${PN}.png
+ make_desktop_entry ${PN} Trigger
+ dodoc doc/*.txt
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ elog "After running ${PN} for the first time, a config file is"
+ elog "available in ~/.trigger/trigger.config"
+}
diff --git a/games-sports/trophy/Manifest b/games-sports/trophy/Manifest
new file mode 100644
index 000000000000..2532846e95b9
--- /dev/null
+++ b/games-sports/trophy/Manifest
@@ -0,0 +1 @@
+DIST trophy-2.0.3.tar.gz 14780127 SHA256 1fc8311458f86abeae51d7b47db8f95221bea737ea782786892cc36677a97030 SHA512 40376c2a27f205421189d5fea3dc154492fae8977b62d1150c986be6fe823d0f718b61a51a2febad851fc96cf4e1b408ab9318ab32e32d685966228f51327b06 WHIRLPOOL 7ae116c433808570cec5b122cd31aebb86d26c2b8cc7654f19201160e806ce66f56b12c9587ef1dbb5d693a3f5faec0ddd0a12e93e9625c6ddc294b0390b41e1
diff --git a/games-sports/trophy/metadata.xml b/games-sports/trophy/metadata.xml
new file mode 100644
index 000000000000..d3373e892e54
--- /dev/null
+++ b/games-sports/trophy/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">trophy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/trophy/trophy-2.0.3.ebuild b/games-sports/trophy/trophy-2.0.3.ebuild
new file mode 100644
index 000000000000..b9f0e467d943
--- /dev/null
+++ b/games-sports/trophy/trophy-2.0.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils gnome2-utils games
+
+DESCRIPTION="2D Racing Game"
+HOMEPAGE="http://trophy.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="dev-games/clanlib:0.8[opengl]"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_install() {
+ default
+ doicon -s 72 "${D}${GAMES_DATADIR}"/icons/${PN}.png
+ rm -rf "${D}${GAMES_DATADIR}"/icons
+ domenu "${D}${GAMES_DATADIR}"/applications/${PN}.desktop
+ rm -rf "${D}${GAMES_DATADIR}"/applications
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-sports/ultimatestunts/Manifest b/games-sports/ultimatestunts/Manifest
new file mode 100644
index 000000000000..4a40109b6885
--- /dev/null
+++ b/games-sports/ultimatestunts/Manifest
@@ -0,0 +1 @@
+DIST ultimatestunts-srcdata-0771.tar.gz 47449346 SHA256 fcc06e4a2ff2c5c1bd937670acdb079140f3ce0efdf00578eb6559a20ebb26d3 SHA512 c532d1434570775da8e0b8156659f96dcfbdf82890f07aebbe398bdcf2039a11c832ead8106c8522af1a4a847f685727dc6f7739443a99858621995452ce4741 WHIRLPOOL d4f0d7d7b5c138a949de4aded91a37c371362394d6022546c1e596c52c040bde02d8e9dfa3aafb9ff9b6af1d8a29533100a76ae82f52e8a7113cfd8358897392
diff --git a/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-gcc-4.7.patch b/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-gcc-4.7.patch
new file mode 100644
index 000000000000..0ce375c1a86c
--- /dev/null
+++ b/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-gcc-4.7.patch
@@ -0,0 +1,16 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Sat Jul 14 20:55:35 UTC 2012
+Subject: fix compilation on gcc-4.7
+
+https://bugs.gentoo.org/show_bug.cgi?id=426612
+
+--- simulation/metaserver.cpp
++++ simulation/metaserver.cpp
+@@ -16,6 +16,7 @@
+ ***************************************************************************/
+ #include <cstdio>
+ #include <cstdlib>
++#include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
diff --git a/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-paths.patch b/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-paths.patch
new file mode 100644
index 000000000000..c9fd879b1887
--- /dev/null
+++ b/games-sports/ultimatestunts/files/ultimatestunts-0.7.7-paths.patch
@@ -0,0 +1,19 @@
+--- ultimatestunts-srcdata-0771.orig/data/Makefile.in
++++ ultimatestunts-srcdata-0771/data/Makefile.in
+@@ -358,11 +358,11 @@
+
+
+ install:
+- $(mkinstalldirs) ${usdatadir}
+- cp -r cars environment lang misc music textures textures.dat tiles tracks ${usdatadir}
+- chmod 644 ${usdatadir}/*.*
+- chmod 644 ${usdatadir}/*/*.*
+- chmod 644 ${usdatadir}/*/*/*.*
++ $(mkinstalldirs) $(DESTDIR)${usdatadir}
++ cp -r cars environment lang misc music textures textures.dat tiles tracks $(DESTDIR)${usdatadir}
++ chmod 644 $(DESTDIR)${usdatadir}/*.*
++ chmod 644 $(DESTDIR)${usdatadir}/*/*.*
++ chmod 644 $(DESTDIR)${usdatadir}/*/*/*.*
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff --git a/games-sports/ultimatestunts/metadata.xml b/games-sports/ultimatestunts/metadata.xml
new file mode 100644
index 000000000000..247ce7f667a8
--- /dev/null
+++ b/games-sports/ultimatestunts/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">ultimatestunts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/ultimatestunts/ultimatestunts-0.7.7.ebuild b/games-sports/ultimatestunts/ultimatestunts-0.7.7.ebuild
new file mode 100644
index 000000000000..f7fc3a13c46e
--- /dev/null
+++ b/games-sports/ultimatestunts/ultimatestunts-0.7.7.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic versionator games
+
+MY_P=${PN}-srcdata-$(replace_all_version_separators)1
+DESCRIPTION="Remake of the famous Stunts game"
+HOMEPAGE="http://www.ultimatestunts.nl/"
+SRC_URI="mirror://sourceforge/ultimatestunts/${MY_P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="nls"
+
+RDEPEND="media-libs/libsdl[joystick,opengl,video]
+ media-libs/sdl-image
+ >=media-libs/openal-1
+ media-libs/libvorbis
+ media-libs/freealut
+ virtual/opengl
+ virtual/glu
+ nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ sys-devel/gettext"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ esvn_clean
+ epatch "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-gcc-4.7.patch
+ append-cppflags $(sdl-config --cflags)
+}
+
+src_configure() {
+ egamesconf \
+ --with-openal \
+ $(use_enable nls)
+}
+
+src_compile() {
+ emake -C trackedit libtrackedit.a
+ emake
+}
+
+src_install() {
+ default
+ newicon data/cars/diablo/steer.png ${PN}.png
+ make_desktop_entry ustunts "Ultimate Stunts"
+ prepgamesdirs
+}
diff --git a/games-sports/vdrift/Manifest b/games-sports/vdrift/Manifest
new file mode 100644
index 000000000000..81706fcbebc0
--- /dev/null
+++ b/games-sports/vdrift/Manifest
@@ -0,0 +1,2 @@
+DIST vdrift-2012-07-22.tar.bz2 589288618 SHA256 5409feea1d9eb3d943f49ecc265b73f3283a00036e055038f5e5114dfc6113fb SHA512 eb6f243fd28e5fe46e856c37cb528c8ec903bdec91b6aa86681add79a333077a3a8874f694255913ae8492b965884f02057a95a98e37027ff67c082a8ca5527e WHIRLPOOL 7488cbc64b1fefca9d16267a623afd08b1fb2bd02af13b0c12cdbc9a2cc18f8965a796b2d8222e85826a277aaf17d8f9adda4e2b9621e6b7779fcb3546f140dd
+DIST vdrift-2012-07-22c_patch.diff 21689 SHA256 3e669ac2ce6da04548bb53b63694d21fd83cd8971e3f268031d7ffd93b79ae22 SHA512 7b82ba53f3c19ccd01de9ea64e0b7e15224219c0c614a6505b2a3f552ce78565fdedf7781a198c58606d3e9b94e594dee79097d46687e7d4fc763868204b761d WHIRLPOOL f24a7acb58d711d6bf4cda04ff4be1990c241399effdc821ecc8330bfd04a9067a048a840db9be7cabd1c6ca1b7051b003d548b87b2a1bb7d5000afdeb4e0a03
diff --git a/games-sports/vdrift/files/vdrift-20120722-build.patch b/games-sports/vdrift/files/vdrift-20120722-build.patch
new file mode 100644
index 000000000000..16b6fe4c9ba1
--- /dev/null
+++ b/games-sports/vdrift/files/vdrift-20120722-build.patch
@@ -0,0 +1,28 @@
+--- VDrift.orig/SConstruct
++++ VDrift/SConstruct
+@@ -44,6 +44,7 @@
+ LIBPATH = ['.', '#lib', LOCALBASE + '/lib'],
+ LINKFLAGS = ['-pthread','-lintl'],
+ options = opts)
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
+ check_headers = ['GL/gl.h', 'GL/glu.h', 'SDL/SDL.h', 'SDL/SDL_image.h', 'SDL/SDL_rotozoom.h', 'vorbis/vorbisfile.h', 'GL/glew.h', 'bullet/btBulletCollisionCommon.h']
+ check_libs = []
+ if 'CC' in os.environ:
+@@ -380,7 +381,7 @@
+ if env['release']:
+ # release build, debugging off, optimizations on
+ if (sys.platform != 'freebsd6') and (sys.platform != 'freebsd7') and (sys.platform != 'freebsd8') and (sys.platform != 'freebsd9') and (sys.platform != 'win32') and (sys.platform != 'cygwin'):
+- env.Append(CCFLAGS = ['-O1', '-pipe'])
++ env.Append(CCFLAGS = ['-pipe'])
+ else:
+ # debug build, lots of debugging, no optimizations
+ env.Append(CCFLAGS = ['-g3'])
+@@ -399,7 +400,6 @@
+ env.Append(CCFLAGS = ['-pg'])
+ env.Append(LINKFLAGS = ['-pg'])
+ env.Append(CCFLAGS = ['-g3'])
+- env.Append(CCFLAGS = ['-O1'])
+
+ #------------------------------------#
+ # compile-time efficiency assessment #
+
diff --git a/games-sports/vdrift/files/vdrift-20120722-bullet.patch b/games-sports/vdrift/files/vdrift-20120722-bullet.patch
new file mode 100644
index 000000000000..907433417ee6
--- /dev/null
+++ b/games-sports/vdrift/files/vdrift-20120722-bullet.patch
@@ -0,0 +1,100 @@
+--- src/cardynamics.cpp Mon Jan 19 23:26:36 1970
++++ src/cardynamics.cpp Mon Jan 19 23:26:36 1970
+@@ -1791,23 +1791,29 @@
+
+ bool CARDYNAMICS::WheelContactCallback(
+ btManifoldPoint& cp,
+- const btCollisionObject* colObj0,
+- int partId0,
++ const btCollisionObjectWrapper* col0,
++ int part0,
+ int index0,
+- const btCollisionObject* colObj1,
+- int partId1,
++ const btCollisionObjectWrapper* col1,
++ int part1,
+ int index1)
+ {
+- // cars are fracture bodies, wheel is a cylinder shape
+- const btCollisionShape* shape = colObj0->getCollisionShape();
+- if ((colObj0->getInternalType() & CO_FRACTURE_TYPE) &&
++#if (BT_BULLET_VERSION < 281)
++ const btCollisionObject* obj = col0;
++ const btCollisionShape* shape = obj->getCollisionShape();
++ const btCollisionShape* rootshape = obj->getRootCollisionShape();
++#else
++ const btCollisionObject* obj = col0->getCollisionObject();
++ const btCollisionShape* shape = col0->getCollisionShape();
++ const btCollisionShape* rootshape = obj->getCollisionShape();
++#endif
++ if ((obj->getInternalType() & CO_FRACTURE_TYPE) &&
+ (shape->getShapeType() == CYLINDER_SHAPE_PROXYTYPE))
+ {
+- // is contact within contact patch?
+- const btCompoundShape* car = static_cast<const btCompoundShape*>(colObj0->getRootCollisionShape());
+- const btCylinderShapeX* wheel = static_cast<const btCylinderShapeX*>(shape);
+- btVector3 contactPoint = cp.m_localPointA - car->getChildTransform(cp.m_index0).getOrigin();
+- if (-direction::up.dot(contactPoint) > 0.5 * wheel->getRadius())
++ const btCompoundShape* carshape = static_cast<const btCompoundShape*>(rootshape);
++ const btCylinderShapeX* wheelshape = static_cast<const btCylinderShapeX*>(shape);
++ btVector3 contactPoint = cp.m_localPointA - carshape->getChildTransform(cp.m_index0).getOrigin();
++ if (-direction::up.dot(contactPoint) > 0.5 * wheelshape->getRadius())
+ {
+ // break contact (hack)
+ cp.m_normalWorldOnB = btVector3(0, 0, 0);
+--- src/cardynamics.h Mon Jan 19 23:26:36 1970
++++ src/cardynamics.h Mon Jan 19 23:26:36 1970
+@@ -25,6 +25,12 @@
+ class FractureBody;
+ class PTree;
+
++#if (BT_BULLET_VERSION < 281)
++#define btCollisionObjectWrapper btCollisionObject
++#else
++struct btCollisionObjectWrapper;
++#endif
++
+ class CARDYNAMICS : public btActionInterface
+ {
+ friend class PERFORMANCE_TESTING;
+@@ -151,11 +157,11 @@
+
+ static bool WheelContactCallback(
+ btManifoldPoint& cp,
+- const btCollisionObject* colObj0,
+- int partId0,
++ const btCollisionObjectWrapper* col0,
++ int part0,
+ int index0,
+- const btCollisionObject* colObj1,
+- int partId1,
++ const btCollisionObjectWrapper* col1,
++ int part1,
+ int index1);
+
+ protected:
+--- src/dynamicsworld.cpp Mon Jan 19 23:26:36 1970
++++ src/dynamicsworld.cpp Mon Jan 19 23:26:36 1970
+@@ -105,7 +105,7 @@
+ int patch_id = -1;
+ const BEZIER * b = 0;
+ const TRACKSURFACE * s = TRACKSURFACE::None();
+- btCollisionObject * c = 0;
++ const btCollisionObject * c = 0;
+
+ MyRayResultCallback ray(origin, p, caster);
+ rayTest(origin, p, ray);
+@@ -221,6 +221,7 @@
+
+ void DynamicsWorld::fractureCallback()
+ {
++#if (BT_BULLET_VERSION < 281)
+ m_activeConnections.resize(0);
+
+ int numManifolds = getDispatcher()->getNumManifolds();
+@@ -268,4 +269,5 @@
+ btRigidBody* child = body->updateConnection(con_id);
+ if (child) addRigidBody(child);
+ }
++#endif
+ } \ No newline at end of file
diff --git a/games-sports/vdrift/metadata.xml b/games-sports/vdrift/metadata.xml
new file mode 100644
index 000000000000..2df986e8a880
--- /dev/null
+++ b/games-sports/vdrift/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">vdrift</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-sports/vdrift/vdrift-20120722.ebuild b/games-sports/vdrift/vdrift-20120722.ebuild
new file mode 100644
index 000000000000..14dddff12b9c
--- /dev/null
+++ b/games-sports/vdrift/vdrift-20120722.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils scons-utils games
+
+MY_P=${PN}-${PV:0:4}-${PV:4:2}-${PV:6:2}
+DESCRIPTION="A driving simulation made with drift racing in mind"
+HOMEPAGE="http://vdrift.net/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2
+ mirror://sourceforge/${PN}/${MY_P}c_patch.diff"
+
+LICENSE="GPL-3 ZLIB LGPL-2.1+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="app-arch/libarchive
+ media-libs/glew
+ media-libs/libsdl[opengl,video]
+ media-libs/sdl-gfx
+ media-libs/sdl-image[png]
+ media-libs/libvorbis
+ net-misc/curl
+ sci-physics/bullet[-double-precision]
+ virtual/opengl
+ virtual/glu"
+DEPEND="${RDEPEND}
+ dev-cpp/asio
+ dev-libs/boost
+ virtual/pkgconfig"
+
+S=${WORKDIR}/VDrift
+
+src_unpack() {
+ unpack ${MY_P}.tar.bz2
+}
+
+src_prepare() {
+ epatch \
+ "${DISTDIR}"/${MY_P}c_patch.diff \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-bullet.patch
+}
+
+src_compile() {
+ escons \
+ force_feedback=1 \
+ destdir="${D}" \
+ bindir="${GAMES_BINDIR}" \
+ datadir="${GAMES_DATADIR}"/${PN} \
+ prefix= \
+ use_binreloc=0 \
+ release=1 \
+ os_cc=1 \
+ os_cxx=1 \
+ os_cxxflags=1 \
+ || die
+}
+
+src_install() {
+ dogamesbin build/vdrift
+ insinto "${GAMES_DATADIR}/${PN}"
+ doins -r data/*
+ newicon data/textures/icons/vdrift-64x64.png ${PN}.png
+ make_desktop_entry ${PN} VDrift
+ find "${D}" -name "SCon*" -exec rm \{\} +
+ keepdir "${GAMES_DATADIR}"/${PN}/{music,settings/replays,settings/screenshots}
+ prepgamesdirs
+}
diff --git a/games-sports/xmoto/Manifest b/games-sports/xmoto/Manifest
new file mode 100644
index 000000000000..85160782182a
--- /dev/null
+++ b/games-sports/xmoto/Manifest
@@ -0,0 +1,2 @@
+DIST inksmoto-0.7.0.tar.gz 2628941 SHA256 60bd1369d4c347e127886a5813af13daf39b56ce818c9f8b2fc7d4bba0af7e11 SHA512 af0ae49ea160a2274f6835abd82ccaa00dc9ff81875b7d4ea29789388c131b519cb77e6da42efeaf51d52b97090c67320af38145204a1d5418781c99cb23a704 WHIRLPOOL e7137f1f23815cdef1061896b8dd687af38a79be341827dcaa437c39de95a98d94b4173d973899a8422c3e77088da11869957996f21c2822d8cfddf15b6a7ea6
+DIST xmoto-0.5.11-src.tar.gz 40785573 SHA256 a584a6f9292b184686b72c78f16de4b82d5c5b72ad89e41912ff50d03eca26b2 SHA512 7046745e8f7a045fa2ce1deb3fd75b73b233dc1092f5ecd6dd4e42938f70269a93a3a623a39a1f0520c90643a42dc1ce93c43ad07bf225ff6c50741cc02511f6 WHIRLPOOL 9301a6456dea420cc92706022b9003446363d90591f6c90977a1e85195419f42d168456db61077d4e757976ee7ccbb183e6337fda4a683334cea796aa65a7c3b
diff --git a/games-sports/xmoto/files/xmoto-0.5.11-utf8.patch b/games-sports/xmoto/files/xmoto-0.5.11-utf8.patch
new file mode 100644
index 000000000000..5a9c5a499f93
--- /dev/null
+++ b/games-sports/xmoto/files/xmoto-0.5.11-utf8.patch
@@ -0,0 +1,15 @@
+http://todo.xmoto.tuxfamily.org/index.php?do=details&task_id=778
+
+--- src/helpers/utf8.h.orig
++++ src/helpers/utf8.h
+@@ -18,8 +18,8 @@
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ =============================================================================*/
+
+-#ifndef __UTF8_H__
+-#define __UTF8_H__
++#ifndef __XMOTO_UTF8_H__
++#define __XMOTO_UTF8_H__
+
+ #include <vector>
+ #include <string>
diff --git a/games-sports/xmoto/metadata.xml b/games-sports/xmoto/metadata.xml
new file mode 100644
index 000000000000..c502882366e5
--- /dev/null
+++ b/games-sports/xmoto/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="editor">Depend on inkscape, scripts to convert svg to level (svg2lvl)</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-sports/xmoto/xmoto-0.5.11.ebuild b/games-sports/xmoto/xmoto-0.5.11.ebuild
new file mode 100644
index 000000000000..20aba82da881
--- /dev/null
+++ b/games-sports/xmoto/xmoto-0.5.11.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic games
+
+LVL_PV="0.7.0" #they unfortunately don't release both at the same time, why ~ as separator :(
+LVL="inksmoto-${LVL_PV}"
+DESCRIPTION="A challenging 2D motocross platform game"
+HOMEPAGE="http://xmoto.tuxfamily.org"
+SRC_URI="http://download.tuxfamily.org/xmoto/xmoto/${PV}/${P}-src.tar.gz
+ editor? ( http://download.tuxfamily.org/xmoto/svg2lvl/${LVL_PV}/${LVL}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="editor nls"
+
+RDEPEND="
+ dev-libs/libxdg-basedir
+ dev-db/sqlite:3
+ dev-games/ode
+ dev-lang/lua[deprecated]
+ virtual/jpeg
+ media-libs/libpng
+ dev-libs/libxml2
+ media-libs/libsdl[joystick,opengl]
+ media-libs/sdl-mixer[vorbis]
+ media-libs/sdl-ttf
+ media-libs/sdl-net
+ net-misc/curl
+ app-arch/bzip2
+ virtual/opengl
+ virtual/glu
+ media-fonts/dejavu
+ nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )"
+RDEPEND="${RDEPEND}
+ editor? ( media-gfx/inkscape )"
+
+src_prepare() {
+ use editor && rm -vf "${WORKDIR}"/extensions/{bezmisc,inkex}.py
+ sed -i \
+ -e '/^gettextsrcdir/s:=.*:= @localedir@/gettext/po:' \
+ po/Makefile.in.in || die
+
+ epatch "${FILESDIR}"/${P}-utf8.patch
+}
+
+src_configure() {
+ # bug #289792
+ filter-flags -DdDOUBLE
+ has_version 'dev-games/ode[double-precision]' && append-flags -DdDOUBLE
+
+ egamesconf \
+ --disable-dependency-tracking \
+ --enable-threads=posix \
+ $(use_enable nls) \
+ --localedir=/usr/share/locale \
+ --with-localesdir=/usr/share/locale \
+ --with-renderer-sdlGfx=0 \
+ --with-renderer-openGl=1
+}
+
+src_install() {
+ default
+
+ rm -f "${D}${GAMES_DATADIR}/xmoto"/Textures/Fonts/DejaVu*.ttf
+ dosym /usr/share/fonts/dejavu/DejaVuSans.ttf "${GAMES_DATADIR}/xmoto"/Textures/Fonts/DejaVuSans.ttf
+ dosym /usr/share/fonts/dejavu/DejaVuSansMono.ttf "${GAMES_DATADIR}/xmoto"/Textures/Fonts/DejaVuSansMono.ttf
+ doicon extra/xmoto.xpm
+ make_desktop_entry xmoto Xmoto
+
+ prepgamesdirs
+
+ if use editor; then
+ insinto /usr/share/inkscape/
+ doins -r "${WORKDIR}"/extensions/
+ fi
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ if use editor; then
+ elog "If you want to know how to create Xmoto levels"
+ elog "have a look at this Tutorial:"
+ elog " http://wiki.xmoto.tuxfamily.org/index.php?title=Inksmoto-${LVL_PV}"
+ elog "You can share your levels on the Xmoto homepage."
+ fi
+}