From 94a4a9c95cf799ee43e4e0cdd71ae739a3f53c3fcfd4e4c20d0194d52d3f9ff4 Mon Sep 17 00:00:00 2001 From: Dmitriy Perlow Date: Wed, 3 Jan 2018 03:28:08 +0000 Subject: [PATCH] Accepting request 561233 from home:jengelh:dev gpl transition seems complete OBS-URL: https://build.opensuse.org/request/show/561233 OBS-URL: https://build.opensuse.org/package/show/games/gzdoom?expand=0&rev=1 --- .gitattributes | 23 +++++++ .gitignore | 1 + gzdoom-g3.2.4.zip | 3 + gzdoom-staticlibs.patch | 52 ++++++++++++++++ gzdoom-waddir.patch | 22 +++++++ gzdoom.changes | 132 ++++++++++++++++++++++++++++++++++++++++ gzdoom.spec | 97 +++++++++++++++++++++++++++++ 7 files changed, 330 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 gzdoom-g3.2.4.zip create mode 100644 gzdoom-staticlibs.patch create mode 100644 gzdoom-waddir.patch create mode 100644 gzdoom.changes create mode 100644 gzdoom.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/gzdoom-g3.2.4.zip b/gzdoom-g3.2.4.zip new file mode 100644 index 0000000..de6659e --- /dev/null +++ b/gzdoom-g3.2.4.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f7881afc86e6a999d959e3567cc278dffb0dda6e81251606648498f9aa3e773 +size 10963409 diff --git a/gzdoom-staticlibs.patch b/gzdoom-staticlibs.patch new file mode 100644 index 0000000..4b4e5d7 --- /dev/null +++ b/gzdoom-staticlibs.patch @@ -0,0 +1,52 @@ +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-waddir.patch b/gzdoom-waddir.patch new file mode 100644 index 0000000..772b2e4 --- /dev/null +++ b/gzdoom-waddir.patch @@ -0,0 +1,22 @@ +From: Jan Engelhardt +2018-01-02 15:25:05.669125932 +0100 + +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 +=================================================================== +--- 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; + struct WadStuff; + + #ifndef SHARE_DIR +-#define SHARE_DIR "/usr/local/share/" ++#define SHARE_DIR "/usr/share/doom/" + #endif + + // Index values into the LanguageIDs array diff --git a/gzdoom.changes b/gzdoom.changes new file mode 100644 index 0000000..2107a88 --- /dev/null +++ b/gzdoom.changes @@ -0,0 +1,132 @@ +------------------------------------------------------------------- +Tue Jan 2 13:14:54 UTC 2018 - jengelh@inai.de + +- Remove zdoom from the specfile (which had built both zdoom and + gzdoom due to their similarity) and rename to gzdoom.spec. +- Update to new upstream release 3.2.4 + * Recognition for the HacX 2.0 IWAD + * Recognition for the modified Doom 1/2/U IWADs and the "No Rest + for the Living" expansion pack shipped in the Doom3 BFG Edition. + * New GL3 node format for complex UDMF maps which need fractional + precision on node splitters. + * The ZScript scripting language has been added. + * A new 32-bit software renderer has been added. + The classic 8-bit renderer remains available. +- Add gzdoom-waddir.patch, gzdoom-staticlibs.patch. + +------------------------------------------------------------------- +Sun Mar 24 00:38:53 UTC 2013 - jengelh@inai.de + +- Standardize on /usr/share/doom for IWADs. +- Per-user configuration is to be moved to ~/.config/zdoom + (XDG environment variables are not respected, though), + ~/.config/gzdoom and ~/.config/zandronum for the different + game engines respectively. + +------------------------------------------------------------------- +Thu Mar 21 16:06:30 UTC 2013 - jengelh@medozas.de + +- Update to new upstream release zdoom-2.6.0+svn4191 + and gzdoom-1.7.01+svn1526 +* berserk indicator on alternative HUD +* support for BFG edition IWADs +* sound precaching through MAPINFO. +- Imported zandronum-1.0+hg3641 (formerly Skulltag) + +------------------------------------------------------------------- +Tue Jul 10 14:12:20 UTC 2012 - jengelh@inai.de + +- Update to new upstream release 2.6.0 (gzdoom-1.6.0) +* Added Hacx IWAD support. +* Added text-format Strife conversation system with USDF and ZSDF. +* A textured automap is now available; automap graphics are now + externalized. +* Rewritten menu system, which can now be defined with the MENUDEF + lump. +* Externalized intermissions to MAPINFO. +* Externalized IWAD detection and gave each IWAD its own + independent config section. +* Added FluidSynth and GUS emulator softsynths; fixed issues with + TiMidity++. +* Added VOC support and enhanced MIDI playback with support for + alternative formats such as XMI and HMI. +* Action specials: Added Ceiling_LowerAndCrushDist and + Thing_SetConversation. Added console command to execute specials. +* ACS: Increased maximum script number from 999 to 32767. +* ACS: Named scripts allow to avoid script number conflicts + altogether. +* ACS: Added StrCopy, CheckSight, SetActivator, SetPointer + functions. +* ACS: Added APROP_ScaleX/Y and APROP_Mass actor properties. +* ACS: Added temporary dynamic strings variables with StrParam. +* ACS: Scripts can now have up to four parameters. +* DECORATE: Added A_CheckFlag, A_FaceMaster, A_FaceTracer, + A_RadiusGive, A_SetMass, A_SetScale, A_Warp and A_WolfAttack... +* DECORATE: Enhanced A_AlertMonsters, A_BFGSpray, A_Blast, + A_CustomBulletAttack, A_FireBullets, A_GunFlash, A_PainAttack, + A_RadiusThrust... +* DECORATE: Added an actor pointer manipulation system with several + new codepointers... +* DECORATE: Added DOHARMSPECIES, DONTCORPSE, SEEINVISIBLE and + INVENTORY.UNTOSSABLE +* DECORATE: Increased damage type flexibility in several ways with + DeathType and PainType. +* DECORATE: Added customizable fléchettes. +* DECORATE: Made accuracy and stamina accessible through DECORATE + expressions. +* DECORATE: Added ProjectileKickback, Inventory.RestrictedTo and + Inventory.ForbiddenTo class-based properties. +* DECORATE: Backported VisibleToTeam, VisibleToPlayerClass and + weapon DropItem feature from Skulltag, and enhanced them. +* DECORATE: Added "Fast" keyword for states and deprecated the + unreliable FASTER and FASTMELEE flags. +* Added a secret hint system. +* 3D floors support. +* FraggleScript support. +* Voxel support. +* SBARINFO: Ammo 1/2 capacities added to DrawNumber, support for + color names in colored text. +* SNDINFO: Added musicalias and attenuation. +* Compatibility: fixed issues with Eternal Doom, Happy Time Circus, + Phobos, vanilla compat, Boom compat, light levels higher than + 255, Heretic, Strife, MUSINFO, misnamed UDMF field. +* Fixed loading of BMF palettes. +* restart console command. +* Added PALVERS lump for specifying alternate graphics to use with + a paletted render, in case the graphics you really want to use + look bad without true color. +* Custom IWADs no longer need to include a COLORMAP, as ZDoom will + generate one automatically if it is missing. +* Fixed vertical tiling of non-power-of-two textures. + +------------------------------------------------------------------- +Sat Nov 27 22:30:43 UTC 2010 - jengelh@medozas.de + +- cmake is really weird when it comes to CFLAGS. + Pass :STRING= to make it actually use our flags. +- set RPM group for gzdoom to one that rpmlint accepts +- disable strip to make debuginfo packages work +- fix a crash caused by an uninitialized variable + +------------------------------------------------------------------- +Fri Sep 10 17:39:21 UTC 2010 - jengelh@medozas.de + +- Enable building with experimental fluidsynth support +- Optimize PNGs before packing up +- Do not use FMODEx for building on non-x86 +- Remove unneeded p7zip build dependency (repacked + patched + .tar.xz is used since a while) +- Update to ZDoom 2.5.0 +* Obsoleted zdoom-binutils.diff +- Update to GZDoom 1.5.02 + +------------------------------------------------------------------- +Fri Jul 30 12:56:27 UTC 2010 - jengelh@medozas.de + +- Add patch to workaround compile issues with binutils 2.20.0 + +------------------------------------------------------------------- +Wed Jul 28 12:44:57 UTC 2010 - jengelh@medozas.de + +- Split up zdoom package into its components +- zdoom, gzdoom, zdoom-devel diff --git a/gzdoom.spec b/gzdoom.spec new file mode 100644 index 0000000..67d8237 --- /dev/null +++ b/gzdoom.spec @@ -0,0 +1,97 @@ +# +# spec file for package gzdoom +# +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +Name: gzdoom +Version: 3.2.4 +Release: 0 +Summary: A DOOM source port with graphic and modding extensions +License: GPL-3.0 +Group: Amusements/Games/3D/Shoot +Url: http://zdoom.org/ + +#Git-Clone: https://github.com/coelckers/gzdoom +Source: https://zdoom.org/files/gzdoom/src/gzdoom-g%version.zip +Patch1: gzdoom-waddir.patch +Patch2: gzdoom-staticlibs.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: cmake >= 2.8.7 +BuildRequires: gcc-c++ +BuildRequires: libjpeg-devel +BuildRequires: nasm +BuildRequires: pkg-config +BuildRequires: unzip +BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(flac) +BuildRequires: pkgconfig(fluidsynth) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(libgme) +BuildRequires: pkgconfig(liblzma) +BuildRequires: pkgconfig(openal) +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(zlib) +%if 0%{?suse_version} == 1315 +BuildRequires: gcc6-c++ +%endif +Recommends: freedoom +Recommends: timidity +Recommends: timidity-eawpats +Provides: qzdoom = 1.3.0 +Provides: zdoom = 2.8.1 +Provides: bundled(gdtoa) +Provides: bundled(lzma-sdk) = 15.13 +Provides: bundled(re2c) = 0.16.0 + +%description +GZDoom is a port (a modification) of the original Doom source code, featuring +an OpenGL renderer, 3D floor and model support, Quake2-style skyboxes, HQnX +rescaling and other graphic improvements. Heretic, Hexen and Strife game modes +are supported. GZDoom provides a lot of modding features such as Boom and Hexen +map extension support and scriptability. The software renderer has been +removed, and demo record/playback is limited to a version-specific format. + +%prep +%setup -qn gzdoom-g%version +%patch -P 1 -P 2 -p1 +perl -i -pe 's{__DATE__}{""}g' src/posix/sdl/i_main.cpp + +%build +# We must not strip - %%debug_package will take care of it +# Deactivate -Wl,--as-needed +%cmake -DNO_STRIP=1 \ +%if 0%{suse_version} == 1315 + -DCMAKE_C_COMPILER=gcc-6 -DCMAKE_CXX_COMPILER=g++-6 \ +%endif + -DCMAKE_SHARED_LINKER_FLAGS="" \ + -DCMAKE_EXE_LINKER_FLAGS="" -DCMAKE_MODULE_LINKER_FLAGS="" \ + -DINSTALL_DOCS_PATH="%_defaultdocdir/%name" \ + -DINSTALL_PK3_PATH="%_datadir/doom" +make %{?_smp_mflags} + +%install +%cmake_install + +%post +echo "INFO: %name: The global IWAD directory is %_datadir/doom." + +%files +%_bindir/%name +%_defaultdocdir/%name +%_datadir/doom/ + +%changelog