diff --git a/_service b/_service index ea2a180..12cd5fc 100644 --- a/_service +++ b/_service @@ -2,8 +2,8 @@ git git://github.com/coelckers/gzdoom - g3.7.2 - 3.7.2 + g4.0.0 + 4.0.0 wadsrc_extra diff --git a/g4.1.3.tar.gz b/g4.1.3.tar.gz new file mode 100644 index 0000000..3b84d34 --- /dev/null +++ b/g4.1.3.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5174c73e553d8ebbb5939255a6bdc56aecd4ff862ed20e544f271d59290a2d2b +size 13084313 diff --git a/gzdoom-3.7.2.tar.xz b/gzdoom-3.7.2.tar.xz deleted file mode 100644 index 05948d4..0000000 --- a/gzdoom-3.7.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7414160623d46fa56672bea88f0140e86ee70dbfe2fd778cd1e4e5410b74685b -size 8379076 diff --git a/gzdoom-asmjit.patch b/gzdoom-asmjit.patch deleted file mode 100644 index 21c3a96..0000000 --- a/gzdoom-asmjit.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Jan Engelhardt -Date: 2019-01-03 14:48:11.831267534 +0100 - -Nothing else uses asmjit at this time, so save on the extra library. -(`make install` also misses installing it as a shared library.) ---- - asmjit/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: gzdoom-3.7.1/asmjit/CMakeLists.txt -=================================================================== ---- gzdoom-3.7.1.orig/asmjit/CMakeLists.txt -+++ gzdoom-3.7.1/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/gzdoom-lzma.patch b/gzdoom-lzma.patch index bef5dd0..51310c5 100644 --- a/gzdoom-lzma.patch +++ b/gzdoom-lzma.patch @@ -1,22 +1,27 @@ +From: Jan Engelhardt +Date: 2018-01-08 13:48:59+0100 + +Use LZMA system libraries instead of bundled code. + --- CMakeLists.txt | 4 ++-- src/CMakeLists.txt | 4 ++-- tools/zipdir/CMakeLists.txt | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) -Index: gzdoom-3.7.2/CMakeLists.txt +Index: gzdoom-4.0.0/CMakeLists.txt =================================================================== ---- gzdoom-3.7.2.orig/CMakeLists.txt -+++ gzdoom-3.7.2/CMakeLists.txt +--- gzdoom-4.0.0.orig/CMakeLists.txt ++++ gzdoom-4.0.0/CMakeLists.txt @@ -12,6 +12,7 @@ endif() list( APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ) include( FindPackageHandleStandardArgs ) +include(FindPkgConfig) - # Produce a warning if XP support will be missing when building a 32 bit target for MSVC. - if( MSVC ) -@@ -340,7 +341,7 @@ else() + # Support cross compiling + option( FORCE_CROSSCOMPILE "Turn on cross compiling." NO ) +@@ -355,7 +356,7 @@ else() set( GME_LIBRARIES gme ) endif() @@ -25,7 +30,7 @@ Index: gzdoom-3.7.2/CMakeLists.txt if( NOT CMAKE_CROSSCOMPILING ) if( NOT CROSS_EXPORTS ) -@@ -358,7 +359,6 @@ install(DIRECTORY docs/ +@@ -373,7 +374,6 @@ install(DIRECTORY docs/ DESTINATION ${INSTALL_DOCS_PATH} COMPONENT "Documentation") @@ -33,20 +38,20 @@ Index: gzdoom-3.7.2/CMakeLists.txt add_subdirectory( tools ) add_subdirectory( dumb ) add_subdirectory( gdtoa ) -Index: gzdoom-3.7.2/src/CMakeLists.txt +Index: gzdoom-4.0.0/src/CMakeLists.txt =================================================================== ---- gzdoom-3.7.2.orig/src/CMakeLists.txt -+++ gzdoom-3.7.2/src/CMakeLists.txt -@@ -461,7 +461,7 @@ add_custom_target( revision_check ALL +--- gzdoom-4.0.0.orig/src/CMakeLists.txt ++++ gzdoom-4.0.0/src/CMakeLists.txt +@@ -467,7 +467,7 @@ set( ZDOOM_LIBS ${ZDOOM_LIBS} "${ZLIB_LI + if (HAVE_VULKAN) + set( ZDOOM_LIBS ${ZDOOM_LIBS} "glslang" "SPIRV" "OGLCompiler") + endif() +-include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) ++include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) - message( STATUS "Fluid synth libs: ${FLUIDSYNTH_LIBRARIES}" ) - set( ZDOOM_LIBS ${ZDOOM_LIBS} "${ZLIB_LIBRARIES}" "${JPEG_LIBRARIES}" "${BZIP2_LIBRARIES}" "${GME_LIBRARIES}" "${ASMJIT_LIBRARIES}" "${CMAKE_DL_LIBS}" ) --include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" "${ASMJIT_INCLUDE_DIR}" ) -+include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" "${ASMJIT_INCLUDE_DIR}" ) - - if( SNDFILE_FOUND ) - set( ZDOOM_LIBS ${ZDOOM_LIBS} "${SNDFILE_LIBRARIES}" ) -@@ -1308,7 +1308,7 @@ if( UNIX ) + if( ${HAVE_VM_JIT} ) + add_definitions( -DHAVE_VM_JIT ) +@@ -1370,7 +1370,7 @@ if( UNIX ) endif() endif() @@ -55,10 +60,10 @@ Index: gzdoom-3.7.2/src/CMakeLists.txt include_directories( . g_statusbar -Index: gzdoom-3.7.2/tools/zipdir/CMakeLists.txt +Index: gzdoom-4.0.0/tools/zipdir/CMakeLists.txt =================================================================== ---- gzdoom-3.7.2.orig/tools/zipdir/CMakeLists.txt -+++ gzdoom-3.7.2/tools/zipdir/CMakeLists.txt +--- gzdoom-4.0.0.orig/tools/zipdir/CMakeLists.txt ++++ gzdoom-4.0.0/tools/zipdir/CMakeLists.txt @@ -1,9 +1,9 @@ cmake_minimum_required( VERSION 2.8.7 ) diff --git a/gzdoom-staticlibs.patch b/gzdoom-staticlibs.patch deleted file mode 100644 index 4b4e5d7..0000000 --- a/gzdoom-staticlibs.patch +++ /dev/null @@ -1,52 +0,0 @@ -From: Jan Engelhardt -Date: 2018-01-02 19:17:14.364202580 +0100 - -Some bundled code (which is also an older version and cannot simply be switched -out just yet) needs to be explicitly set to STATIC, or cmake will generate -files like "liblzma.so" etc. with no versioning and which are not installed by -cmake_install. - ---- - CMakeLists.txt | 1 - - dumb/CMakeLists.txt | 2 +- - gdtoa/CMakeLists.txt | 2 +- - lzma/CMakeLists.txt | 2 +- - 4 files changed, 3 insertions(+), 4 deletions(-) - -Index: gzdoom-g3.2.4/dumb/CMakeLists.txt -=================================================================== ---- gzdoom-g3.2.4.orig/dumb/CMakeLists.txt -+++ gzdoom-g3.2.4/dumb/CMakeLists.txt -@@ -24,7 +24,7 @@ endif() - - include_directories( include ) - --add_library( dumb -+add_library( dumb STATIC - src/core/unload.c - src/core/rendsig.c - src/core/rendduh.c -Index: gzdoom-g3.2.4/gdtoa/CMakeLists.txt -=================================================================== ---- gzdoom-g3.2.4.orig/gdtoa/CMakeLists.txt -+++ gzdoom-g3.2.4/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 -Index: gzdoom-g3.2.4/lzma/CMakeLists.txt -=================================================================== ---- gzdoom-g3.2.4.orig/lzma/CMakeLists.txt -+++ gzdoom-g3.2.4/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/gzdoom-vulkan.patch b/gzdoom-vulkan.patch new file mode 100644 index 0000000..343e3de --- /dev/null +++ b/gzdoom-vulkan.patch @@ -0,0 +1,67 @@ +From: Jan Engelhardt +Date: 2019-04-13 15:02:22.799297208 +0200 + +Use Vulkan system libraries instead of bundled code. + +--- + CMakeLists.txt | 3 --- + src/CMakeLists.txt | 2 +- + src/rendering/vulkan/shaders/vk_shader.cpp | 2 +- + src/rendering/vulkan/system/vk_builders.cpp | 22 +++++++++++----------- + 4 files changed, 13 insertions(+), 16 deletions(-) + +Index: gzdoom-4.0.0/CMakeLists.txt +=================================================================== +--- gzdoom-4.0.0.orig/CMakeLists.txt ++++ gzdoom-4.0.0/CMakeLists.txt +@@ -287,9 +287,6 @@ option(FORCE_INTERNAL_ASMJIT "Use intern + mark_as_advanced( FORCE_INTERNAL_ASMJIT ) + + if (HAVE_VULKAN) +- add_subdirectory( glslang/glslang) +- add_subdirectory( glslang/spirv ) +- add_subdirectory( glslang/OGLCompilersDLL ) + endif() + + # Fast math flags, required by some subprojects +Index: gzdoom-4.0.0/src/CMakeLists.txt +=================================================================== +--- gzdoom-4.0.0.orig/src/CMakeLists.txt ++++ gzdoom-4.0.0/src/CMakeLists.txt +@@ -465,7 +465,7 @@ add_custom_target( revision_check ALL + message( STATUS "Fluid synth libs: ${FLUIDSYNTH_LIBRARIES}" ) + set( ZDOOM_LIBS ${ZDOOM_LIBS} "${ZLIB_LIBRARIES}" "${JPEG_LIBRARIES}" "${BZIP2_LIBRARIES}" "${GME_LIBRARIES}" "${CMAKE_DL_LIBS}" ) + if (HAVE_VULKAN) +- set( ZDOOM_LIBS ${ZDOOM_LIBS} "glslang" "SPIRV" "OGLCompiler") ++ set( ZDOOM_LIBS ${ZDOOM_LIBS} -lglslang -lSPIRV -lOGLCompiler) + endif() + include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) + +Index: gzdoom-4.0.0/src/rendering/vulkan/shaders/vk_shader.cpp +=================================================================== +--- gzdoom-4.0.0.orig/src/rendering/vulkan/shaders/vk_shader.cpp ++++ gzdoom-4.0.0/src/rendering/vulkan/shaders/vk_shader.cpp +@@ -4,7 +4,7 @@ + #include "hwrenderer/utility/hw_shaderpatcher.h" + #include "w_wad.h" + #include "doomerrors.h" +-#include ++#include + + VkShaderManager::VkShaderManager(VulkanDevice *device) : device(device) + { +Index: gzdoom-4.0.0/src/rendering/vulkan/system/vk_builders.cpp +=================================================================== +--- gzdoom-4.0.0.orig/src/rendering/vulkan/system/vk_builders.cpp ++++ gzdoom-4.0.0/src/rendering/vulkan/system/vk_builders.cpp +@@ -2,8 +2,8 @@ + #include "vk_builders.h" + #include "doomerrors.h" + #include "r_data/renderstyle.h" +-#include +-#include ++#include ++#include + + static const TBuiltInResource DefaultTBuiltInResource = { + /* .MaxLights = */ 32, diff --git a/gzdoom-waddir.patch b/gzdoom-waddir.patch index 772b2e4..4c8ad69 100644 --- a/gzdoom-waddir.patch +++ b/gzdoom-waddir.patch @@ -7,11 +7,11 @@ Ensure same IWAD directory across all Doom source ports in openSUSE src/posix/i_system.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: gzdoom-g3.2.4/src/posix/i_system.h +Index: gzdoom-4.0.0/src/posix/i_system.h =================================================================== ---- gzdoom-g3.2.4.orig/src/posix/i_system.h -+++ gzdoom-g3.2.4/src/posix/i_system.h -@@ -40,7 +40,7 @@ struct ticcmd_t; +--- gzdoom-4.0.0.orig/src/posix/i_system.h ++++ gzdoom-4.0.0/src/posix/i_system.h +@@ -42,7 +42,7 @@ struct ticcmd_t; struct WadStuff; #ifndef SHARE_DIR @@ -19,4 +19,4 @@ Index: gzdoom-g3.2.4/src/posix/i_system.h +#define SHARE_DIR "/usr/share/doom/" #endif - // Index values into the LanguageIDs array + diff --git a/gzdoom.changes b/gzdoom.changes index 10030b6..342672e 100644 --- a/gzdoom.changes +++ b/gzdoom.changes @@ -1,3 +1,44 @@ +------------------------------------------------------------------- +Sun Jun 9 11:31:24 UTC 2019 - Martin Hauke + +- Update to new upstream release 4.1.3 + * bug fixes for both zscript and vulkan (the vulkan renderer is + pretty much complete at this point) + * added native double round(double) function + * added a crosshair on/off toggle + * cl_blockcheats 2 blocks cheats without showing any messages, + useful for streamers who happen to be mappers/modders/etc +- Update to new upstream release 4.1.0 + * workaround buggy preprocessor in old AMD OpenGL drivers + * fix bloom pass regression + * fixed scale calculations for option menus. + * implement custom post process shaders for vulkan backend + * improve error handling during vulkan initialization + * fixed inverted logic for displaying the generic log in Strife. +- Remove patch: + * gzdoom-staticlibs.patch (fixed by upstream) +- Update patch: + * gzdoom-vulkan.patch + +------------------------------------------------------------------- +Mon Apr 08 20:31:53 UTC 2019 - Jan Engelhardt + +- Update to new upstream release 4.0.0 + * Experimental Vulkan renderer (via "+vid_backend 0" console + option) + * Scaling has been changed. GZDoom now runs at a minimum of + 640x400. An extra mode (960x600) has been added to replace the + lost 320x200 one. + * Added "cl_blockcheats" - useful for people who use debugging + keys, allows a user to consciously turn off cheats without + affecting the serveradd "cl_blockcheats" - useful for people + who use debugging keys, allows a user to consciously turn off + cheats without affecting the server + * "wait" console commands no longer execute inside the level, + and can run during intermissions and outside the game. +- Folded gzdoom-asmjit.patch into gzdoom-staticlibs.patch. +- Added gzdoom-vulkan.patch. + ------------------------------------------------------------------- Wed Jan 23 15:22:45 UTC 2019 - Jan Engelhardt diff --git a/gzdoom.spec b/gzdoom.spec index ec0f548..1d02fcd 100644 --- a/gzdoom.spec +++ b/gzdoom.spec @@ -17,7 +17,7 @@ Name: gzdoom -Version: 3.7.2 +Version: 4.1.3 Release: 0 Summary: A DOOM source port with graphic and modding extensions License: GPL-3.0-only @@ -25,19 +25,19 @@ Group: Amusements/Games/3D/Shoot Url: http://zdoom.org/ #Git-Clone: https://github.com/coelckers/gzdoom -Source: %name-%version.tar.xz +Source: https://github.com/coelckers/gzdoom/archive/g%{version}.tar.gz Patch1: gzdoom-waddir.patch Patch2: gzdoom-wadsrc-extra.patch -Patch3: gzdoom-staticlibs.patch Patch4: fl2.patch Patch5: gzdoom-lzma.patch -Patch6: gzdoom-asmjit.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Patch6: gzdoom-vulkan.patch BuildRequires: cmake >= 2.8.7 BuildRequires: gcc-c++ +BuildRequires: glslang-devel BuildRequires: libjpeg-devel BuildRequires: nasm BuildRequires: pkg-config +BuildRequires: spirv-tools-devel BuildRequires: unzip BuildRequires: xz BuildRequires: pkgconfig(bzip2) @@ -50,6 +50,7 @@ BuildRequires: pkgconfig(libmpg123) BuildRequires: pkgconfig(openal) BuildRequires: pkgconfig(sdl2) BuildRequires: pkgconfig(sndfile) +BuildRequires: pkgconfig(vulkan) BuildRequires: pkgconfig(zlib) %if 0%{?suse_version} >= 1500 BuildRequires: pkgconfig(clzma) >= 17.01 @@ -82,12 +83,16 @@ GZDoom is a port (a modification) of the original Doom source code, featuring: * Demo record/playback of classic and Boom demos is not supported. %prep -%setup -q -%patch -P 1 -P 2 -P 3 -P 4 -P 6 -p1 +%setup -q -n %{name}-g%{version} +%patch -P 1 -P 2 -P 4 -p1 %if 0%{?suse_version} >= 1500 %patch -P 5 -p1 %endif +%if 0%{?suse_version} >= 1550 +%patch -P 6 -p1 +rm -Rfv glslang src/rendering/vulkan/thirdparty/vulkan +%endif perl -i -pe 's{__DATE__}{""}g' src/posix/sdl/i_main.cpp perl -i -pe 's{}{%version}g' \ tools/updaterevision/updaterevision.c