summaryrefslogtreecommitdiff
path: root/games-fps/quakeforge
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/quakeforge')
-rw-r--r--games-fps/quakeforge/Manifest4
-rw-r--r--games-fps/quakeforge/files/quakeforge-0.7.2-gentoo.patch33
-rw-r--r--games-fps/quakeforge/metadata.xml39
-rw-r--r--games-fps/quakeforge/quakeforge-0.7.2-r1.ebuild126
4 files changed, 202 insertions, 0 deletions
diff --git a/games-fps/quakeforge/Manifest b/games-fps/quakeforge/Manifest
new file mode 100644
index 000000000000..ec595124a5ed
--- /dev/null
+++ b/games-fps/quakeforge/Manifest
@@ -0,0 +1,4 @@
+AUX quakeforge-0.7.2-gentoo.patch 1365 BLAKE2B 486c303505940d78b982b92848b04532a77cf2a5896d1cb26b9cf4dc013dca03aea0686102e42a30f7c4038819859c69f01890f55632c0d5af1102cf91d23f86 SHA512 521ba870e7b04e98c4d5507f661b0bfe7f18dc3901b671aed8c03c7691466e4e67f382d0fe05545eabff3ae684b8ed39e6681b4179348682f9adeb3eab177d9d
+DIST quakeforge-0.7.2.tar.bz2 2887823 BLAKE2B 27526b0e5491cc9a052f70c387c46b0d5518c0d63264f799cac81e471a87b978c9edcf22f4a68db25b8c05b7b51371504459e8ba5de450719e92aae712940cc7 SHA512 d296e10b86466aee0a4be527a5fea7a44bae60ebef52ad86381744dc96e2bed2ad14d3b790b4514a5c59ac897662e91b80a9d49c822910930742a1d2b8a2ec55
+EBUILD quakeforge-0.7.2-r1.ebuild 3110 BLAKE2B e33ebe3b29114e0311f073fb311b9ac4bd783971b54af4cac2e48f49aa4887d64fb47ec42785e5bd03b371221f256667f06a4bafb7a6c8620c4add2fb9916a3c SHA512 c0031fac48ad0a1307264b2d077db618636fd247af4cc8efb2ae9e54bc6c99a6514cd15b4f8889286a4956cf56703111d1eda87d082dfc3b2c6213b8f1412716
+MISC metadata.xml 1685 BLAKE2B f2ee32565cd97551e6cd22200d0ce2332a014b774511b172dc1e2b486a27e417af441f1f944b8325bf23dc7363e46a01fa6b51237353f8964e98dd5836357cb3 SHA512 caf9d7549c8e5d801f8d626b8a4c2528735a13fa2c721f4b9d5c9ae74ae15ee55c22f165d3027fcfed8309d6bf1face5dea9ebbb1b8624d679658c6768d77bc0
diff --git a/games-fps/quakeforge/files/quakeforge-0.7.2-gentoo.patch b/games-fps/quakeforge/files/quakeforge-0.7.2-gentoo.patch
new file mode 100644
index 000000000000..38fb0c187689
--- /dev/null
+++ b/games-fps/quakeforge/files/quakeforge-0.7.2-gentoo.patch
@@ -0,0 +1,33 @@
+--- a/nq/source/Makefile.am 2012-11-18 16:57:56.658388682 +0100
++++ b/nq/source/Makefile.am 2012-11-18 16:58:11.470268607 +0100
+@@ -138,7 +138,7 @@
+ nq_x11_SOURCES= sys_unix.c
+ nq_x11_LDADD= $(nq_x11_libs) \
+ $(VIDMODE_LIBS) $(DGA_LIBS) $(X_LIBS) -lX11 \
+- $(X_EXTRA_LIBS) $(X_SHM_LIB) $(NET_LIBS)
++ $(X_EXTRA_LIBS) $(X_SHM_LIB) $(NET_LIBS) -ldl
+ nq_x11_LDFLAGS= $(common_ldflags)
+ nq_x11_DEPENDENCIES= $(nq_x11_libs)
+
+--- a/qw/source/Makefile.am 2012-11-18 17:10:59.148172332 +0100
++++ b/qw/source/Makefile.am 2012-11-18 17:11:55.866876762 +0100
+@@ -168,7 +168,7 @@
+ qw_client_x11_SOURCES= cl_sys_unix.c
+ qw_client_x11_LDADD= $(qw_client_x11_libs) \
+ $(VIDMODE_LIBS) $(DGA_LIBS) $(X_LIBS) -lX11 \
+- $(X_EXTRA_LIBS) $(X_SHM_LIB) $(NET_LIBS) $(LIBCURL_LIBS)
++ $(X_EXTRA_LIBS) $(X_SHM_LIB) $(NET_LIBS) $(LIBCURL_LIBS) -ldl
+ qw_client_x11_LDFLAGS= $(common_ldflags)
+ qw_client_x11_DEPENDENCIES= $(qw_client_x11_libs)
+
+--- a/tools/qwaq/Makefile.am 2012-11-18 17:15:16.024714317 +0100
++++ b/tools/qwaq/Makefile.am 2012-11-18 17:15:41.955749660 +0100
+@@ -38,7 +38,7 @@
+ qwaq_x11_SOURCES=qwaq.c qwaq-bi.c
+ qwaq_x11_LDADD= $(qwaq_x11_libs) $(QWAQ_LIBS) \
+ $(VIDMODE_LIBS) $(DGA_LIBS) $(X_LIBS) -lX11 \
+- $(X_EXTRA_LIBS) $(X_SHM_LIB)
++ $(X_EXTRA_LIBS) $(X_SHM_LIB) -ldl
+ qwaq_x11_LDFLAGS=
+ qwaq_x11_DEPENDENCIES= $(qwaq_x11_libs) $(QWAQ_DEPS)
+
diff --git a/games-fps/quakeforge/metadata.xml b/games-fps/quakeforge/metadata.xml
new file mode 100644
index 000000000000..bd3de0628e47
--- /dev/null
+++ b/games-fps/quakeforge/metadata.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <longdescription>
+QuakeForge is a 3D graphics game engine based on id Software's legendary
+Quake and QuakeWorld game engine. Our purpose? To improve the state of
+the game by improving the engine and making it accessable to the largest
+number of players we can.
+
+Arguably the single most important issue on the minds of players today
+is the rampant cheating which is currently happening on many of the
+larger servers. It's a serious problem and it really makes a good game
+hard to find. We're working hard to fix these problems at the engine
+level.
+
+But what good is that if you have to have a copy of our client and the
+server has to run our server? There are other projects out there and
+some of them have very unique qualities. QuakeForge is cooperating with
+QSG, a group comprised of representatives from nearly every known Quake
+source project to ensure that our clients and servers run with other
+clients and servers just fine. We have all agreed to implement any
+effective cheat prevention methods.
+
+Other things we're doing include merging the two code trees, adding
+features, and improving the OpenGL renderer. And QuakeForge is still the
+most portable source tree based on the id Software code.
+</longdescription>
+ <use>
+ <flag name="wildmidi">enable libWildMidi support</flag>
+ <flag name="xdg">enable XDG support</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">quake</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-fps/quakeforge/quakeforge-0.7.2-r1.ebuild b/games-fps/quakeforge/quakeforge-0.7.2-r1.ebuild
new file mode 100644
index 000000000000..37a670a5b276
--- /dev/null
+++ b/games-fps/quakeforge/quakeforge-0.7.2-r1.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils flag-o-matic autotools
+
+DESCRIPTION="New 3d engine based off of id Softwares's Quake and QuakeWorld game engine"
+HOMEPAGE="http://www.quakeforge.net/"
+SRC_URI="mirror://sourceforge/quake/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa cdinstall debug dga fbcon flac ipv6 ncurses oss png sdl vorbis wildmidi X xdg xv zlib"
+RESTRICT="userpriv"
+
+RDEPEND="
+ media-libs/libsamplerate
+ net-misc/curl
+ virtual/opengl
+ alsa? ( media-libs/alsa-lib )
+ dga? ( x11-libs/libXxf86dga )
+ flac? ( media-libs/flac )
+ ncurses? ( sys-libs/ncurses:0 )
+ png? ( media-libs/libpng:0 )
+ sdl? ( media-libs/libsdl[video] )
+ vorbis? (
+ media-libs/libogg
+ media-libs/libvorbis
+ )
+ wildmidi? ( media-sound/wildmidi )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86vm
+ )
+ xv? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86vm
+ )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${RDEPEND}
+ cdinstall? ( games-fps/quake1-data )
+ >=sys-devel/bison-2.6
+ sys-devel/flex
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-gentoo.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+ append-cflags -std=gnu89 # build with gcc5 (bug #570392)
+}
+
+src_configure() {
+ local debugopts
+ use debug \
+ && debugopts="--enable-debug --disable-optimize --enable-profile" \
+ || debugopts="--disable-debug --disable-profile"
+
+ local clients=${QF_CLIENTS}
+ use fbcon && clients="${clients},fbdev"
+ use sdl && clients="${clients},sdl"
+ use X && clients="${clients},x11"
+ [ "${clients:0:1}" == "," ] && clients=${clients:1}
+
+ local servers=${QF_SERVERS:-master,nq,qw,qtv}
+
+ local tools=${QF_TOOLS:-all}
+
+ econf \
+ --enable-dependency-tracking \
+ $(use_enable ncurses curses) \
+ $(use_enable vorbis) \
+ $(use_enable png) \
+ $(use_enable zlib) \
+ $(use_with ipv6) \
+ $(use_with fbcon fbdev) \
+ $(use_with X x) \
+ $(use_enable xv vidmode) \
+ $(use_enable dga) \
+ $(use_enable sdl) \
+ --disable-xmms \
+ $(use_enable alsa) \
+ $(use_enable flac) \
+ $(use_enable oss) \
+ $(use_enable xdg) \
+ $(use_enable wildmidi) \
+ --enable-sound \
+ --disable-optimize \
+ --disable-Werror \
+ --without-svga \
+ ${debugopts} \
+ --with-global-cfg=/etc/quakeforge.conf \
+ --with-sharepath=/usr/share/quake1 \
+ --with-clients=${clients} \
+ --with-servers=${servers} \
+ --with-tools=${tools}
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install
+ dodoc ChangeLog NEWS TODO
+}
+
+pkg_postinst() {
+ # same warning used in quake1 / quakeforge / nprquake-sdl
+ echo
+ elog "Before you can play, you must make sure"
+ elog "${PN} can find your Quake .pak files"
+ elog
+ elog "You have 2 choices to do this"
+ elog "1 Copy pak*.pak files to /usr/share/quake1/id1"
+ elog "2 Symlink pak*.pak files in /usr/share/quake1/id1"
+ elog
+ elog "Example:"
+ elog "my pak*.pak files are in /mnt/secondary/Games/Quake/Id1/"
+ elog "ln -s /mnt/secondary/Games/Quake/Id1/pak0.pak /usr/share/quake1/id1/pak0.pak"
+ elog
+ elog "You only need pak0.pak to play the demo version,"
+ elog "the others are needed for registered version"
+}