games-fps/urbanterror: Bump to v4.3.2_p20170426 (bug #596982)
authorNils Freydank <holgersson@posteo.de>
Wed, 10 May 2017 19:55:21 +0000 (21:55 +0200)
committerThomas Deutschmann <whissi@gentoo.org>
Wed, 10 May 2017 19:55:32 +0000 (21:55 +0200)
EBuild changes:
===============
  - Ebuild no longer uses bundled libs (bug #457014)

  - Contains fixes for / no longer affected by CVE-2011-1412,
    CVE-2011-2764, CVE-2011-3012,CVE-2012-3345 due to
    updated/changed engine (bug #606702)

  - Fixed some format-security problems (bug #545966)

Closes: https://github.com/gentoo/gentoo/pull/4172

Gentoo-Bug: https://bugs.gentoo.org/596982
Gentoo-Bug: https://bugs.gentoo.org/457014
Gentoo-Bug: https://bugs.gentoo.org/545966
Gentoo-Bug: https://bugs.gentoo.org/606702

Package-Manager: Portage-2.3.5, Repoman-2.3.2
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
games-fps/urbanterror/Manifest
games-fps/urbanterror/files/urbanterror-4.3-respect_CFLAGS.patch [new file with mode: 0644]
games-fps/urbanterror/metadata.xml
games-fps/urbanterror/urbanterror-4.3.2_p20170426.ebuild [new file with mode: 0644]

index 17d6aa25356021477b36900e96b650bf42ba9257..5ff4b23affe55f88a8b01b45023dd62e11c1d98b 100644 (file)
@@ -1,4 +1,5 @@
 DIST UrbanTerror-4.2.022-to-4.2.023.zip 15296685 SHA256 71d34f4245c264dd729d40cf76c1471c89606891f88fda28e007ebe6a052dde9 SHA512 2b35a34cf478939b850fd6f9b2f4a46f55259f32574799968ec4595c8e7c8930910ac6958bf03c99d63516cc4a41dbd6faaad4207326e42a19981561d25aff0e WHIRLPOOL bc13ec862ad829a5b417b114d50cc3f3dc1701b3c6fd136bafa0e2a68f0bbe44d03ea33a832e4882ab7cf63f3202b1ff6f62660bc69273542165d8e7f1e36d2f
 DIST UrbanTerror42_full022.zip 1924134151 SHA256 e8b0a2c3a7253c24cac4e5b24028a0c9841717ae867e74ae18a18fd9c7259fd6 SHA512 6da90696c8e0f2b5315bc2564e45e8d4ee708f5f42dc1ae26846a030798c1614ef938e0ed2028ceb69b7f5a59aa1a2310d73a20530f52be29e7c4e5819f6b290 WHIRLPOOL 9e428099bdfdad94cb554821dfd9128cd909c9c51c50b2009b8778aea69bb4be10be0c6a9299de76e60c9d5a22eb0dc06a1987f4851d360c718ed6f019554a36
 DIST urbanterror-4.2.023.tar.gz 12637911 SHA256 17c79f4ed1adc0859a20f0b19ab75f04e1e7ff518c882b5cd68199b44acff90f SHA512 c0b3fb0d53889561124ea034bd2b579c3b56489e751adf9479b86c54855b4f0917589a41caa7c1a534afee59983f77394a1c76dc92534dc84116a5566c19e8e5 WHIRLPOOL 68fa26a7a0ea19a1b7b3ced968515e1b326a9f7acabc30096b15880a772c4ca4faa764fb1fd4ab07d616718c550284af88cd03deeb8b11b7003b96336413d3ee
+DIST urbanterror-4.3.2_p20170426.tar.gz 10058308 SHA256 8009516332e1f77eae3681b436e099fdd42ffa55d2691694eedc0ca94b194878 SHA512 e8107ab44fdb40bc14a548239185905a01120bbe960b8713e5959df18330fd845761350c5e8e5efd5fbfec10ad62ff9fef68420406cc4cfbe2af69ee66eff1f3 WHIRLPOOL 6aac15e44b0695501195ae172133f4b6788b9dffa5442af20d11626ad27ffd597c7f070c0fb95b0e0e8b8b3d6cf0e1bfc40b0a16abaa27c8f932ee90f19a1824
 DIST urbanterror.svg 1592 SHA256 0d7eb12a8fe8380e0d89199621414dd56ecdfe8a8b99eec5b95d925294521de9 SHA512 ff789b35d9b1a2282485495b0d1918c7169906aeac094e7a33c7d77cd51d4787733400e1b9851ce19b38e886508d5fdd09f6cfc96b37a5b41bd0cf403e456b98 WHIRLPOOL 281413cfeb881466c2d8b882d0aa4dcf19013630a462775345c69e78a0cb86c7efed14f5d22b453c89648da682ab5e98e3579a1c975994a8e90b9fb22c37892c
diff --git a/games-fps/urbanterror/files/urbanterror-4.3-respect_CFLAGS.patch b/games-fps/urbanterror/files/urbanterror-4.3-respect_CFLAGS.patch
new file mode 100644 (file)
index 0000000..5ce1334
--- /dev/null
@@ -0,0 +1,53 @@
+Author: holgersson <holgersson@posteo.de>
+Date:   Fri Mar 31 12:13:00 2017 +0200
+
+Respect CFLAGS - inspired by hasufell’s patch
+
+--- a/Makefile 2017-03-31 11:08:58.419210817 +0200
++++ b/Makefile 2017-03-31 12:06:52.559412054 +0200
+@@ -290,34 +290,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)
index 8aa6fc306a0b867528a1b062090095f8e8f1ff7f..062f62f84665d719a156914d2026689a320190d2 100644 (file)
@@ -1,14 +1,25 @@
 <?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">Clearskies - X11-based gamma for Linux</flag>
-               <flag name="server">Build server target</flag>
-               <flag name="pax_kernel">Triggers a paxmarking of the binary</flag>
+               <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="opus">Use opus as sound codec</flag>
+               <flag name="mumble">Use Mumble for ingame VoIP (experimental)</flag>
+               <flag name="voip">Use ioq3 ingame VoIP (experimental)</flag>
+               <flag name="server">Build binary for dedicated server</flag>
        </use>
        <upstream>
                <remote-id type="github">Barbatos/ioq3-for-UrbanTerror-4</remote-id>
diff --git a/games-fps/urbanterror/urbanterror-4.3.2_p20170426.ebuild b/games-fps/urbanterror/urbanterror-4.3.2_p20170426.ebuild
new file mode 100644 (file)
index 0000000..5d79cf7
--- /dev/null
@@ -0,0 +1,152 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+inherit flag-o-matic gnome2-utils
+
+DESCRIPTION="Hollywood tactical shooter based on the ioquake3 engine"
+HOMEPAGE="http://urbanterror.info"
+
+if [[ ${PV} == "9999" ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/mickael9/ioq3.git"
+       EGIT_BRANCH="urt"
+else
+       COMMIT_ID="60b17a27ecaa30bffc44114cb94df82af7febfdd"
+       SRC_URI="https://github.com/mickael9/ioq3/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+       S="${WORKDIR}/ioq3-${COMMIT_ID}"
+       KEYWORDS="~x86 ~amd64"
+
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+altgamma +client +curl debug mumble openal +opus server voip vorbis"
+REQUIRED_USE=" || ( client server )"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.3-respect_CFLAGS.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/libogg
+                       media-libs/libvorbis
+               )
+       )
+       curl? ( net-misc/curl )
+       ~games-fps/urbanterror-data-4.3.2
+       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_compile() {
+       buildit() { use $1 && echo 1 || echo 0 ; }
+       nobuildit() { use $1 && echo 0 || echo 1 ; }
+
+       # Workaround for used zlib macro, wrt bug #44951
+       append-flags "-DOF=_Z_OF"
+
+       emake \
+               ARCH=$(usex amd64 "x86_64" "i386") \
+               DEFAULT_BASEDIR="/usr/share/urbanterror" \
+               BUILD_CLIENT=$(buildit client) \
+               BUILD_SERVER=$(buildit server) \
+               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=$(buildit openal) \
+               USE_OPENAL_DLOPEN=$(buildit openal) \
+               USE_CURL=$(buildit curl) \
+               USE_CURL_DLOPEN=$(buildit curl) \
+               USE_CODEC_VORBIS=$(buildit vorbis) \
+               USE_CODEC_OPUS=$(buildit opus) \
+               USE_MUMBLE=$(buildit mumble) \
+               USE_VOIP=$(buildit voip) \
+               USE_INTERNAL_LIBS=0 \
+               USE_LOCAL_HEADERS=0 \
+               USE_ALTGAMMA=$(buildit altgamma)
+}
+
+src_install() {
+       local my_arch=$(usex amd64 "x86_64" "i386")
+
+       # docs from ioq3, not from UrbanTerror ZIP file
+       dodoc ChangeLog README.md README.ioq3.md md4-readme.txt
+
+       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
+}
+
+pkg_preinst() {
+       use client && gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       use client && gnome2_icon_cache_update
+
+       if [[ -z "${REPLACING_VERSIONS}" ]]; then
+               # This is a new installation
+               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."
+               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
+       fi
+}
+
+pkg_postrm() {
+       use client && gnome2_icon_cache_update
+}