commit:     7f3f4b56a08fd671b02ea6ffc3062d416b665ad7
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 29 13:05:12 2022 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Mar 29 13:07:02 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f3f4b56

games-fps/urbanterror: add 4.3.4_p20211208

Closes: https://github.com/gentoo/gentoo/pull/24768
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 games-fps/urbanterror/Manifest                     |   1 +
 ...urbanterror-4.3.4_p20211208-respect-flags.patch |  79 ++++++++++
 .../urbanterror/urbanterror-4.3.4_p20211208.ebuild | 172 +++++++++++++++++++++
 3 files changed, 252 insertions(+)

diff --git a/games-fps/urbanterror/Manifest b/games-fps/urbanterror/Manifest
index d0d24bf966d5..ef2a679e0116 100644
--- a/games-fps/urbanterror/Manifest
+++ b/games-fps/urbanterror/Manifest
@@ -1 +1,2 @@
 DIST urbanterror-4.3.4_p20210304.tar.gz 6189619 BLAKE2B 
2a92674372c1d6c988f19179b4514926b171bc7e3e027242d261971c8ed40eca159fd33584ea869562b3002f721c31efd6d3e65c4f96ce2df1b61bcba19a8cbd
 SHA512 
ccdfa55ded774f19028250e6c8fcd371a5934284d85e265879193fab8f50c5026366f68c0bb359003f67528f2e2cb896dc6f3a3da5b5ea144d6e235e864d34e2
+DIST urbanterror-4.3.4_p20211208.tar.gz 6187667 BLAKE2B 
7901ad0d23d9b80634a3e4e68973227f302bb7004bdb1f450f7ab520f1a3243821aa49712a486d1e577e5bb055504d4005555fa273e64a2e2b57a75661044370
 SHA512 
24c0fe6775a165ddcc6b919bc46872fdcfff7e471c6ff88b635e6926bce051cc034e7ef8a5145996d67c79632cef763e4cc6c5c988d36088de0f69bb5626ff86

diff --git 
a/games-fps/urbanterror/files/urbanterror-4.3.4_p20211208-respect-flags.patch 
b/games-fps/urbanterror/files/urbanterror-4.3.4_p20211208-respect-flags.patch
new file mode 100644
index 000000000000..d6938f3a4609
--- /dev/null
+++ 
b/games-fps/urbanterror/files/urbanterror-4.3.4_p20211208-respect-flags.patch
@@ -0,0 +1,79 @@
+--- a/Makefile
++++ b/Makefile
+@@ -322,30 +322,30 @@ ifneq (,$(findstring "$(PLATFORM)", "linux" 
"gnu_kfreebsd" "kfreebsd-gnu" "gnu")
+     -pipe -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)
+-    ALTIVEC_CFLAGS = -maltivec
++    ALTIVEC_CFLAGS =
+     HAVE_VM_COMPILED=true
+   endif
+   ifeq ($(ARCH),ppc64)
+-    ALTIVEC_CFLAGS = -maltivec
++    ALTIVEC_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)
+@@ -1153,7 +1153,7 @@ endif
+ 
+ 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_CC_ALTIVEC
+@@ -1163,7 +1163,7 @@ 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_CC_ALTIVEC
+@@ -1181,7 +1181,7 @@ endef
+ 
+ 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)
+@@ -1195,7 +1195,7 @@ endef
+ 
+ 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/urbanterror-4.3.4_p20211208.ebuild 
b/games-fps/urbanterror/urbanterror-4.3.4_p20211208.ebuild
new file mode 100644
index 000000000000..5a8e0c3737e8
--- /dev/null
+++ b/games-fps/urbanterror/urbanterror-4.3.4_p20211208.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop 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="c988f7669bd70b59beb384563d4c8304062ae011"
+       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.4_p20211208-respect-flags.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
+       x11-libs/libX11
+       x11-libs/libXxf86vm
+"
+
+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() {
+       tc-export CC
+       default
+}
+
+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
+}

Reply via email to