Timo Myyrä <timo.my...@bittivirhe.fi> [2021-12-19, 10:58 +0200]: > Omar Polo <o...@openbsd.org> [2021-12-15, 20:44 +0100]: > >> Timo Myyrä <timo.my...@bittivirhe.fi> writes: >> >>> Hi, >>> >>> A bit delayed update to gzdoom. The upstream have made chopped the music >>> part as standalone library which I sent to ports@ earlier (audio/zmusic) >>> which is needed by this update. >>> >>> Quickly tested on doom1 which appeared to be working. >>> >>>[...] >>> >>> CONFIGURE_ARGS += -DNO_GTK=ON >>> -CONFIGURE_ARGS += -DDYN_OPENAL=NO -DDYN_MPG123=NO -DDYN_SNDFILE=NO >>> -CONFIGURE_ARGS += -DFLUIDSYNTHLIB1="libfluidsynth.so" >>> +CONFIGURE_ARGS += -DDYN_OPENAL=NO >>> +# Sync with audio/fluidsynth >>> +CONFIGURE_ARGS += -DFLUIDSYNTHLIB1="libfluidsynth.so.2.0" >> >> this bit (and the relative patch to the CMakeList.txt) is no more needed >> since the audio is moved to zmusic, and I can't find other instances of >> FLUIDSYNTHLIB1, so they can be dropped >> > > ah, good point. A grepped the sources but did not notice the > FLUIDSYNTHLIB1 was added by local patch so I kept that. > >>> [...] >>> - if ( UNIX ) >>> - include(CheckSymbolExists) >>> -- check_symbol_exists( "fts_set" "fts.h" HAVE_FTS ) >>> -+ check_symbol_exists( "fts_set" "sys/types.h;sys/stat.h;fts.h" >>> HAVE_FTS ) >> >> this is still needed otherwise it doesn't find fts_set (there's >> virtually the same patch on zmusic too) >> > > Good catch. > >>> [...] >> >> It breaks the build if graphics/glslang is installed. gzdoom uses its >> own bundled version of the vulkan sdk but the compiler ends up including >> the system header instead of the bundled one. There are different >> solution for this: >> >> 1. cherry-pick this diff >> >> https://github.com/alexey-lysiuk/gzdoom/commit/5c9fb205d9231abbd8a3bf744850db02c0754057 >> >> (see https://github.com/coelckers/gzdoom/issues/1382) >> >> 2. add `CONFIGURE_ARGS += -DHAVE_VULKAN=OFF' to completely disable >> vulkan, or >> >> 3. use the same trick sdk@ used for net/tdlib-purple: >> >> CONFIGURE_ARGS += -DCMAKE_CXX_FLAGS="${CXXFLAGS} -I. -I${LOCALBASE}/include" >> >> > > Yeah, I think we can go with the third option. > >> 1) is probably overkill for us, 2) is what I initially did but 3) is >> probably the more pragmatic solution. I went with the third option in >> the diff below, but either is fine I guess. >> >> I'm also re-attaching the tweaked audio/zmusic tarball for convenience >> (which is ok op@ to import if someone wants to). see >> https://marc.info/?l=openbsd-ports&m=163916682506561&w=2 >> >> Tested on amdgpu with the shareware IWAD file mentioned in README and >> works fine! >> >> Thanks, >> >> Omar Polo > > Ok from me for these fixes. > > Timo > >> >> Index: Makefile >> =================================================================== >> RCS file: /home/cvs/ports/games/gzdoom/Makefile,v >> retrieving revision 1.13 >> diff -u -p -r1.13 Makefile >> --- Makefile 25 Oct 2021 07:19:59 -0000 1.13 >> +++ Makefile 15 Dec 2021 19:59:09 -0000 >> @@ -8,12 +8,11 @@ ONLY_FOR_ARCHS = i386 amd64 >> >> COMMENT = OpenGL engine for idTech 1 games like >> doom,hexen,heretic... >> >> -V = 4.3.3 >> +V = 4.7.1 >> GH_ACCOUNT = coelckers >> GH_PROJECT = gzdoom >> GH_TAGNAME = g${V} >> DISTNAME = gzdoom-${V} >> -REVISION = 1 >> >> CATEGORIES= games >> >> @@ -24,21 +23,21 @@ MAINTAINER = Timo Myyra <timo.myyra@bit >> # GPLv3 >> PERMIT_PACKAGE = Yes >> >> -WANTLIB += ${COMPILER_LIBCXX} SDL2 bz2 c execinfo jpeg m mpg123 >> -WANTLIB += openal sndfile z >> +WANTLIB += ${COMPILER_LIBCXX} SDL2 bz2 c execinfo jpeg m >> +WANTLIB += openal z zmusic >> >> +# C++17 >> COMPILER = base-clang ports-gcc >> >> MODULES = devel/cmake >> >> CONFIGURE_ARGS += -DNO_GTK=ON >> -CONFIGURE_ARGS += -DDYN_OPENAL=NO -DDYN_MPG123=NO -DDYN_SNDFILE=NO >> -CONFIGURE_ARGS += -DFLUIDSYNTHLIB1="libfluidsynth.so" >> +CONFIGURE_ARGS += -DDYN_OPENAL=NO >> CONFIGURE_ARGS += -DHAVE_STDINT_H=1 >> +CONFIGURE_ARGS += -DCMAKE_CXX_FLAGS="${CXXFLAGS} -I. >> -I${LOCALBASE}/include" >> >> -LIB_DEPENDS = audio/libsndfile \ >> - audio/mpg123 \ >> - audio/openal \ >> +LIB_DEPENDS = audio/openal \ >> + audio/zmusic \ >> archivers/bzip2 \ >> graphics/jpeg \ >> devel/sdl2 >> Index: distinfo >> =================================================================== >> RCS file: /home/cvs/ports/games/gzdoom/distinfo,v >> retrieving revision 1.5 >> diff -u -p -r1.5 distinfo >> --- distinfo 9 Mar 2020 12:18:50 -0000 1.5 >> +++ distinfo 15 Dec 2021 18:03:21 -0000 >> @@ -1,2 +1,2 @@ >> -SHA256 (gzdoom-4.3.3.tar.gz) = j+a/WQcdxgPmEenoIs2KaTTMSB0KKhmNkhr4gSZmG2A= >> -SIZE (gzdoom-4.3.3.tar.gz) = 13704956 >> +SHA256 (gzdoom-4.7.1.tar.gz) = RUJXWCvgV2UB7vHvyZ/n6nDxxNeZNUnbPLxwnOdfwQI= >> +SIZE (gzdoom-4.7.1.tar.gz) = 19562412 >> Index: patches/patch-libraries_glslang_glslang_Include_PoolAlloc_h >> =================================================================== >> RCS file: patches/patch-libraries_glslang_glslang_Include_PoolAlloc_h >> diff -N patches/patch-libraries_glslang_glslang_Include_PoolAlloc_h >> --- patches/patch-libraries_glslang_glslang_Include_PoolAlloc_h 6 Aug >> 2020 11:11:12 -0000 1.1 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,18 +0,0 @@ >> -$OpenBSD: patch-libraries_glslang_glslang_Include_PoolAlloc_h,v 1.1 >> 2020/08/06 11:11:12 edd Exp $ >> - >> -Fix build on base Clang 10. >> - >> -It's the same fix as this: >> -https://github.com/KhronosGroup/glslang/pull/2010/commits/24b3e8384e93f3e73b6aa14ea00a30574112f9ba >> - >> -Index: libraries/glslang/glslang/Include/PoolAlloc.h >> ---- libraries/glslang/glslang/Include/PoolAlloc.h.orig >> -+++ libraries/glslang/glslang/Include/PoolAlloc.h >> -@@ -304,7 +304,6 @@ class pool_allocator { (public) >> - size_type max_size() const { return static_cast<size_type>(-1) / >> sizeof(T); } >> - size_type max_size(int size) const { return static_cast<size_type>(-1) >> / size; } >> - >> -- void setAllocator(TPoolAllocator* a) { allocator = *a; } >> - TPoolAllocator& getAllocator() const { return allocator; } >> - >> - protected: >> Index: patches/patch-libraries_wildmidi_wildmidi_wildmidi_lib_h >> =================================================================== >> RCS file: patches/patch-libraries_wildmidi_wildmidi_wildmidi_lib_h >> diff -N patches/patch-libraries_wildmidi_wildmidi_wildmidi_lib_h >> --- patches/patch-libraries_wildmidi_wildmidi_wildmidi_lib_h 6 Dec 2019 >> 17:40:24 -0000 1.1 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,13 +0,0 @@ >> -$OpenBSD: patch-libraries_wildmidi_wildmidi_wildmidi_lib_h,v 1.1 2019/12/06 >> 17:40:24 solene Exp $ >> - >> -Index: libraries/wildmidi/wildmidi/wildmidi_lib.h >> ---- libraries/wildmidi/wildmidi/wildmidi_lib.h.orig >> -+++ libraries/wildmidi/wildmidi/wildmidi_lib.h >> -@@ -28,6 +28,7 @@ >> - #define WILDMIDI_LIB_H >> - >> - #include "../../music_common/fileio.h" >> -+#include <stdarg.h> >> - >> - namespace WildMidi >> - { >> Index: >> patches/patch-libraries_zmusic_mididevices_music_fluidsynth_mididevice_cpp >> =================================================================== >> RCS file: >> patches/patch-libraries_zmusic_mididevices_music_fluidsynth_mididevice_cpp >> diff -N >> patches/patch-libraries_zmusic_mididevices_music_fluidsynth_mididevice_cpp >> --- >> patches/patch-libraries_zmusic_mididevices_music_fluidsynth_mididevice_cpp >> 9 Mar 2020 12:18:50 -0000 1.2 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,18 +0,0 @@ >> -$OpenBSD: >> patch-libraries_zmusic_mididevices_music_fluidsynth_mididevice_cpp,v 1.2 >> 2020/03/09 12:18:50 solene Exp $ >> - >> -Index: libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp >> ---- libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp.orig >> -+++ libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp >> -@@ -141,8 +141,12 @@ class FluidSynthMIDIDevice : public SoftSynthMIDIDevic >> - #define FLUIDSYNTHLIB1 "libfluidsynth.1.dylib" >> - #define FLUIDSYNTHLIB2 "libfluidsynth.2.dylib" >> - #else // !__APPLE__ >> -+#ifndef FLUIDSYNTHLIB1 >> - #define FLUIDSYNTHLIB1 "libfluidsynth.so.1" >> -+#endif >> -+#ifndef FLUIDSYNTHLIB2 >> - #define FLUIDSYNTHLIB2 "libfluidsynth.so.2" >> -+#endif >> - #endif // __APPLE__ >> - #endif >> - >> Index: patches/patch-libraries_zmusic_zmusic_mididefs_h >> =================================================================== >> RCS file: patches/patch-libraries_zmusic_zmusic_mididefs_h >> diff -N patches/patch-libraries_zmusic_zmusic_mididefs_h >> --- patches/patch-libraries_zmusic_zmusic_mididefs_h 6 Dec 2019 17:40:24 >> -0000 1.1 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,13 +0,0 @@ >> -$OpenBSD: patch-libraries_zmusic_zmusic_mididefs_h,v 1.1 2019/12/06 >> 17:40:24 solene Exp $ >> - >> -Index: libraries/zmusic/zmusic/mididefs.h >> ---- libraries/zmusic/zmusic/mididefs.h.orig >> -+++ libraries/zmusic/zmusic/mididefs.h >> -@@ -1,6 +1,7 @@ >> - #pragma once >> - >> - #include <stdint.h> >> -+#include <stdarg.h> >> - >> - enum >> - { >> Index: patches/patch-libraries_zmusic_zmusic_zmusic_h >> =================================================================== >> RCS file: patches/patch-libraries_zmusic_zmusic_zmusic_h >> diff -N patches/patch-libraries_zmusic_zmusic_zmusic_h >> --- patches/patch-libraries_zmusic_zmusic_zmusic_h 9 Mar 2020 12:18:50 >> -0000 1.1 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,20 +0,0 @@ >> -$OpenBSD: patch-libraries_zmusic_zmusic_zmusic_h,v 1.1 2020/03/09 12:18:50 >> solene Exp $ >> - >> -Index: libraries/zmusic/zmusic/zmusic.h >> ---- libraries/zmusic/zmusic/zmusic.h.orig >> -+++ libraries/zmusic/zmusic/zmusic.h >> -@@ -4,6 +4,7 @@ >> - #include <stdint.h> >> - #include <vector> >> - #include <string> >> -+#include <stdarg.h> >> - >> - // These constants must match the corresponding values of the Windows >> headers >> - // to avoid readjustment in the native Windows device's playback functions >> -@@ -314,4 +315,4 @@ inline bool ChangeMusicSetting(EStringConfigKey key, Z >> - return ChangeMusicSettingString(key, song, value); >> - } >> - >> --#endif >> -\ No newline at end of file >> -+#endif >> Index: patches/patch-src_CMakeLists_txt >> =================================================================== >> RCS file: /home/cvs/ports/games/gzdoom/patches/patch-src_CMakeLists_txt,v >> retrieving revision 1.3 >> diff -u -p -r1.3 patch-src_CMakeLists_txt >> --- patches/patch-src_CMakeLists_txt 6 Dec 2019 17:40:24 -0000 1.3 >> +++ patches/patch-src_CMakeLists_txt 15 Dec 2021 18:36:52 -0000 >> @@ -3,18 +3,7 @@ $OpenBSD: patch-src_CMakeLists_txt,v 1.3 >> Index: src/CMakeLists.txt >> --- src/CMakeLists.txt.orig >> +++ src/CMakeLists.txt >> -@@ -39,6 +39,10 @@ if( NOT ZDOOM_LIBS ) >> - set( ZDOOM_LIBS "" ) >> - endif() >> - >> -+# add override for dynamic library name >> -+set(FLUIDSYNTHLIB1 "libfluidsynth.so.0" CACHE STRING "Library name for >> Fluidsynth") >> -+add_definitions( -DFLUIDSYNTHLIB1="${FLUIDSYNTHLIB1}" ) >> -+ >> - if( WIN32 ) >> - if( X64 ) >> - set( WIN_TYPE Win64 ) >> -@@ -386,7 +390,7 @@ CHECK_CXX_SOURCE_COMPILES("thread_local int i; int mai >> +@@ -356,7 +360,7 @@ CHECK_CXX_SOURCE_COMPILES("thread_local int i; int mai >> HAVE_THREAD_LOCAL) >> >> if( NOT HAVE_THREAD_LOCAL ) >> Index: patches/patch-src_scripting_vm_vmframe_cpp >> =================================================================== >> RCS file: patches/patch-src_scripting_vm_vmframe_cpp >> diff -N patches/patch-src_scripting_vm_vmframe_cpp >> --- patches/patch-src_scripting_vm_vmframe_cpp 26 Jun 2019 07:12:04 >> -0000 1.2 >> +++ /dev/null 1 Jan 1970 00:00:00 -0000 >> @@ -1,16 +0,0 @@ >> -$OpenBSD: patch-src_scripting_vm_vmframe_cpp,v 1.2 2019/06/26 07:12:04 >> solene Exp $ >> - >> -disable JIT so it's W^X compatible >> - >> -Index: src/scripting/vm/vmframe.cpp >> ---- src/scripting/vm/vmframe.cpp.orig >> -+++ src/scripting/vm/vmframe.cpp >> -@@ -45,7 +45,7 @@ >> - #include "version.h" >> - >> - #ifdef HAVE_VM_JIT >> --CUSTOM_CVAR(Bool, vm_jit, true, CVAR_NOINITCALL) >> -+CUSTOM_CVAR(Bool, vm_jit, false, CVAR_NOINITCALL) >> - { >> - Printf("You must restart " GAMENAME " for this change to take >> effect.\n"); >> - Printf("This cvar is currently not saved. You must specify it on the >> command line."); >> Index: pkg/PLIST >> =================================================================== >> RCS file: /home/cvs/ports/games/gzdoom/pkg/PLIST,v >> retrieving revision 1.2 >> diff -u -p -r1.2 PLIST >> --- pkg/PLIST 6 Dec 2019 17:40:24 -0000 1.2 >> +++ pkg/PLIST 15 Dec 2021 18:03:21 -0000 >> @@ -18,6 +18,12 @@ share/doc/pkg-readmes/${PKGSTEM} >> share/games/ >> share/games/doom/ >> share/games/doom/brightmaps.pk3 >> +share/games/doom/fm_banks/ >> +share/games/doom/fm_banks/GENMIDI.GS.wopl >> +share/games/doom/fm_banks/gs-by-papiezak-and-sneakernets.wopn >> share/games/doom/game_support.pk3 >> +share/games/doom/game_widescreen_gfx.pk3 >> share/games/doom/gzdoom.pk3 >> share/games/doom/lights.pk3 >> +share/games/doom/soundfonts/ >> +share/games/doom/soundfonts/gzdoom.sf2
Ping... Timo