summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/nexuiz')
-rw-r--r--games-fps/nexuiz/Manifest2
-rw-r--r--games-fps/nexuiz/files/nexuiz-2.5.2-libpng-1.4.patch42
-rw-r--r--games-fps/nexuiz/metadata.xml11
-rw-r--r--games-fps/nexuiz/nexuiz-2.5.2.ebuild134
4 files changed, 189 insertions, 0 deletions
diff --git a/games-fps/nexuiz/Manifest b/games-fps/nexuiz/Manifest
new file mode 100644
index 000000000000..1e5c02763f7f
--- /dev/null
+++ b/games-fps/nexuiz/Manifest
@@ -0,0 +1,2 @@
+DIST nexmappack_r2.zip 113533483 SHA256 15088c7632e0b4f487c789fba4296f44ef5a5d83b51adcb9e603e289e5b8241e SHA512 f7e2dd60530b58f3fc505cdf0d605208b6905136586107210031233cb870b1892bae59efc4fb38403a4f0fc5301321297d03107b38daa501cb90e5669455eac0 WHIRLPOOL 5385fc2fe5afc4d4c2c3404311ef00c25bdc6cfd0bb3846cfdf0dee79c8205ed5861c5b6b1095d1db2938e3fc726178084ad9b52eb73989d199fb136d8be6a82
+DIST nexuiz-252.zip 931253731 SHA256 a5e27ebcc9775c4a490d0d3536c32e4a8f8f96b038c0b6a78d1823c37a962000 SHA512 da661eb2ff1764fed1d5f5547b89e4f9aa47613d41a3999c0202d8858ec2b882e4ef0ec182a81d1bdb25dff2ef65aad6af132009884e3557206941a736c2a68c WHIRLPOOL e3d08e4936a1fec97e024d0273162e15fbd4c68b13939f82c59ed2b5f613fa6f683423c753fd11d23c9be39f1bc620f2c0013456762773663a283078687eb21d
diff --git a/games-fps/nexuiz/files/nexuiz-2.5.2-libpng-1.4.patch b/games-fps/nexuiz/files/nexuiz-2.5.2-libpng-1.4.patch
new file mode 100644
index 000000000000..0e064f8b6c3f
--- /dev/null
+++ b/games-fps/nexuiz/files/nexuiz-2.5.2-libpng-1.4.patch
@@ -0,0 +1,42 @@
+fix compatibility with >=libpng-1.4
+https://bugs.gentoo.org/show_bug.cgi?id=491610
+
+diff -Nur darkplaces.old/image_png.c darkplaces/image_png.c
+--- darkplaces.old/image_png.c 2009-09-15 06:08:02.000000000 +0300
++++ darkplaces/image_png.c 2010-01-28 01:23:24.000000000 +0200
+@@ -36,7 +36,7 @@
+ static void* (*qpng_create_info_struct) (void*);
+ static void (*qpng_read_info) (void*, void*);
+ static void (*qpng_set_expand) (void*);
+-static void (*qpng_set_gray_1_2_4_to_8) (void*);
++static void (*qpng_set_expand_gray_1_2_4_to_8) (void*);
+ static void (*qpng_set_palette_to_rgb) (void*);
+ static void (*qpng_set_tRNS_to_alpha) (void*);
+ static void (*qpng_set_gray_to_rgb) (void*);
+@@ -61,7 +61,7 @@
+ {"png_create_info_struct", (void **) &qpng_create_info_struct},
+ {"png_read_info", (void **) &qpng_read_info},
+ {"png_set_expand", (void **) &qpng_set_expand},
+- {"png_set_gray_1_2_4_to_8", (void **) &qpng_set_gray_1_2_4_to_8},
++ {"png_set_expand_gray_1_2_4_to_8", (void **) &qpng_set_expand_gray_1_2_4_to_8},
+ {"png_set_palette_to_rgb", (void **) &qpng_set_palette_to_rgb},
+ {"png_set_tRNS_to_alpha", (void **) &qpng_set_tRNS_to_alpha},
+ {"png_set_gray_to_rgb", (void **) &qpng_set_gray_to_rgb},
+@@ -110,7 +110,7 @@
+ #elif defined(MACOSX)
+ "libpng12.0.dylib",
+ #else
+- "libpng12.so.0",
++ "libpng14.so.0",
+ "libpng.so", // FreeBSD
+ #endif
+ NULL
+@@ -311,7 +311,7 @@
+ {
+ qpng_set_gray_to_rgb(png);
+ if (my_png.BitDepth < 8)
+- qpng_set_gray_1_2_4_to_8(png);
++ qpng_set_expand_gray_1_2_4_to_8(png);
+ }
+
+ if (qpng_get_valid(png, pnginfo, PNG_INFO_tRNS))
diff --git a/games-fps/nexuiz/metadata.xml b/games-fps/nexuiz/metadata.xml
new file mode 100644
index 000000000000..c4fa7252526e
--- /dev/null
+++ b/games-fps/nexuiz/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="maps">Install the community map pack</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">nexuiz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-fps/nexuiz/nexuiz-2.5.2.ebuild b/games-fps/nexuiz/nexuiz-2.5.2.ebuild
new file mode 100644
index 000000000000..a6cd78440128
--- /dev/null
+++ b/games-fps/nexuiz/nexuiz-2.5.2.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils games
+
+MY_PN=Nexuiz
+MY_P=${PN}-${PV//./}
+MAPS=nexmappack_r2
+DESCRIPTION="Deathmatch FPS based on DarkPlaces, an advanced Quake 1 engine"
+HOMEPAGE="http://www.nexuiz.com/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip
+ maps? ( mirror://sourceforge/${PN}/${MAPS}.zip )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="alsa dedicated maps opengl sdl"
+
+# no headers for libpng needed
+UIRDEPEND="media-libs/libogg
+ media-libs/libvorbis
+ media-libs/libtheora
+ >=media-libs/libpng-1.4
+ media-libs/libmodplug
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXdmcp
+ x11-libs/libXpm
+ x11-libs/libXext
+ x11-libs/libXxf86dga
+ x11-libs/libXxf86vm
+ virtual/opengl
+ alsa? ( media-libs/alsa-lib )
+ sdl? ( media-libs/libsdl[joystick,opengl,video] )"
+UIDEPEND="x11-proto/xextproto
+ x11-proto/xf86dgaproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xproto"
+RDEPEND="virtual/jpeg
+ net-misc/curl
+ opengl? ( ${UIRDEPEND} )
+ !dedicated? ( !opengl? ( ${UIRDEPEND} ) )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ opengl? ( ${UIDEPEND} )
+ !dedicated? ( !opengl? ( ${UIDEPEND} ) )"
+
+S=${WORKDIR}/darkplaces
+
+src_unpack() {
+ unpack ${MY_P}.zip
+
+ local f
+ for f in "${MY_PN}"/sources/*.zip ; do
+ unpack ./${f}
+ done
+
+ if use maps ; then
+ cd "${WORKDIR}"/${MY_PN}
+ unpack ${MAPS}.zip
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libpng-1.4.patch
+
+ # Make the game automatically look in the correct data directory
+ sed -i \
+ -e "/^CC=/d" \
+ -e "s:-O2:${CFLAGS}:" \
+ -e "/-lm/s:$: ${LDFLAGS}:" \
+ -e '/^STRIP/s/strip/true/' \
+ makefile.inc || die
+
+ sed -i \
+ -e '1i DP_LINK_TO_LIBJPEG=1' \
+ -e "s:ifdef DP_.*:DP_FS_BASEDIR=${GAMES_DATADIR}/nexuiz\n&:" \
+ makefile || die
+
+ if ! use alsa ; then
+ sed -i \
+ -e "/DEFAULT_SNDAPI/s:ALSA:OSS:" \
+ makefile || die
+ fi
+}
+
+src_compile() {
+ if use opengl || ! use dedicated ; then
+ emake cl-${PN}
+ if use sdl ; then
+ emake sdl-${PN}
+ fi
+ fi
+
+ if use dedicated ; then
+ emake sv-${PN}
+ fi
+}
+
+src_install() {
+ if use opengl || ! use dedicated ; then
+ dogamesbin ${PN}-glx
+ doicon ${PN}.xpm
+ make_desktop_entry ${PN}-glx "Nexuiz (GLX)"
+ if use sdl ; then
+ dogamesbin ${PN}-sdl
+ make_desktop_entry ${PN}-sdl "Nexuiz (SDL)"
+ dosym ${PN}-sdl "${GAMES_BINDIR}"/${PN}
+ else
+ dosym ${PN}-glx "${GAMES_BINDIR}"/${PN}
+ fi
+ fi
+
+ if use dedicated ; then
+ dogamesbin ${PN}-dedicated
+ fi
+
+ cd "${WORKDIR}"/${MY_PN} || die
+
+ dodoc Docs/*.txt
+ dohtml -r readme.html Docs
+
+ insinto "${GAMES_DATADIR}"/${PN}
+
+ if use dedicated ; then
+ doins -r server
+ fi
+
+ doins -r data havoc
+
+ prepgamesdirs
+}