commit:     98a6807d2b7584ad5f97e38c2dc19f8551e7e8ff
Author:     William Breathitt Gray <vilhelm.gray <AT> gmail <DOT> com>
AuthorDate: Thu May  2 13:00:54 2019 +0000
Commit:     Stefan Strogin <steils <AT> gentoo <DOT> org>
CommitDate: Sun Jun  2 19:32:44 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98a6807d

games-fps/gzdoom: New package

Package-Manager: Portage-2.3.65, Repoman-2.3.12
Signed-off-by: William Breathitt Gray <vilhelm.gray <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/11967
Signed-off-by: Stefan Strogin <steils <AT> gentoo.org>

 games-fps/gzdoom/Manifest                          |   1 +
 .../files/gzdoom-4.1.2-static-libraries.patch      | 139 +++++++++++++++++++++
 games-fps/gzdoom/gzdoom-4.1.2.ebuild               |  70 +++++++++++
 games-fps/gzdoom/metadata.xml                      |  28 +++++
 4 files changed, 238 insertions(+)

diff --git a/games-fps/gzdoom/Manifest b/games-fps/gzdoom/Manifest
new file mode 100644
index 00000000000..c4522753675
--- /dev/null
+++ b/games-fps/gzdoom/Manifest
@@ -0,0 +1 @@
+DIST gzdoom-4.1.2.tar.gz 13045742 BLAKE2B 
38c70eb82ba266e5b41bf62f28f4cee77ba17c0cc1e4186bf11be9021386511346c111874b695ef56a4ed3c93668bb64a71ba4169183646e49d0ab60a1c0793a
 SHA512 
915029e676b17dd330aeee17fa8a9e07bb8e7a16e8ebce9fcdcd24e5b2f0cc48fd8f6914314029b332112ad4215a0f0d45d8e448e9025ac3c2a708a5e0bbd399

