summaryrefslogtreecommitdiff
path: root/games-fps/qudos
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/qudos')
-rw-r--r--games-fps/qudos/Manifest6
-rw-r--r--games-fps/qudos/files/qudos-0.40.1-gnusource.patch12
-rw-r--r--games-fps/qudos/files/qudos-0.40.1-libpng15.patch10
-rw-r--r--games-fps/qudos/metadata.xml17
-rw-r--r--games-fps/qudos/qudos-0.40.1.ebuild174
5 files changed, 219 insertions, 0 deletions
diff --git a/games-fps/qudos/Manifest b/games-fps/qudos/Manifest
new file mode 100644
index 000000000000..b544a3a1cf03
--- /dev/null
+++ b/games-fps/qudos/Manifest
@@ -0,0 +1,6 @@
+AUX qudos-0.40.1-gnusource.patch 338 BLAKE2B 31b811ca4592ee82e15cc55ab0d5e9e054dc3456f421bada3be8c41993bb7e15ae40f1c53b8aa54e9600ac850c5c4336a67647863c4f6e2b6b473f49a40b8fac SHA512 6e6411e0d6a4c48a82f70cc83eb64eb8b86a15f0ffa552007cb5af6a8d0f718527f6acbcdb80393b45344e133f52ee366cf7923423afae25b3c6ab10829dae98
+AUX qudos-0.40.1-libpng15.patch 205 BLAKE2B 254b56d3933f6eaa5c818042b7875c978c8864b2db711e9fe820942aa3316f593eb9ccd20558ccc95083b6350075e6830fcddb1d694b4e27e7dab6727d91fa8f SHA512 4a2ccb3566f0d3126910b48c024fc5b9d40fe471ca73ce043bc8c8339d2a08f124b921e622bdee05ed007861f4b816941307184bfcbdb8281eca02733b289f70
+DIST QuDos-0.40.1-src.tar.bz2 2031636 BLAKE2B 4940f589cc6239e1489bb81f2e0c0afd6efb36930595c57131927b777913c904ada04883eb5f12f9aaf0ba06d687bf4be8b03f369dd9684fe21d7b1068240599 SHA512 97b9c6bac0d09c060ab33174604deb2781f0ebdc48b00bd0bc402523fb04cdf84edd8abc18507bba8c7e616f6d460a1de6debc96ec39bb5562b20a7f06eea734
+DIST QuDos-0.40.1.pk3 4210489 BLAKE2B 98e07682368e52f4c318e7b9ab98d01b0363986bfea54edff3b13f7f2f4cad20de0146eb498569d024d22200830b341b02f135bf50df4a317915429bb1437439 SHA512 19c3c6b3d17cbd9642320d8eb7a83d667afeafd0ee5eb818e9f07be71e2ab69182474c1f529ecbcfcfa59590bafedb0de3c70dfff10e4bc7a6e07a1546f27d4b
+EBUILD qudos-0.40.1.ebuild 4100 BLAKE2B a510073509090e1871fde9845ab019ddc9b3941ec5f433a8afb0ab16a206706406cf3bd26037b546f81270c4ae70736df9e50bbf40ca2a665ba3b594f873aeb0 SHA512 af3b10b7fc9ea21978a6f69a743a7ec62bd57ef3a85e12dcdfd51c0f783a2758d3b709045269a2503dac72adf3388037d06e8760b2c22b18f11f83bbd2fdb2a1
+MISC metadata.xml 665 BLAKE2B 1f84309c0351baa3d365661d5840a05358889318eb0d42c4e71a42962b730bfe87f3e4bdee7a3f79f130d4d727f33e98ae5399eaa0f0f2aea4594fd5ac648888 SHA512 c96f5c164edea2f535115ca1fdd9ff39755f2be2a3f8846eb91d22e6d12f6e0e589e6d7e97a69d0afc65464df62390117296a27bb7b4b2e8da79735b206e5966
diff --git a/games-fps/qudos/files/qudos-0.40.1-gnusource.patch b/games-fps/qudos/files/qudos-0.40.1-gnusource.patch
new file mode 100644
index 000000000000..dd2113b0c3bb
--- /dev/null
+++ b/games-fps/qudos/files/qudos-0.40.1-gnusource.patch
@@ -0,0 +1,12 @@
+--- src/unix/qsh_unix.c.orig 2011-10-22 17:46:37.665993357 -0500
++++ src/unix/qsh_unix.c 2011-10-22 17:46:40.965972209 -0500
+@@ -17,6 +17,9 @@
+ * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ */
++#if !defined(_GNU_SOURCE)
++ #define _GNU_SOURCE
++#endif
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/time.h>
diff --git a/games-fps/qudos/files/qudos-0.40.1-libpng15.patch b/games-fps/qudos/files/qudos-0.40.1-libpng15.patch
new file mode 100644
index 000000000000..ecf9de9370e9
--- /dev/null
+++ b/games-fps/qudos/files/qudos-0.40.1-libpng15.patch
@@ -0,0 +1,10 @@
+--- src/ref_gl/gl_local.h
++++ src/ref_gl/gl_local.h
+@@ -29,6 +29,7 @@
+ #include <GL/glu.h>
+ #include <GL/glext.h>
+
++#include <zlib.h> /* Z_DEFAULT_COMPRESSION */
+ #include <png.h>
+ #include <jpeglib.h>
+
diff --git a/games-fps/qudos/metadata.xml b/games-fps/qudos/metadata.xml
new file mode 100644
index 000000000000..114138906332
--- /dev/null
+++ b/games-fps/qudos/metadata.xml
@@ -0,0 +1,17 @@
+<?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>
+ <use>
+ <flag name="demo">Install the demo files (quake2-demodata) and configure for use</flag>
+ <flag name="mods">Build support for the quake2 mission packs</flag>
+ <flag name="qmax">Build the pretty version (quake max)</flag>
+ <flag name="textures">Install the enhanced textures (quake2-textures)</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">ZwS/qudos</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-fps/qudos/qudos-0.40.1.ebuild b/games-fps/qudos/qudos-0.40.1.ebuild
new file mode 100644
index 000000000000..27988248d7dd
--- /dev/null
+++ b/games-fps/qudos/qudos-0.40.1.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils toolchain-funcs games
+
+FILE_STEM="QuDos-${PV}-src"
+PK3_FILE="QuDos-${PV}.pk3"
+MY_PN="quake2"
+
+DESCRIPTION="Enhanced Quake 2 engine"
+HOMEPAGE="https://github.com/ZwS/qudos"
+SRC_URI="mirror://gentoo/${FILE_STEM}.tar.bz2
+ https://github.com/ZwS/qudos/raw/master/quake2/baseq2/qudos.pk3 -> ${PK3_FILE}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cdinstall debug dedicated demo dga ipv6 joystick mods opengl qmax oss sdl textures"
+
+DEPEND="opengl? (
+ virtual/opengl
+ virtual/glu )
+ sdl? ( media-libs/libsdl[joystick?,opengl,sound,video]
+ virtual/opengl
+ virtual/glu )
+ virtual/jpeg:0
+ media-libs/libogg
+ media-libs/libpng:0
+ media-libs/libvorbis
+ sys-libs/zlib
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86dga
+ x11-libs/libXxf86vm"
+RDEPEND="${DEPEND}
+ cdinstall? ( games-fps/quake2-data )
+ demo? ( games-fps/quake2-demodata[symlink] )
+ textures? ( games-fps/quake2-textures )"
+
+S=${WORKDIR}/${FILE_STEM}
+dir=${GAMES_DATADIR}/${MY_PN}
+
+default_client() {
+ if use opengl || use sdl || ! use dedicated ; then
+ # Build default client
+ return 0
+ fi
+ return 1
+}
+
+pkg_setup() {
+ games_pkg_setup
+
+ if ! use qmax && $( use opengl || use sdl ) ; then
+ elog "The 'qmax' graphical improvements are recommended."
+ echo
+ fi
+
+ if use debug ; then
+ ewarn "The 'debug' USE flag may cause compilation to fail with:"
+ ewarn
+ ewarn "src/qcommon/cmd.c:364: warning: dereferencing type-punned"
+ ewarn "pointer will break strict-aliasing rules."
+ echo
+ fi
+
+ # Determine the default sound driver, in order of preference
+ # snd_drv is not a local variable
+ snd_drv=""
+ [[ -z "${snd_drv}" ]] && use oss && snd_drv="oss"
+ [[ -z "${snd_drv}" ]] && use sdl && snd_drv="sdl"
+ # Default if nothing else chosen
+ [[ -z "${snd_drv}" ]] && snd_drv="oss"
+
+ if default_client ; then
+ elog "Selected the ${snd_drv} sound driver as the default."
+ echo
+ fi
+}
+
+src_unpack() {
+ unpack "${FILE_STEM}.tar.bz2"
+}
+
+src_prepare() {
+ rm docs/gnu.txt
+
+ # Change default sound driver and its location
+ sed -i \
+ -e "s:\"oss\":\"${snd_drv}\":" \
+ -e "s:\"\./snd:\"$(games_get_libdir)/${PN}/snd:" \
+ src/client/snd_dma.c || die
+
+ sed -i \
+ -e 's:jpeg_mem_src:qudos_jpeg_mem_src:g' \
+ src/ref_gl/gl_image.c || die
+
+ if has_version '>=sys-libs/zlib-1.2.5.1-r1' ; then
+ sed -i \
+ -e '1i#define OF(x) x' \
+ src/qcommon/unzip/ioapi.h || die
+ fi
+ sed -i -e '106,119 s/CFL/LED/' Makefile || die
+
+ epatch \
+ "${FILESDIR}"/${P}-libpng15.patch \
+ "${FILESDIR}"/${P}-gnusource.patch
+}
+
+src_compile() {
+ yesno() { usex $1 YES NO; }
+
+ local client="YES"
+ default_client || client="NO"
+
+ local type="release"
+ use debug && type="debug"
+
+ emake \
+ BUILD_QUAKE2="${client}" \
+ BUILD_DEDICATED=$(yesno dedicated) \
+ BUILD_GLX=$(yesno opengl) \
+ BUILD_SDLGL=$(yesno sdl) \
+ BUILD_ALSA_SND=NO \
+ BUILD_SDL_SND=$(yesno sdl) \
+ BUILD_OSS_SND=$(yesno oss) \
+ WITH_XMMS=NO \
+ WITH_DGA_MOUSE=$(yesno dga) \
+ WITH_JOYSTICK=$(yesno joystick) \
+ TYPE="${type}" \
+ DATADIR="${dir}" \
+ LOCALBASE=/usr \
+ LIBDIR="$(games_get_libdir)"/${PN} \
+ WITH_QMAX=$(yesno qmax) \
+ BUILD_3ZB2=$(yesno mods) \
+ BUILD_CTF=$(yesno mods) \
+ BUILD_JABOT=$(yesno mods) \
+ BUILD_ROGUE=$(yesno mods) \
+ BUILD_XATRIX=$(yesno mods) \
+ BUILD_ZAERO=$(yesno mods) \
+ WITH_BOTS=$(yesno mods) \
+ HAVE_IPV6=$(yesno ipv6) \
+ CC="$(tc-getCC)" \
+ WITH_X86_ASM=NO \
+ WITH_DATADIR=YES \
+ WITH_LIBDIR=YES \
+ BUILD_DEBUG_DIR=release \
+ BUILD_RELEASE_DIR=release
+}
+
+src_install() {
+ if default_client ; then
+ newgamesbin ${MY_PN}/QuDos ${PN}
+ # Change from gif to png in next version?
+ newicon docs/q2_orig/quake2.gif ${PN}.gif
+ make_desktop_entry ${PN} "QuDos" ${PN}.gif
+ fi
+
+ if use dedicated ; then
+ newgamesbin ${MY_PN}/QuDos-ded ${PN}-ded
+ fi
+
+ insinto "$(games_get_libdir)"/${PN}
+ doins -r ${MY_PN}/*
+ rm "${D}/$(games_get_libdir)"/${PN}/QuDos
+
+ insinto "$(games_get_libdir)"/${PN}/baseq2
+ newins "${DISTDIR}/${PK3_FILE}" qudos.pk3
+
+ dodoc $(find docs -name \*.txt) docs/q2_orig/README*
+
+ prepgamesdirs
+}