From fa9a5374f72bb18ca6c0bd873b697ca283873a600d6f6167fc9d60b73c4898c4 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 13 Apr 2019 13:11:19 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/games/gzdoom?expand=0&rev=23 --- gzdoom-lzma.patch | 78 +++++++++++++++++++ ...om-systemlibs.patch => gzdoom-vulkan.patch | 70 ++--------------- gzdoom.changes | 2 +- gzdoom.spec | 10 ++- 4 files changed, 94 insertions(+), 66 deletions(-) create mode 100644 gzdoom-lzma.patch rename gzdoom-systemlibs.patch => gzdoom-vulkan.patch (57%) diff --git a/gzdoom-lzma.patch b/gzdoom-lzma.patch new file mode 100644 index 0000000..51310c5 --- /dev/null +++ b/gzdoom-lzma.patch @@ -0,0 +1,78 @@ +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-4.0.0/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) + + # Support cross compiling + option( FORCE_CROSSCOMPILE "Turn on cross compiling." NO ) +@@ -355,7 +356,7 @@ else() + set( GME_LIBRARIES gme ) + endif() + +-set( LZMA_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/lzma/C" ) ++pkg_check_modules(LZMA REQUIRED clzma) + + if( NOT CMAKE_CROSSCOMPILING ) + if( NOT CROSS_EXPORTS ) +@@ -373,7 +374,6 @@ install(DIRECTORY docs/ + DESTINATION ${INSTALL_DOCS_PATH} + COMPONENT "Documentation") + +-add_subdirectory( lzma ) + add_subdirectory( tools ) + add_subdirectory( dumb ) + add_subdirectory( gdtoa ) +Index: gzdoom-4.0.0/src/CMakeLists.txt +=================================================================== +--- 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}" ) + + if( ${HAVE_VM_JIT} ) + add_definitions( -DHAVE_VM_JIT ) +@@ -1370,7 +1370,7 @@ if( UNIX ) + endif() + endif() + +-target_link_libraries( zdoom ${ZDOOM_LIBS} gdtoa dumb lzma ) ++target_link_libraries( zdoom ${ZDOOM_LIBS} gdtoa dumb ${LZMA_LIBRARIES}) + + include_directories( . + g_statusbar +Index: gzdoom-4.0.0/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 ) + + if( NOT CMAKE_CROSSCOMPILING ) +- include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" ) ++ include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" ) + add_executable( zipdir + zipdir.c ) +- target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma ) ++ target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} ${LZMA_LDFLAGS}) + set( CROSS_EXPORTS ${CROSS_EXPORTS} zipdir PARENT_SCOPE ) + endif() diff --git a/gzdoom-systemlibs.patch b/gzdoom-vulkan.patch similarity index 57% rename from gzdoom-systemlibs.patch rename to gzdoom-vulkan.patch index 18dcddc..906f965 100644 --- a/gzdoom-systemlibs.patch +++ b/gzdoom-vulkan.patch @@ -1,29 +1,20 @@ From: Jan Engelhardt -Date: 2018-01-08 13:48:59+0100 +Date: 2019-04-13 15:02:22.799297208 +0200 -Use system libraries instead of bundled code. +Use Vulkan system libraries instead of bundled code. --- - CMakeLists.txt | 7 ++----- - src/CMakeLists.txt | 6 +++--- + CMakeLists.txt | 3 --- + src/CMakeLists.txt | 2 +- src/rendering/vulkan/shaders/vk_shader.cpp | 2 +- src/rendering/vulkan/system/vk_builders.cpp | 22 +++++++++++----------- - tools/zipdir/CMakeLists.txt | 4 ++-- - 5 files changed, 19 insertions(+), 22 deletions(-) + 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 -@@ -12,6 +12,7 @@ endif() - - list( APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ) - include( FindPackageHandleStandardArgs ) -+include(FindPkgConfig) - - # Support cross compiling - option( FORCE_CROSSCOMPILE "Turn on cross compiling." NO ) -@@ -286,9 +287,6 @@ option(FORCE_INTERNAL_ASMJIT "Use intern +@@ -287,9 +287,6 @@ option(FORCE_INTERNAL_ASMJIT "Use intern mark_as_advanced( FORCE_INTERNAL_ASMJIT ) if (HAVE_VULKAN) @@ -33,48 +24,19 @@ Index: gzdoom-4.0.0/CMakeLists.txt endif() # Fast math flags, required by some subprojects -@@ -355,7 +353,7 @@ else() - set( GME_LIBRARIES gme ) - endif() - --set( LZMA_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/lzma/C" ) -+pkg_check_modules(LZMA REQUIRED clzma) - - if( NOT CMAKE_CROSSCOMPILING ) - if( NOT CROSS_EXPORTS ) -@@ -373,7 +371,6 @@ install(DIRECTORY docs/ - DESTINATION ${INSTALL_DOCS_PATH} - COMPONENT "Documentation") - --add_subdirectory( lzma ) - add_subdirectory( tools ) - add_subdirectory( dumb ) - add_subdirectory( gdtoa ) Index: gzdoom-4.0.0/src/CMakeLists.txt =================================================================== --- gzdoom-4.0.0.orig/src/CMakeLists.txt +++ gzdoom-4.0.0/src/CMakeLists.txt -@@ -465,9 +465,9 @@ add_custom_target( revision_check ALL +@@ -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_DIR}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) -+include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) + include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" "${JPEG_INCLUDE_DIR}" "${GME_INCLUDE_DIR}" ) - if( ${HAVE_VM_JIT} ) - add_definitions( -DHAVE_VM_JIT ) -@@ -1370,7 +1370,7 @@ if( UNIX ) - endif() - endif() - --target_link_libraries( zdoom ${ZDOOM_LIBS} gdtoa dumb lzma ) -+target_link_libraries( zdoom ${ZDOOM_LIBS} gdtoa dumb ${LZMA_LIBRARIES}) - - include_directories( . - g_statusbar Index: gzdoom-4.0.0/src/rendering/vulkan/shaders/vk_shader.cpp =================================================================== --- gzdoom-4.0.0.orig/src/rendering/vulkan/shaders/vk_shader.cpp @@ -128,19 +90,3 @@ Index: gzdoom-4.0.0/src/rendering/vulkan/system/vk_builders.cpp /* .limits = */ { /* .nonInductiveForLoops = */ 1, -Index: gzdoom-4.0.0/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 ) - - if( NOT CMAKE_CROSSCOMPILING ) -- include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" ) -+ include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIRS}" ) - add_executable( zipdir - zipdir.c ) -- target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma ) -+ target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} ${LZMA_LDFLAGS}) - set( CROSS_EXPORTS ${CROSS_EXPORTS} zipdir PARENT_SCOPE ) - endif() diff --git a/gzdoom.changes b/gzdoom.changes index ded050b..47fe983 100644 --- a/gzdoom.changes +++ b/gzdoom.changes @@ -15,7 +15,7 @@ Mon Apr 08 20:31:53 UTC 2019 - Jan Engelhardt * "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. -- Rename gzdoom-lzma.patch to gzdoom-systemlibs.patch. +- Added gzdoom-vulkan.patch. ------------------------------------------------------------------- Wed Jan 23 15:22:45 UTC 2019 - Jan Engelhardt diff --git a/gzdoom.spec b/gzdoom.spec index 7045453..55a245d 100644 --- a/gzdoom.spec +++ b/gzdoom.spec @@ -30,7 +30,8 @@ Patch1: gzdoom-waddir.patch Patch2: gzdoom-wadsrc-extra.patch Patch3: gzdoom-staticlibs.patch Patch4: fl2.patch -Patch5: gzdoom-systemlibs.patch +Patch5: gzdoom-lzma.patch +Patch6: gzdoom-vulkan.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: cmake >= 2.8.7 BuildRequires: gcc-c++ @@ -38,9 +39,9 @@ BuildRequires: glslang-devel BuildRequires: libjpeg-devel BuildRequires: nasm BuildRequires: pkg-config +BuildRequires: spirv-tools-devel BuildRequires: unzip BuildRequires: xz -BuildRequires: pkgconfig(SPIRV-Tools) BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(flac) BuildRequires: pkgconfig(fluidsynth) @@ -90,10 +91,13 @@ GZDoom is a port (a modification) of the original Doom source code, featuring: %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 -rm -Rfv glslang src/rendering/vulkan/thirdparty/vulkan %build # We must not strip - %%debug_package will take care of it