diff --git a/games-fps/gzdoom/files/gzdoom-4.1.2-static-libraries.patch 
b/games-fps/gzdoom/files/gzdoom-4.1.2-static-libraries.patch
new file mode 100644
index 00000000000..344fc0193d2
--- /dev/null
+++ b/games-fps/gzdoom/files/gzdoom-4.1.2-static-libraries.patch
@@ -0,0 +1,139 @@
+From 6fafa297bfe0f82696d898d66e39c50f4f5eef16 Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.g...@gmail.com>
+Date: Wed, 15 May 2019 23:58:28 +0900
+Subject: [PATCH] Force STATIC for internal GZDoom libraries
+
+This makes sure the internal versions of these libraries bundled with
+the GZDoom source code is used. This prevents the system from building
+GZDoom for dynamic linking with incompatible external libraries (see
+<https://forum.zdoom.org/viewtopic.php?f=2&t=64633>).
+---
+ asmjit/CMakeLists.txt             | 2 +-
+ bzip2/CMakeLists.txt              | 2 +-
+ game-music-emu/gme/CMakeLists.txt | 2 +-
+ gdtoa/CMakeLists.txt              | 2 +-
+ glslang/glslang/CMakeLists.txt    | 2 +-
+ glslang/spirv/CMakeLists.txt      | 2 +-
+ jpeg/CMakeLists.txt               | 2 +-
+ lzma/CMakeLists.txt               | 2 +-
+ zlib/CMakeLists.txt               | 2 +-
+ 9 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/asmjit/CMakeLists.txt b/asmjit/CMakeLists.txt
+index ab5c2fb4f..6b7636ebe 100644
+--- a/asmjit/CMakeLists.txt
++++ b/asmjit/CMakeLists.txt
+@@ -97,7 +97,7 @@ set(ASMJIT_SRCS
+     asmjit/x86/x86regalloc.cpp
+ )
+ 
+-add_library(${ASMJITNAME} ${ASMJIT_SRCS} ${ASMJIT_PUBLIC_HDRS})
++add_library(${ASMJITNAME} STATIC ${ASMJIT_SRCS} ${ASMJIT_PUBLIC_HDRS})
+ 
+ set_target_properties(${ASMJITNAME} PROPERTIES OUTPUT_NAME asmjit)
+ 
+diff --git a/bzip2/CMakeLists.txt b/bzip2/CMakeLists.txt
+index 6ff9a2172..7fefb2bf2 100644
+--- a/bzip2/CMakeLists.txt
++++ b/bzip2/CMakeLists.txt
+@@ -7,7 +7,7 @@ if( ZD_CMAKE_COMPILER_IS_GNUC_COMPATIBLE )
+ endif()
+ 
+ add_definitions( -DBZ_NO_STDIO )
+-add_library( bz2
++add_library( bz2 STATIC
+     blocksort.c
+     bzlib.c
+     compress.c
+diff --git a/game-music-emu/gme/CMakeLists.txt 
b/game-music-emu/gme/CMakeLists.txt
+index a5e06bc8a..5c37ebd29 100644
+--- a/game-music-emu/gme/CMakeLists.txt
++++ b/game-music-emu/gme/CMakeLists.txt
+@@ -163,7 +163,7 @@ set (EXPORTED_HEADERS gme.h)
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ 
+ # Add library to be compiled.
+-add_library(gme ${libgme_SRCS})
++add_library(gme STATIC ${libgme_SRCS})
+ 
+ if(ZLIB_FOUND)
+     message(" ** ZLib library located, compressed file formats will be 
supported")
+diff --git a/gdtoa/CMakeLists.txt b/gdtoa/CMakeLists.txt
+index a0b76e0c3..485f3778b 100644
+--- a/gdtoa/CMakeLists.txt
++++ b/gdtoa/CMakeLists.txt
+@@ -35,7 +35,7 @@ if( NOT MSVC AND NOT APPLE )
+       set( GEN_FP_DEPS ${CMAKE_CURRENT_BINARY_DIR}/arith.h 
${CMAKE_CURRENT_BINARY_DIR}/gd_qnan.h )
+ endif()
+ 
+-add_library( gdtoa
++add_library( gdtoa STATIC
+       ${GEN_FP_FILES}
+       dmisc.c
+       dtoa.c
+diff --git a/glslang/glslang/CMakeLists.txt b/glslang/glslang/CMakeLists.txt
+index c86eccb6e..e376a9178 100644
+--- a/glslang/glslang/CMakeLists.txt
++++ b/glslang/glslang/CMakeLists.txt
+@@ -120,7 +120,7 @@ endmacro(glslang_pch)
+ 
+ glslang_pch(SOURCES MachineIndependent/pch.cpp)
+ 
+-add_library(glslang ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} 
${HEADERS})
++add_library(glslang STATIC ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} 
${SOURCES} ${HEADERS})
+ set_property(TARGET glslang PROPERTY FOLDER glslang)
+ set_property(TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON)
+ target_link_libraries(glslang OGLCompiler OSDependent)
+diff --git a/glslang/spirv/CMakeLists.txt b/glslang/spirv/CMakeLists.txt
+index 8062f8067..03d34d8f4 100644
+--- a/glslang/spirv/CMakeLists.txt
++++ b/glslang/spirv/CMakeLists.txt
+@@ -59,7 +59,7 @@ if(ENABLE_NV_EXTENSIONS)
+          GLSL.ext.NV.h)
+ endif(ENABLE_NV_EXTENSIONS)
+ 
+-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 ..)
+diff --git a/jpeg/CMakeLists.txt b/jpeg/CMakeLists.txt
+index 81834c742..33a3938cf 100644
+--- a/jpeg/CMakeLists.txt
++++ b/jpeg/CMakeLists.txt
+@@ -6,7 +6,7 @@ if( ZD_CMAKE_COMPILER_IS_GNUC_COMPATIBLE )
+       set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra 
-Wno-unused-parameter -fomit-frame-pointer" )
+ endif()
+ 
+-add_library( jpeg
++add_library( jpeg STATIC
+     jaricom.c
+     jcomapi.c
+     jdapimin.c
+diff --git a/lzma/CMakeLists.txt b/lzma/CMakeLists.txt
+index 3948ea2ee..4246a34f8 100644
+--- a/lzma/CMakeLists.txt
++++ b/lzma/CMakeLists.txt
+@@ -34,5 +34,5 @@ else()
+       set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_7ZIP_ST" )
+ endif()
+ 
+-add_library( lzma ${LZMA_FILES} )
++add_library( lzma STATIC ${LZMA_FILES} )
+ target_link_libraries( lzma )
+diff --git a/zlib/CMakeLists.txt b/zlib/CMakeLists.txt
+index 52542bbaa..a1d6637a9 100644
+--- a/zlib/CMakeLists.txt
++++ b/zlib/CMakeLists.txt
+@@ -137,7 +137,7 @@ if(MINGW)
+     set(ZLIB_SRCS ${ZLIB_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
+ endif()
+ 
+-add_library(${ZLIBNAME} ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
++add_library(${ZLIBNAME} STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} 
${ZLIB_PRIVATE_HDRS})
+ set_target_properties(${ZLIBNAME} PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
+ 
+ set_target_properties(${ZLIBNAME} PROPERTIES SOVERSION 1)
+-- 
+2.21.0
+

diff --git a/games-fps/gzdoom/gzdoom-4.1.2.ebuild 
b/games-fps/gzdoom/gzdoom-4.1.2.ebuild
new file mode 100644
index 00000000000..57242205a7a
--- /dev/null
+++ b/games-fps/gzdoom/gzdoom-4.1.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils 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="BSD BZIP2 cephes DUMB-0.9.2 GPL-3 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="fluidsynth gtk gtk2 openal openmp"
+
+DEPEND="
+       media-libs/libsdl2[opengl]
+       sys-libs/zlib
+       virtual/jpeg:0
+       gtk? (
+               gtk2? ( x11-libs/gtk+:2 )
+               !gtk2? ( x11-libs/gtk+:3 )
+       )"
+RDEPEND="
+       ${DEPEND}
+       fluidsynth? ( media-sound/fluidsynth )
+       openal? (
+               media-libs/libsndfile
+               media-libs/openal
+               media-sound/mpg123
+       )"
+
+S="${WORKDIR}/${PN}-g${PV}"
+
+PATCHES="${FILESDIR}/${P}-static-libraries.patch"
+
+src_prepare() {
+       rm -rf docs/licenses || die
+       cmake-utils_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DINSTALL_DOCS_PATH="${EPREFIX}/usr/share/doc/${PF}"
+               -DINSTALL_PK3_PATH="${EPREFIX}/usr/share/doom"
+               -DNO_GTK="$(usex !gtk)"
+               -DNO_OPENAL="$(usex !openal)"
+               -DNO_OPENMP="$(usex !openmp)"
+       )
+       cmake-utils_src_configure
+}
+
+src_install() {
+       newicon src/posix/zdoom.xpm "${PN}.xpm"
+       make_desktop_entry "${PN}" "GZDoom" "${PN}" "Game;ActionGame"
+       cmake-utils_src_install
+}
+
+pkg_preinst() {
+       xdg_pkg_preinst
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+}
+
+pkg_postrm() {
+       xdg_pkg_postrm
+}

diff --git a/games-fps/gzdoom/metadata.xml b/games-fps/gzdoom/metadata.xml
new file mode 100644
index 00000000000..95f6ed619ed
--- /dev/null
+++ b/games-fps/gzdoom/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <longdescription lang="en">
+               GZDoom is a modder-friendly OpenGL source port based on the 
DOOM engine
+       </longdescription>
+       <maintainer type="person">
+               <email>vilhelm.g...@gmail.com</email>
+               <name>William Breathitt Gray</name>
+       </maintainer>
+       <maintainer type="project">
+               <email>proxy-ma...@gentoo.org</email>
+               <name>Proxy Maintainers</name>
+       </maintainer>
+       <maintainer type="project">
+               <email>ga...@gentoo.org</email>
+               <name>Gentoo Games Project</name>
+       </maintainer>
+       <use>
+               <flag name="fluidsynth">Use <pkg>media-sound/fluidsynth</pkg> 
for MIDI support</flag>
+               <flag name="gtk2">Enable support for GTK+2 instead of 
GTK+3</flag>
+       </use>
+       <upstream>
+               <bugs-to>https://forum.zdoom.org/viewforum.php?f=2</bugs-to>
+               <doc lang="en">https://zdoom.org</doc>
+               <remote-id type="github">coelckers/gzdoom</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to