summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Breathitt Gray <vilhelm.gray@gmail.com>2020-06-17 14:50:17 -0400
committerJames Le Cuirot <chewi@gentoo.org>2020-09-02 22:33:44 +0100
commita5d01020198a3aca269e0cc5666db8da0727be0c (patch)
tree9bceb28d62c749168fd660d752cb1c59b5ef5017 /games-fps
parentmedia-libs/zmusic: New package (diff)
downloadgentoo-a5d01020198a3aca269e0cc5666db8da0727be0c.tar.gz
gentoo-a5d01020198a3aca269e0cc5666db8da0727be0c.tar.bz2
gentoo-a5d01020198a3aca269e0cc5666db8da0727be0c.zip
games-fps/gzdoom: Version bump to 4.4.2
Closes: https://bugs.gentoo.org/727448 Signed-off-by: William Breathitt Gray <vilhelm.gray@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/16301 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Diffstat (limited to 'games-fps')
-rw-r--r--games-fps/gzdoom/Manifest1
-rw-r--r--games-fps/gzdoom/files/gzdoom-4.4.2-Force-STATIC-for-internal-GZDoom-SPIRV-library.patch30
-rw-r--r--games-fps/gzdoom/files/gzdoom-4.4.2-Introduce-the-BUILD_NONFREE-option.patch35
-rw-r--r--games-fps/gzdoom/gzdoom-4.4.2.ebuild81
4 files changed, 147 insertions, 0 deletions
diff --git a/games-fps/gzdoom/Manifest b/games-fps/gzdoom/Manifest
index c7de0cf9fa70..dbfc90a7a341 100644
--- a/games-fps/gzdoom/Manifest
+++ b/games-fps/gzdoom/Manifest
@@ -1 +1,2 @@
DIST gzdoom-4.3.3.tar.gz 13704956 BLAKE2B 4c9338b8958a408bee268eadadd779be8488540e68d5f46d7d0b18a825cd6391368b2c5149eff965685dd97f7ee51f12050e07f558c7f62551c8e239049110ea SHA512 ef8e3a7cfa4d03a98536deddb53ded4b23609b834dd07af4224cd2eb1136bca2a318a99a959a36b2e423038938a2175c015c48d89510f124bd32b7656004e1d1
+DIST gzdoom-4.4.2.tar.gz 12613806 BLAKE2B 7c2f6b490abd8bd23068af7df9ebf111bb09cc7af979d7bf285e744f8cb23c69f360b8cb274ebd354f5885aabeb53c744075696ff8fd5710dd15f07f70b4395b SHA512 cf3fb4588555ef98a1c224ca07e3ab0ee00a39ad6abb4fa7e31ce7ce013f146aa2be6c8303badd7a86b21da2a689cbd1d234c46739f84ee5293745a1189226ba
diff --git a/games-fps/gzdoom/files/gzdoom-4.4.2-Force-STATIC-for-internal-GZDoom-SPIRV-library.patch b/games-fps/gzdoom/files/gzdoom-4.4.2-Force-STATIC-for-internal-GZDoom-SPIRV-library.patch
new file mode 100644
index 000000000000..779268ca6d7e
--- /dev/null
+++ b/games-fps/gzdoom/files/gzdoom-4.4.2-Force-STATIC-for-internal-GZDoom-SPIRV-library.patch
@@ -0,0 +1,30 @@
+From c904b7521657e55843bae34f1f958d689538b13b Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Wed, 17 Jun 2020 15:17:49 -0400
+Subject: [PATCH] Force STATIC for internal GZDoom SPIRV library
+
+This makes sure the internal version of this library bundled with the
+GZDoom source code is used. This prevents the system from building
+GZDoom for dynamic linking with an incompatible external library (see
+commit 6fafa297bfe0f82696d898d66e39c50f4f5eef16 and
+<https://forum.zdoom.org/viewtopic.php?f=2&t=64633>).
+---
+ libraries/glslang/spirv/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libraries/glslang/spirv/CMakeLists.txt b/libraries/glslang/spirv/CMakeLists.txt
+index 453ac16b5..d39a6e300 100644
+--- a/libraries/glslang/spirv/CMakeLists.txt
++++ b/libraries/glslang/spirv/CMakeLists.txt
+@@ -49,7 +49,7 @@ set(SPVREMAP_HEADERS
+ SPVRemapper.h
+ doc.h)
+
+-add_library(SPIRV ${LIB_TYPE} ${SOURCES} ${HEADERS})
++add_library(SPIRV STATIC ${LIB_TYPE} ${SOURCES} ${HEADERS})
+ set_property(TARGET SPIRV PROPERTY FOLDER glslang)
+ set_property(TARGET SPIRV PROPERTY POSITION_INDEPENDENT_CODE ON)
+ target_include_directories(SPIRV PUBLIC
+--
+2.26.2
+
diff --git a/games-fps/gzdoom/files/gzdoom-4.4.2-Introduce-the-BUILD_NONFREE-option.patch b/games-fps/gzdoom/files/gzdoom-4.4.2-Introduce-the-BUILD_NONFREE-option.patch
new file mode 100644
index 000000000000..d7ece785e25d
--- /dev/null
+++ b/games-fps/gzdoom/files/gzdoom-4.4.2-Introduce-the-BUILD_NONFREE-option.patch
@@ -0,0 +1,35 @@
+From decf1df37a22c87da78230941209c110f7763f4b Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Sat, 31 Aug 2019 21:23:23 +0900
+Subject: [PATCH] Introduce the BUILD_NONFREE option
+
+This allow users to disable building nonfree components (brightmaps.pk3
+and game_support.pk3) if they so desire.
+---
+ CMakeLists.txt | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4e59452..c2f49b2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -393,10 +393,14 @@ add_subdirectory( libraries/lzma )
+ add_subdirectory( tools )
+ add_subdirectory( libraries/gdtoa )
+ add_subdirectory( wadsrc )
+-add_subdirectory( wadsrc_bm )
+ add_subdirectory( wadsrc_lights )
+-add_subdirectory( wadsrc_extra )
+ add_subdirectory( src )
++option (BUILD_NONFREE "Build nonfree components" ON)
++if( BUILD_NONFREE )
++ add_subdirectory( wadsrc_bm )
++ add_subdirectory( wadsrc_extra )
++endif()
++
+
+ if( NOT CMAKE_CROSSCOMPILING )
+ export(TARGETS ${CROSS_EXPORTS} FILE "${CMAKE_BINARY_DIR}/ImportExecutables.cmake" )
+--
+2.26.2
+
diff --git a/games-fps/gzdoom/gzdoom-4.4.2.ebuild b/games-fps/gzdoom/gzdoom-4.4.2.ebuild
new file mode 100644
index 000000000000..5c345dd665bc
--- /dev/null
+++ b/games-fps/gzdoom/gzdoom-4.4.2.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake desktop xdg
+
+DESCRIPTION="A modder-friendly OpenGL source port based on the DOOM engine"
+HOMEPAGE="https://zdoom.org"
+SRC_URI="https://github.com/coelckers/${PN}/archive/g${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 BSD BZIP2 GPL-3 LGPL-2.1+ LGPL-3 MIT
+ non-free? ( Activision ChexQuest3 DOOM-COLLECTORS-EDITION freedist )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk gtk2 +non-free openmp"
+
+DEPEND="
+ app-arch/bzip2
+ media-libs/libsdl2[opengl]
+ media-libs/openal
+ media-libs/zmusic
+ sys-libs/zlib
+ virtual/jpeg:0
+ gtk? (
+ gtk2? ( x11-libs/gtk+:2 )
+ !gtk2? ( x11-libs/gtk+:3 )
+ )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-g${PV}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.2.1-install_soundfonts.patch"
+ "${FILESDIR}/${P}-Introduce-the-BUILD_NONFREE-option.patch"
+ "${FILESDIR}/${P}-Force-STATIC-for-internal-GZDoom-SPIRV-library.patch"
+)
+
+src_prepare() {
+ rm -rf docs/licenses || die
+ rm -rf libraries/{bzip2,jpeg,zlib} || die
+ if ! use non-free ; then
+ rm -rf wadsrc_bm wadsrc_extra || die
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DINSTALL_DOCS_PATH="${EPREFIX}/usr/share/doc/${PF}"
+ -DINSTALL_PK3_PATH="${EPREFIX}/usr/share/doom"
+ -DINSTALL_SOUNDFONT_PATH="${EPREFIX}/usr/share/doom"
+ -DDYN_OPENAL=OFF
+ -DNO_GTK="$(usex !gtk)"
+ -DNO_OPENAL=OFF
+ -DNO_OPENMP="$(usex !openmp)"
+ -DBUILD_NONFREE="$(usex non-free)"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ newicon src/posix/zdoom.xpm "${PN}.xpm"
+ make_desktop_entry "${PN}" "GZDoom" "${PN}" "Game;ActionGame"
+ cmake_src_install
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ! use non-free ; then
+ ewarn
+ ewarn "GZDoom installed without non-free components."
+ ewarn "Note: The non-free game_support.pk3 file is needed to play"
+ ewarn " games natively supported by GZDoom."
+ ewarn "A list of games natively supported by GZDoom is available"
+ ewarn "on the ZDoom wiki: https://zdoom.org/wiki/IWAD"
+ ewarn
+ fi
+}