summaryrefslogtreecommitdiff
path: root/games-fps/urbanterror
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /games-fps/urbanterror
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'games-fps/urbanterror')
-rw-r--r--games-fps/urbanterror/Manifest5
-rw-r--r--games-fps/urbanterror/files/urbanterror-4.3-fix-build_system.patch99
-rw-r--r--games-fps/urbanterror/files/urbanterror-4.3.3_p20180218-fix-loop.patch59
-rw-r--r--games-fps/urbanterror/metadata.xml28
-rw-r--r--games-fps/urbanterror/urbanterror-4.3.4_p20180627.ebuild170
5 files changed, 361 insertions, 0 deletions
diff --git a/games-fps/urbanterror/Manifest b/games-fps/urbanterror/Manifest
new file mode 100644
index 000000000000..d2cc4f1ff165
--- /dev/null
+++ b/games-fps/urbanterror/Manifest
@@ -0,0 +1,5 @@
+AUX urbanterror-4.3-fix-build_system.patch 2774 BLAKE2B d750fab8dcf67e6ac37d6b9e44abf3c7961320bbd51093b198d31e470396dc415219b09ac910a7938a557b6af4d9df39bb7f35cf5e90bb56f97cd334b584db4c SHA512 90d06ee5bb77e13e34923f446c0e8e90fdef5628c6199a4f9508336aa0bb30c0ab273ac794a8eb483c2534e64bf81f76ef449ed90000314f227d39de572809f2
+AUX urbanterror-4.3.3_p20180218-fix-loop.patch 1442 BLAKE2B 045a018bb3476f94b471f62ccf3bacce2b68523de235698b47f2e98979f3a1284b826e9dc74f4fd225ba930057df6d9bed599872568330952fa4ffe0389e2563 SHA512 7a31cded5b99fda6f4c92f5d1ce9ef7606dc87f08a70efc3aea970e6a870e22aeb0a772f63a11d151cd227f68803e028b2f5adee381d8f65c523c585a474b53c
+DIST urbanterror-4.3.4_p20180627.tar.gz 10069715 BLAKE2B 179a952d51448af39636560e71c33dba8491fa195dd29d149f3d87d11ca2efff9a50041cdb585df9944361cfef8ac2b9efd2967cb6ffeeceb553fbc6aa17b218 SHA512 8eb314143fb336ff32d5b4a97075e54d5577570f1193c2220648ba7866373c8aa158015efebcb8325ade7964f4622baff8a30d89e889f64141d748bba28712ef
+EBUILD urbanterror-4.3.4_p20180627.ebuild 4525 BLAKE2B 66031a89f019f983363ad4d19f2cdaa6a28040234785ff2c873384bfa64070c51c037764f6158dd95d5c046e0b7c820afdf412119c99666bfc5ff64b348189cf SHA512 f67174fe11786d9dca773548c39fed04aa7ec2744d9f9887261253e52fdfa1ac2b03cb1dcc863db59819b87a2a3f055d2b0dd50bdccfc0dbe668df130ec3c52b
+MISC metadata.xml 1109 BLAKE2B 9e9f6a21667badafad0c007a2694a50ceaa467ce28fdc9b3f8838d58dd201f56b0b08c78d3285dfd53dd14db6c5ab26461cb400308abc920ce234048fdc48f8b SHA512 cb55a92c3c03065a17f71e5cfc8151a8c12acbc341389a14f96119960eb23c11613adaa8e9b552946d2db728121118a5130447c892d61a1a909b4dd8b94a5dcc
diff --git a/games-fps/urbanterror/files/urbanterror-4.3-fix-build_system.patch b/games-fps/urbanterror/files/urbanterror-4.3-fix-build_system.patch
new file mode 100644
index 000000000000..e0c4eb27f539
--- /dev/null
+++ b/games-fps/urbanterror/files/urbanterror-4.3-fix-build_system.patch
@@ -0,0 +1,99 @@
+Author: Nils Freydank <holgersson@posteo.de>
+Date: Fri Nov 17 20:30:00 2017 +0100
+
+Respect CFLAGS, CPPFLAGS etc. This patch is inspired
+by hasufell’s patch.
+
+Edit 2018-03-19: Now with server support!
+
+--- a/Makefile 2018-03-19 11:00:00.000000000 +0100
++++ b/Makefile 2018-03-19 11:00:00.000000001 +0100
+@@ -223,7 +223,7 @@
+ ifndef USE_ALTGAMMA
+ # Clearskies - X11-based gamma for Linux
+ USE_ALTGAMMA=1
+-endif
++ endif
+
+ ifndef USE_SKEETMOD
+ USE_SKEETMOD=0
+@@ -306,34 +306,33 @@
+ CLIENT_EXTRA_FILES=
+
+ ifneq (,$(findstring "$(PLATFORM)", "linux" "gnu_kfreebsd" "kfreebsd-gnu" "gnu"))
+- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes \
+- -pipe -DUSE_ICON -DARCH_STRING=\\\"$(ARCH)\\\"
++ BASE_CFLAGS = -DUSE_ICON -DARCH_STRING=\\\"$(ARCH)\\\"
+ CLIENT_CFLAGS += $(SDL_CFLAGS)
+
+- OPTIMIZEVM = -O3
+- OPTIMIZE = $(OPTIMIZEVM) -ffast-math
++ OPTIMIZEVM =
++ OPTIMIZE = $(OPTIMIZEVM)
+
+ ifeq ($(ARCH),x86_64)
+- OPTIMIZEVM = -O3
+- OPTIMIZE = $(OPTIMIZEVM) -ffast-math
++ OPTIMIZEVM =
++ OPTIMIZE = $(OPTIMIZEVM)
+ HAVE_VM_COMPILED = true
+ else
+ ifeq ($(ARCH),x86)
+- OPTIMIZEVM = -O3 -march=i586
+- OPTIMIZE = $(OPTIMIZEVM) -ffast-math
++ OPTIMIZEVM =
++ OPTIMIZE = $(OPTIMIZEVM)
+ HAVE_VM_COMPILED=true
+ else
+ ifeq ($(ARCH),ppc)
+- BASE_CFLAGS += -maltivec
++ BASE_CFLAGS +=
+ HAVE_VM_COMPILED=true
+ endif
+ ifeq ($(ARCH),ppc64)
+- BASE_CFLAGS += -maltivec
++ BASE_CFLAGS +=
+ HAVE_VM_COMPILED=true
+ endif
+ ifeq ($(ARCH),sparc)
+- OPTIMIZE += -mtune=ultrasparc3 -mv8plus
+- OPTIMIZEVM += -mtune=ultrasparc3 -mv8plus
++ OPTIMIZE +=
++ OPTIMIZEVM +=
+ HAVE_VM_COMPILED=true
+ endif
+ ifeq ($(ARCH),armv7l)
+@@ -1130,12 +1129,12 @@
+
+ define DO_CC
+ $(echo_cmd) "CC $<"
+-$(Q)$(CC) $(NOTSHLIBCFLAGS) $(CFLAGS) $(CLIENT_CFLAGS) $(OPTIMIZE) -o $@ -c $<
++$(Q)$(CC) $(NOTSHLIBCFLAGS) $(CFLAGS) $(CPPFLAGS) $(CLIENT_CFLAGS) $(OPTIMIZE) -o $@ -c $<
+ endef
+
+ define DO_REF_CC
+ $(echo_cmd) "REF_CC $<"
+-$(Q)$(CC) $(SHLIBCFLAGS) $(CFLAGS) $(CLIENT_CFLAGS) $(OPTIMIZE) -o $@ -c $<
++$(Q)$(CC) $(SHLIBCFLAGS) $(CFLAGS) $(CPPFLAGS) $(CLIENT_CFLAGS) $(OPTIMIZE) -o $@ -c $<
+ endef
+
+ define DO_REF_STR
+@@ -1148,7 +1147,7 @@
+
+ define DO_BOT_CC
+ $(echo_cmd) "BOT_CC $<"
+-$(Q)$(CC) $(NOTSHLIBCFLAGS) $(CFLAGS) $(BOTCFLAGS) $(OPTIMIZE) -DBOTLIB -o $@ -c $<
++$(Q)$(CC) $(NOTSHLIBCFLAGS) $(CFLAGS) $(CPPFLAGS) $(BOTCFLAGS) $(OPTIMIZE) -DBOTLIB -o $@ -c $<
+ endef
+
+ ifeq ($(GENERATE_DEPENDENCIES),1)
+@@ -1162,7 +1161,7 @@
+
+ define DO_DED_CC
+ $(echo_cmd) "DED_CC $<"
+-$(Q)$(CC) $(NOTSHLIBCFLAGS) -DDEDICATED $(CFLAGS) $(SERVER_CFLAGS) $(OPTIMIZE) -o $@ -c $<
++$(Q)$(CC) $(NOTSHLIBCFLAGS) -DDEDICATED $(CFLAGS) $(CPPFLAGS) $(SERVER_CFLAGS) $(OPTIMIZE) -o $@ -c $<
+ endef
+
+ define DO_WINDRES
+
diff --git a/games-fps/urbanterror/files/urbanterror-4.3.3_p20180218-fix-loop.patch b/games-fps/urbanterror/files/urbanterror-4.3.3_p20180218-fix-loop.patch
new file mode 100644
index 000000000000..c34ebe84cedf
--- /dev/null
+++ b/games-fps/urbanterror/files/urbanterror-4.3.3_p20180218-fix-loop.patch
@@ -0,0 +1,59 @@
+Author: Nils Freydank <holgersson@posteo.de>
+Date: Wed Mar 14 21:00:00 2017 +0100
+
+Imported patch written by Tom Murphy via github.com:
+
+https://github.com/ioquake/ioq3/pull/356
+
+diff --git a/code/sys/con_tty.c b/code/sys/con_tty.c
+index 2c2b595cf..58f178ade 100644
+--- a/code/sys/con_tty.c
++++ b/code/sys/con_tty.c
+@@ -73,20 +73,6 @@ static int hist_current = -1, hist_count = 0;
+ #define TTY_CONSOLE_PROMPT "]"
+ #endif
+
+-/*
+-==================
+-CON_FlushIn
+-
+-Flush stdin, I suspect some terminals are sending a LOT of shit
+-FIXME relevant?
+-==================
+-*/
+-static void CON_FlushIn( void )
+-{
+- char key;
+- while (read(STDIN_FILENO, &key, 1)!=-1);
+-}
+-
+ /*
+ ==================
+ CON_Back
+@@ -441,7 +427,7 @@ char *CON_Input( void )
+ TTY_con = *history;
+ CON_Show();
+ }
+- CON_FlushIn();
++ tcflush(STDIN_FILENO, TCIFLUSH);
+ return NULL;
+ break;
+ case 'B':
+@@ -455,7 +441,7 @@ char *CON_Input( void )
+ Field_Clear(&TTY_con);
+ }
+ CON_Show();
+- CON_FlushIn();
++ tcflush(STDIN_FILENO, TCIFLUSH);
+ return NULL;
+ break;
+ case 'C':
+@@ -467,7 +453,7 @@ char *CON_Input( void )
+ }
+ }
+ Com_DPrintf("droping ISCTL sequence: %d, TTY_erase: %d\n", key, TTY_erase);
+- CON_FlushIn();
++ tcflush(STDIN_FILENO, TCIFLUSH);
+ return NULL;
+ }
+ if (TTY_con.cursor >= sizeof(text) - 1)
diff --git a/games-fps/urbanterror/metadata.xml b/games-fps/urbanterror/metadata.xml
new file mode 100644
index 000000000000..38fad51f813c
--- /dev/null
+++ b/games-fps/urbanterror/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>holgersson@posteo.de</email>
+ <name>Nils Freydank</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="altgamma">Alternative way for gamma setting with modesetting driver</flag>
+ <flag name="client">Build binary for client (includes code for non-dedicated server)</flag>
+ <flag name="mumble">Use Mumble for ingame VoIP (experimental)</flag>
+ <flag name="opus">Use opus as sound codec</flag>
+ <flag name="server">Build binary for dedicated server</flag>
+ <flag name="skeetshootmod">Build support for skeetshoot mod for specific maps</flag>
+ <flag name="voip">Use ioq3 ingame VoIP (experimental)</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">Barbatos/ioq3-for-UrbanTerror-4</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-fps/urbanterror/urbanterror-4.3.4_p20180627.ebuild b/games-fps/urbanterror/urbanterror-4.3.4_p20180627.ebuild
new file mode 100644
index 000000000000..04d4459533ea
--- /dev/null
+++ b/games-fps/urbanterror/urbanterror-4.3.4_p20180627.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit desktop eapi7-ver flag-o-matic toolchain-funcs xdg-utils
+
+DESCRIPTION="Hollywood tactical shooter based on the ioquake3 engine"
+HOMEPAGE="https://urbanterror.info https://github.com/mickael9/ioq3"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mickael9/ioq3.git"
+ EGIT_BRANCH="urt"
+else
+ COMMIT_ID="e8c941ec8b753b9ecb4f8c4fcec07e4fe3babc64"
+ SRC_URI="https://github.com/mickael9/ioq3/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/ioq3-${COMMIT_ID}"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+altgamma +client +curl debug mumble openal +opus server +skeetshootmod voip vorbis"
+REQUIRED_USE="|| ( client server )
+ voip? ( opus )"
+
+DOCS=( ChangeLog README.md README.ioq3.md md4-readme.txt )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.3-fix-build_system.patch
+ "${FILESDIR}"/${PN}-4.3.3_p20180218-fix-loop.patch
+)
+
+RDEPEND="
+ client? (
+ media-libs/libsdl2:=[X,sound,joystick,opengl,video]
+ mumble? ( media-sound/mumble:= )
+ openal? ( media-libs/openal:= )
+ opus? ( media-libs/opusfile:= )
+ vorbis? ( media-libs/libvorbis:= )
+ )
+ curl? ( net-misc/curl )
+ ~games-fps/urbanterror-data-4.3.4
+ sys-libs/zlib:=[minizip]
+ virtual/jpeg:0
+"
+
+DEPEND="${RDEPEND}"
+
+pkg_pretend() {
+ if use client; then
+ if ! use openal && ! use opus && ! use vorbis; then
+ ewarn
+ ewarn "No sound implementation selected. Enable 'openal', 'opus' or 'vorbis' USE flag to get sound!"
+ fi
+ fi
+}
+
+src_configure() {
+ default
+
+ tc-export CC
+}
+
+src_compile() {
+ # Workaround for used zlib macro, which got renamed in Gentoo
+ # wrt bug #449510
+ append-cppflags "-DOF=_Z_OF"
+
+ local myemakeargs=(
+ ARCH=$(usex amd64 "x86_64" "i686" )
+ DEFAULT_BASEDIR="/usr/share/urbanterror"
+ BUILD_CLIENT=$(usex "client" 1 0)
+ BUILD_SERVER=$(usex "server" 1 0)
+ BUILD_BASEGAME=1
+ BUILD_MISSIONPACK=0
+ BUILD_GAME_SO=0
+ BUILD_GAME_QVM=0
+ BUILD_STANDALONE=1
+ SERVERBIN="Quake3-UrT-Ded"
+ CLIENTBIN="Quake3-UrT"
+ USE_RENDERER_DLOPEN=0
+ USE_YACC=0
+ BASEGAME="q3ut4"
+ BASEGAME_CFLAGS="${CFLAGS}"
+ USE_OPENAL=$(usex "openal" 1 0)
+ USE_OPENAL_DLOPEN=$(usex "openal" 1 0)
+ USE_CURL=$(usex "curl" 1 0)
+ USE_CURL_DLOPEN=$(usex "curl" 1 0)
+ USE_CODEC_VORBIS=$(usex "vorbis" 1 0)
+ USE_CODEC_OPUS=$(usex "opus" 1 0)
+ USE_MUMBLE=$(usex "mumble" 1 0)
+ USE_SKEETMOD=$(usex "skeetshootmod" 1 0)
+ USE_VOIP=$(usex "mumble" 1 0)
+ USE_INTERNAL_LIBS=0
+ USE_LOCAL_HEADERS=0
+ USE_ALTGAMMA=$(usex "altgamma" 1 0)
+ $(usex "debug" "debug" "release")
+ )
+ emake "${myemakeargs[@]}"
+}
+
+src_install() {
+ local myarch=$(usex amd64 "x86_64" "i386")
+ local myreleasetype=$(usex debug "debug" "release")
+
+ if use client; then
+ newbin build/${myreleasetype}-linux-${myarch}/Quake3-UrT.${myarch} ${PN}
+ # Shooter as defined in https://specifications.freedesktop.org/menu-spec/latest/apas02.html
+ make_desktop_entry ${PN} "UrbanTerror" ${PN}
+ fi
+
+ if use server && ! use client; then
+ # dedicated server only
+ newbin build/${myreleasetype}-linux-${myarch}/Quake3-UrT-Ded.${myarch} ${PN}-ded
+ fi
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ use client && xdg_desktop_database_update
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # ^this is a new installation, so:
+ if use openal; then
+ elog ""
+ elog "You might need to set:"
+ elog " seta s_useopenal \"1\""
+ elog "in your ~/.q3a/q3ut4/q3config.cfg for openal to work."
+ fi
+
+ if use altgamma; then
+ elog ""
+ elog "You might need to set:"
+ elog " seta r_altgamma \"1\""
+ elog "in your ~/.q3a/q3ut4/q3config.cfg for altgamma to work."
+ elog "Be aware that altgamme works on a global scale, so external"
+ elog "applications like redshift can cause trouble. Disabling"
+ elog "these while playing is a usable workaround."
+ fi
+
+ if ! use altgamma; then
+ elog ""
+ elog "If you are using a modesetting graphics driver you might"
+ elog "consider setting USE=\"altgamma\"."
+ elog "For details take a look at:"
+ elog "https://bugs.freedesktop.org/show_bug.cgi?id=27222"
+ fi
+
+ if ! use client; then
+ elog ""
+ elog "You disabled client support. You won't be able to connect"
+ elog "to any servers and play. If you want to do so, enable"
+ elog "USE=\"client\"."
+ fi
+
+ if use skeetshootmod; then
+ elog ""
+ elog "You might need to set:"
+ elog " seta sv_skeetshoot \"1\""
+ elog "in your ~/.q3a/q3ut4/q3config.cfg to use the skeetshoot mod."
+ fi
+ fi
+}
+
+pkg_postrm() {
+ use client && xdg_desktop_database_update
+}