games-fps/urbanterror: Bump to 4.3.3_p20180218
authorNils Freydank <holgersson@posteo.de>
Wed, 14 Mar 2018 21:43:18 +0000 (22:43 +0100)
committerAndreas Sturmlechner <asturm@gentoo.org>
Thu, 15 Mar 2018 22:27:01 +0000 (23:27 +0100)
Note that the engine's code is still the same.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

games-fps/urbanterror/Manifest
games-fps/urbanterror/files/urbanterror-4.3.3_p20180218-fix-loop.patch [new file with mode: 0644]
games-fps/urbanterror/urbanterror-4.3.3_p20180218.ebuild [new file with mode: 0644]

index 2534ae6fbbabe863957a7452a1854810c762b77c..2fd75ae2d2b91bf69571f578e7a3e0edd13820e8 100644 (file)
@@ -1,2 +1,3 @@
 DIST urbanterror-4.3.2_p20180216.tar.gz 10070633 BLAKE2B 38724030fc87e0800b9d6d1814efafc244584832e9fe78df060f2603040d72ee38602e300c3c765dfab4f803c9ae0e63116daf01601e571357a914509a6a8672 SHA512 88aa12a492f1d94e956ab4a8a1caeec259081043706b160d87fffe91b502399c0ddc34a4566463f336ae1b133cf250920ccd718647ac13d2eb48ddf9e6bb5517
 DIST urbanterror-4.3.2_p20180218.tar.gz 10069644 BLAKE2B ef711eee61f18cf2bc15974806d1b0b74c2a2094fbca5a07d70307289ae9eca53d2704b1cabc754c70984133761ff6daa55e00613668c0f0cc2b9a3ad5dac624 SHA512 e7f433b9971f5992efedee96123fe7c7665b6c7fa4a516df281e1f3635a9d56a653310e38f326a8e53640ed0a7d8e3bf6b44c08d70b8378d1ccdd75c05b31dc8
+DIST urbanterror-4.3.3_p20180218.tar.gz 10069644 BLAKE2B ef711eee61f18cf2bc15974806d1b0b74c2a2094fbca5a07d70307289ae9eca53d2704b1cabc754c70984133761ff6daa55e00613668c0f0cc2b9a3ad5dac624 SHA512 e7f433b9971f5992efedee96123fe7c7665b6c7fa4a516df281e1f3635a9d56a653310e38f326a8e53640ed0a7d8e3bf6b44c08d70b8378d1ccdd75c05b31dc8
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 (file)
index 0000000..c34ebe8
--- /dev/null
@@ -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/urbanterror-4.3.3_p20180218.ebuild b/games-fps/urbanterror/urbanterror-4.3.3_p20180218.ebuild
new file mode 100644 (file)
index 0000000..e211e74
--- /dev/null
@@ -0,0 +1,167 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+inherit eapi7-ver flag-o-matic toolchain-funcs xdg-utils
+
+DESCRIPTION="Hollywood tactical shooter based on the ioquake3 engine"
+HOMEPAGE="http://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="d93f05de38a6cae60fbf0f073aace64b3adc7aaf"
+       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.3
+       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 my_arch=$(usex amd64 "x86_64" "i386")
+
+       emake \
+               ARCH=${my_arch} \
+               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")
+}
+
+src_install() {
+       local my_arch=$(usex amd64 "x86_64" "i386")
+
+       if use client; then
+               newbin build/$(usex debug "debug" "release")-linux-${my_arch}/Quake3-UrT.${my_arch} ${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/$(usex debug "debug" "release")-linux-${my_arch}/Quake3-UrT-Ded.${my_arch} ${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
+}