From: "Kirill Bychkov" Subject: Re: [update] games/openmw to 0.50.0 To: "Pascal Stumpf" Cc: ports@openbsd.org Date: Wed, 12 Nov 2025 11:17:39 +0300 On Sun, November 9, 2025 11:37, Pascal Stumpf wrote: > I have already sent out the devel/collada-dom port which is now > required. Pieces below are: > > Update mygui to 3.4.3 and enable -DMYGUI_DONT_USE_OBSOLETE. > > Enable the DAE plugin in graphics/openscenegraph (this is what > collada-dom is for) > > And finally the update to 0.50.0. Works fine for me. ok kirby@ > > > Index: devel/mygui/Makefile > =================================================================== > RCS file: /home/cvs/ports/devel/mygui/Makefile,v > diff -u -p -r1.12 Makefile > --- devel/mygui/Makefile 11 Sep 2023 20:51:24 -0000 1.12 > +++ devel/mygui/Makefile 7 Nov 2025 20:50:09 -0000 > @@ -1,6 +1,6 @@ > COMMENT = library for creating GUIs for games and 3D applications > > -V = 3.4.1 > +V = 3.4.3 > GH_ACCOUNT = MyGUI > GH_PROJECT = mygui > GH_TAGNAME = MyGUI${V} > @@ -30,6 +30,8 @@ CXXFLAGS += -fPIC > CONFIGURE_ARGS += -DMYGUI_BUILD_DEMOS=false \ > -DMYGUI_BUILD_PLUGINS=false \ > -DMYGUI_BUILD_TOOLS=false \ > + -DMYGUI_DONT_USE_OBSOLETE=ON \ > + -DMYGUI_USE_SYSTEM_GLEW=true \ > -DMYGUI_RENDERSYSTEM=4 \ > -DCMAKE_CXX_FLAGS="-I${X11BASE}/include" \ > -Wno-dev > Index: devel/mygui/distinfo > =================================================================== > RCS file: /home/cvs/ports/devel/mygui/distinfo,v > diff -u -p -r1.3 distinfo > --- devel/mygui/distinfo 11 Sep 2023 20:51:24 -0000 1.3 > +++ devel/mygui/distinfo 28 Jan 2025 17:54:26 -0000 > @@ -1,2 +1,2 @@ > -SHA256 (mygui-3.4.1.tar.gz) = vfcwvetK2J5rgiOWfbAapSdNK5OtwsDWqkhC+u7U3ho= > -SIZE (mygui-3.4.1.tar.gz) = 22433198 > +SHA256 (mygui-3.4.3.tar.gz) = M8kbUxmTBH53ys421v6nNjS4wXvQ7Rk9TNEqx8Yyir0= > +SIZE (mygui-3.4.3.tar.gz) = 18797995 > Index: devel/mygui/patches/patch-Common_Base_Ogre_BaseManager_cpp > =================================================================== > RCS file: > /home/cvs/ports/devel/mygui/patches/patch-Common_Base_Ogre_BaseManager_cpp,v > diff -u -p -r1.5 patch-Common_Base_Ogre_BaseManager_cpp > --- devel/mygui/patches/patch-Common_Base_Ogre_BaseManager_cpp 11 Sep 2023 > 20:51:24 -0000 1.5 > +++ devel/mygui/patches/patch-Common_Base_Ogre_BaseManager_cpp 28 Jan 2025 > 18:03:10 -0000 > @@ -1,13 +1,9 @@ > Index: Common/Base/Ogre/BaseManager.cpp > --- Common/Base/Ogre/BaseManager.cpp.orig > +++ Common/Base/Ogre/BaseManager.cpp > -@@ -36,15 +36,19 @@ namespace base > - #if MYGUI_PLATFORM == MYGUI_PLATFORM_APPLE > - const std::string resourcePath = macBundlePath() + "/Contents/Resources/"; > - #else > -- const std::string resourcePath = ""; > -+ const std::string resourcePath = "${SYSCONFDIR}/MYGUI/"; > - #endif > +@@ -14,12 +14,16 @@ namespace base > + bool BaseManager::createRender(int _width, int _height, bool _windowed) > + { > Ogre::String pluginsPath; > + char *homedir; > + homedir = getenv("HOME"); > @@ -15,10 +11,10 @@ Index: Common/Base/Ogre/BaseManager.cpp > + homePath = homedir; > > #ifndef OGRE_STATIC_LIB > - pluginsPath = resourcePath + "plugins.cfg"; > + pluginsPath = "plugins.cfg"; > #endif > > -- mRoot = new Ogre::Root(pluginsPath, resourcePath + "ogre.cfg", > resourcePath + "Ogre.log"); > +- mRoot = new Ogre::Root(pluginsPath, "ogre.cfg", "Ogre.log"); > + mRoot = new Ogre::Root(pluginsPath, homePath + "/mygui-ogre.cfg", homePath > + "/mygui-Ogre.log"); > auto renderSystem = > mRoot->getRenderSystemByName(mRoot->getAvailableRenderers()[0]->getName()); > mRoot->setRenderSystem(renderSystem); > Index: devel/mygui/patches/patch-MyGUIEngine_include_MyGUI_UString_h > =================================================================== > RCS file: > /home/cvs/ports/devel/mygui/patches/patch-MyGUIEngine_include_MyGUI_UString_h,v > diff -u -p -r1.1 patch-MyGUIEngine_include_MyGUI_UString_h > --- devel/mygui/patches/patch-MyGUIEngine_include_MyGUI_UString_h 21 Aug 2025 > 16:31:48 -0000 1.1 > +++ devel/mygui/patches/patch-MyGUIEngine_include_MyGUI_UString_h 7 Nov 2025 > 18:58:58 -0000 > @@ -2,8 +2,8 @@ Unbreak with libcxx > Index: MyGUIEngine/include/MyGUI_UString.h > --- MyGUIEngine/include/MyGUI_UString.h.orig > +++ MyGUIEngine/include/MyGUI_UString.h > -@@ -154,10 +154,10 @@ namespace MyGUI > - static const size_type npos = static_cast(~0); > +@@ -163,10 +163,10 @@ namespace MyGUI > + static const size_type npos = std::numeric_limits::max(); > > //! a single 32-bit Unicode character > - using unicode_char = uint32; > Index: > devel/mygui/patches/patch-Platforms_OpenGL_OpenGLPlatform_CMakeLists_txt > =================================================================== > RCS file: > devel/mygui/patches/patch-Platforms_OpenGL_OpenGLPlatform_CMakeLists_txt > diff -N > devel/mygui/patches/patch-Platforms_OpenGL_OpenGLPlatform_CMakeLists_txt > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ > devel/mygui/patches/patch-Platforms_OpenGL_OpenGLPlatform_CMakeLists_txt 28 > Jan 2025 19:33:01 -0000 > @@ -0,0 +1,13 @@ > +Index: Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt > +--- Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt.orig > ++++ Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt > +@@ -25,9 +25,6 @@ add_dependencies(${PROJECTNAME} MyGUIEngine) > + > + if (APPLE OR WIN32) > + target_link_libraries(${PROJECTNAME} ${OPENGL_gl_LIBRARY} MyGUIEngine) > +-else () > +- # opengl instead of gl makes it compile and work in a libX11-free wayland > setup > +- target_link_libraries(${PROJECTNAME} ${OPENGL_opengl_LIBRARY} MyGUIEngine) > + endif () > + if (MYGUI_USE_SYSTEM_GLEW) > + target_link_libraries(${PROJECTNAME} ${GLEW_LIBRARIES}) > Index: graphics/openscenegraph/Makefile > =================================================================== > RCS file: /home/cvs/ports/graphics/openscenegraph/Makefile,v > diff -u -p -r1.40 Makefile > --- graphics/openscenegraph/Makefile 7 Sep 2025 16:33:46 -0000 1.40 > +++ graphics/openscenegraph/Makefile 9 Nov 2025 08:36:14 -0000 > @@ -10,7 +10,7 @@ GH_ACCOUNT = openscenegraph > GH_PROJECT = OpenSceneGraph > GH_TAGNAME = OpenSceneGraph-$V > DISTNAME = openscenegraph-${V} > -REVISION = 10 > +REVISION = 11 > > SUBST_VARS += V > > @@ -46,15 +46,17 @@ COMPILER = base-clang ports-gcc > > CXXFLAGS_base-clang = -std=c++14 > > -WANTLIB += ${COMPILER_LIBCXX} GL Iex-3_4 IlmThread-3_4 > -WANTLIB += SDL X11 Xinerama Xrandr fontconfig OpenEXRCore-3_4 > -WANTLIB += avcodec avdevice avformat avutil c cairo > -WANTLIB += curl freetype gdal gdk_pixbuf-2.0 gif gio-2.0 glib-2.0 > -WANTLIB += gobject-2.0 intl jasper jpeg m png poppler-glib rsvg-2 > -WANTLIB += swresample swscale tiff z Imath-3_2 OpenEXR-3_4 > +WANTLIB += ${COMPILER_LIBCXX} GL Iex-3_4 IlmThread-3_4 Imath-3_2 > +WANTLIB += OpenEXR-3_4 OpenEXRCore-3_4 SDL X11 Xinerama Xrandr > +WANTLIB += avcodec avdevice avformat avutil boost_filesystem c > +WANTLIB += cairo collada-dom2.4-dp curl fontconfig freetype gdal > +WANTLIB += gdk_pixbuf-2.0 gif gio-2.0 glib-2.0 gobject-2.0 intl > +WANTLIB += jasper jpeg m png poppler-glib rsvg-2 swresample swscale > +WANTLIB += tiff z > > MODULES = devel/cmake > -LIB_DEPENDS = devel/sdl \ > +LIB_DEPENDS = devel/collada-dom \ > + devel/sdl \ > graphics/openexr \ > graphics/ffmpeg \ > graphics/jasper \ > Index: graphics/openscenegraph/pkg/PLIST > =================================================================== > RCS file: /home/cvs/ports/graphics/openscenegraph/pkg/PLIST,v > diff -u -p -r1.5 PLIST > --- graphics/openscenegraph/pkg/PLIST 11 Mar 2022 19:22:57 -0000 1.5 > +++ graphics/openscenegraph/pkg/PLIST 8 Nov 2025 16:42:08 -0000 > @@ -669,6 +669,7 @@ lib/osgPlugins-${V}/ > @so lib/osgPlugins-${V}/osgdb_bvh.so > @so lib/osgPlugins-${V}/osgdb_cfg.so > @so lib/osgPlugins-${V}/osgdb_curl.so > +@so lib/osgPlugins-${V}/osgdb_dae.so > @so lib/osgPlugins-${V}/osgdb_dds.so > @so lib/osgPlugins-${V}/osgdb_deprecated_osg.so > @so lib/osgPlugins-${V}/osgdb_deprecated_osganimation.so > Index: games/openmw/Makefile > =================================================================== > RCS file: /home/cvs/ports/games/openmw/Makefile,v > diff -u -p -r1.38 Makefile > --- games/openmw/Makefile 17 Oct 2025 11:31:01 -0000 1.38 > +++ games/openmw/Makefile 8 Nov 2025 17:56:26 -0000 > @@ -4,14 +4,13 @@ ONLY_FOR_ARCHS = amd64 i386 > > COMMENT = open source implementation of TES III: Morrowind > > -V = 0.48.0 > +V = 0.50.0 > GH_ACCOUNT = OpenMW > GH_PROJECT = openmw > GH_TAGNAME = openmw-$V > DISTNAME = openmw-$V > -REVISION = 3 > > -DISTFILES.a = e75adf86f91eb3082220085e42dda62679f9a3ea.zip > +DISTFILES.a = c393777d26d2ff6519ac23612abf8af42678c9dd.zip > DIST_SUBDIR = openmw > SITES.a = https://github.com/recastnavigation/recastnavigation/archive/ > > @@ -27,15 +26,17 @@ PERMIT_PACKAGE = Yes > USE_NOBTCFI-aarch64 = Yes > > WANTLIB += ${COMPILER_LIBCXX} BulletCollision GL LinearMath MyGUIEngine > -WANTLIB += boost_atomic-mt boost_filesystem-mt boost_iostreams-mt > -WANTLIB += boost_program_options-mt boost_system-mt icudata icui18n > -WANTLIB += icuuc luajit-5.1 > -WANTLIB += OpenThreads Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5Widgets > -WANTLIB += SDL2 avcodec avformat avutil c lz4 m openal osg osgAnimation > -WANTLIB += osgDB osgFX osgGA osgParticle osgShadow osgText osgUtil > -WANTLIB += osgViewer sqlite3 swresample swscale unshield yaml-cpp > - > -MODULES = devel/cmake lang/lua x11/qt5 > +WANTLIB += OpenThreads Qt6Core Qt6Gui Qt6Network Qt6OpenGL Qt6OpenGLWidgets > +WANTLIB += Qt6Svg Qt6Widgets SDL2 avcodec avformat avutil boost_iostreams-mt > +WANTLIB += boost_program_options-mt boost_random-mt boost_regex-mt > +WANTLIB += boost_system-mt c collada-dom2.4-dp icudata icui18n icuuc > luajit-5.1 > +WANTLIB += lz4 m openal osg osgAnimation osgDB osgFX osgGA osgParticle > +WANTLIB += osgShadow osgSim osgText osgUtil osgViewer sqlite3 > +WANTLIB += swresample swscale unshield yaml-cpp z > + > +MODULES = devel/cmake lang/lua x11/qt6 lang/clang > +MODCLANG_VERSION = 19 > +COMPILER = ports-clang > > BUILD_DEPENDS = sysutils/e2fsprogs > LIB_DEPENDS = archivers/unshield \ > @@ -47,9 +48,10 @@ LIB_DEPENDS = archivers/unshield \ > devel/sdl2 \ > devel/yaml-cpp \ > graphics/ffmpeg \ > - graphics/openscenegraph \ > + graphics/openscenegraph>=3.6.5p11 \ > lang/luajit \ > - textproc/icu4c > + textproc/icu4c \ > + x11/qt6/qtsvg > RUN_DEPENDS = devel/desktop-file-utils > > CONFIGURE_ARGS += -DBINDIR=${LOCALBASE}/bin \ > @@ -57,12 +59,13 @@ CONFIGURE_ARGS += -DBINDIR=${LOCALBASE} > -DSYSCONFDIR=${PREFIX}/share/examples/openmw \ > -DGLOBAL_CONFIG_PATH="${SYSCONFDIR}" \ > -DOPENMW_RESOURCE_FILES="${LOCALBASE}/share/openmw/resources" \ > - -DCMAKE_PREFIX_PATH="${LOCALBASE}/lib/qt5/cmake" \ > - -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON > + -DCMAKE_PREFIX_PATH="${LOCALBASE}/lib/qt5/cmake:${LOCALBASE}" \ > + -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON \ > + -DCOLLADA_DOM_VERSION_MINOR=4 > > NO_TEST = Yes > > -WRKDIST = ${WRKDIR}/openmw-openmw-$V > +WRKDIST = ${WRKDIR}/openmw-${GH_TAGNAME} > > CFLAGS += -I${X11BASE}/include -pthread > CXXFLAGS += -I${X11BASE}/include -pthread > @@ -70,7 +73,10 @@ MODCMAKE_LDFLAGS = -L${X11BASE}/lib > > post-extract: > mkdir ${WRKDIST}/extern/fetched > - mv ${WRKDIR}/recastnavigation-e75adf86f91eb3082220085e42dda62679f9a3ea \ > + mv ${WRKDIR}/recastnavigation-c393777d26d2ff6519ac23612abf8af42678c9dd \ > ${WRKDIST}/extern/fetched/recastnavigation > + > +post-patch: > + ${SUBST_CMD} ${WRKSRC}/components/files/linuxpath.cpp > > .include > Index: games/openmw/distinfo > =================================================================== > RCS file: /home/cvs/ports/games/openmw/distinfo,v > diff -u -p -r1.13 distinfo > --- games/openmw/distinfo 25 Apr 2024 22:05:21 -0000 1.13 > +++ games/openmw/distinfo 7 Nov 2025 17:06:03 -0000 > @@ -1,4 +1,4 @@ > -SHA256 (openmw/e75adf86f91eb3082220085e42dda62679f9a3ea.zip) = > 0zOarqHYEwe8rCvs4XbFNZ7V+Mj5ch/DYNKPgvkRklM= > -SHA256 (openmw/openmw-0.48.0.tar.gz) = > vpe46QCFPEPd6IFvLOSYAftnLP/fSKx6+Xgqv7inSvQ= > -SIZE (openmw/e75adf86f91eb3082220085e42dda62679f9a3ea.zip) = 1644592 > -SIZE (openmw/openmw-0.48.0.tar.gz) = 6022261 > +SHA256 (openmw/c393777d26d2ff6519ac23612abf8af42678c9dd.zip) = > fX/DjJpS29oLodq3DR7VnaEXirHE+iCc23zC3Pzo5Oo= > +SHA256 (openmw/openmw-0.50.0.tar.gz) = > cJOozvJlhSIGWFaeuEY2xauQHoL3TIo/ejqK7DW/xUw= > +SIZE (openmw/c393777d26d2ff6519ac23612abf8af42678c9dd.zip) = 1406094 > +SIZE (openmw/openmw-0.50.0.tar.gz) = 6244084 > Index: games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_cpp > =================================================================== > RCS file: games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_cpp > diff -N games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_cpp > --- games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_cpp 21 Oct > 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,229 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: apps/openmw/mwsound/ffmpeg_decoder.cpp > ---- apps/openmw/mwsound/ffmpeg_decoder.cpp.orig > -+++ apps/openmw/mwsound/ffmpeg_decoder.cpp > -@@ -8,6 +8,10 @@ > - #include > - #include > - > -+#if FFMPEG_5_OR_GREATER > -+#include > -+#endif > -+ > - namespace MWSound > - { > - > -@@ -29,7 +33,11 @@ int FFmpeg_Decoder::readPacket(void *user_data, uint8_ > - } > - } > - > -+#if FFMPEG_CONST_WRITEPACKET > -+int FFmpeg_Decoder::writePacket(void*, const uint8_t*, int) > -+#else > - int FFmpeg_Decoder::writePacket(void *, uint8_t *, int) > -+#endif > - { > - Log(Debug::Error) << "can't write to read-only stream"; > - return -1; > -@@ -124,7 +132,11 @@ bool FFmpeg_Decoder::getAVAudioData() > - if(!mDataBuf || mDataBufLen < mFrame->nb_samples) > - { > - av_freep(&mDataBuf); > -+#if FFMPEG_5_OR_GREATER > -+ if (av_samples_alloc(&mDataBuf, nullptr, > mOutputChannelLayout.nb_channels, > -+#else > - if(av_samples_alloc(&mDataBuf, nullptr, > av_get_channel_layout_nb_channels(mOutputChannelLayout), > -+#endif > - mFrame->nb_samples, mOutputSampleFormat, > 0) < 0) > - return false; > - else > -@@ -159,7 +171,11 @@ size_t FFmpeg_Decoder::readAVAudioData(void *data, siz > - if(!getAVAudioData()) > - break; > - mFramePos = 0; > -+#if FFMPEG_5_OR_GREATER > -+ mFrameSize = mFrame->nb_samples * > mOutputChannelLayout.nb_channels * > -+#else > - mFrameSize = mFrame->nb_samples * > av_get_channel_layout_nb_channels(mOutputChannelLayout) * > -+#endif > - av_get_bytes_per_sample(mOutputSampleFormat); > - } > - > -@@ -256,11 +272,20 @@ void FFmpeg_Decoder::open(const std::string &fname) > - else > - mOutputSampleFormat = AV_SAMPLE_FMT_S16; > - > -+#if FFMPEG_5_OR_GREATER > -+ mOutputChannelLayout = (*mStream)->codecpar->ch_layout; // sefault > -+ if (mOutputChannelLayout.u.mask == 0) > -+ av_channel_layout_default(&mOutputChannelLayout, > mCodecCtx->ch_layout.nb_channels); > -+ > -+ mCodecCtx->ch_layout = mOutputChannelLayout; > -+#else > - mOutputChannelLayout = (*mStream)->codecpar->channel_layout; > - if(mOutputChannelLayout == 0) > - mOutputChannelLayout = > av_get_default_channel_layout(mCodecCtx->channels); > - > - mCodecCtx->channel_layout = mOutputChannelLayout; > -+#endif > -+ > - } > - catch(...) > - { > -@@ -346,42 +371,87 @@ void FFmpeg_Decoder::getInfo(int *samplerate, ChannelC > - *type = SampleType_Int16; > - } > - > -- if(mOutputChannelLayout == AV_CH_LAYOUT_MONO) > -- *chans = ChannelConfig_Mono; > -- else if(mOutputChannelLayout == AV_CH_LAYOUT_STEREO) > -- *chans = ChannelConfig_Stereo; > -- else if(mOutputChannelLayout == AV_CH_LAYOUT_QUAD) > -- *chans = ChannelConfig_Quad; > -- else if(mOutputChannelLayout == AV_CH_LAYOUT_5POINT1) > -- *chans = ChannelConfig_5point1; > -- else if(mOutputChannelLayout == AV_CH_LAYOUT_7POINT1) > -- *chans = ChannelConfig_7point1; > -- else > -+#if FFMPEG_5_OR_GREATER > -+ switch (mOutputChannelLayout.u.mask) > -+#else > -+ switch (mOutputChannelLayout) > -+#endif > - { > -- char str[1024]; > -- av_get_channel_layout_string(str, sizeof(str), mCodecCtx->channels, > mCodecCtx->channel_layout); > -- Log(Debug::Error) << "Unsupported channel layout: "<< str; > -- > -- if(mCodecCtx->channels == 1) > -- { > -- mOutputChannelLayout = AV_CH_LAYOUT_MONO; > -+ case AV_CH_LAYOUT_MONO: > - *chans = ChannelConfig_Mono; > -- } > -- else > -- { > -- mOutputChannelLayout = AV_CH_LAYOUT_STEREO; > -+ break; > -+ case AV_CH_LAYOUT_STEREO: > - *chans = ChannelConfig_Stereo; > -- } > -- } > -+ break; > -+ case AV_CH_LAYOUT_QUAD: > -+ *chans = ChannelConfig_Quad; > -+ break; > -+ case AV_CH_LAYOUT_5POINT1: > -+ *chans = ChannelConfig_5point1; > -+ break; > -+ case AV_CH_LAYOUT_7POINT1: > -+ *chans = ChannelConfig_7point1; > -+ break; > -+ default: > -+ char str[1024]; > -+#if FFMPEG_5_OR_GREATER > -+ av_channel_layout_describe(&mCodecCtx->ch_layout, str, > sizeof(str)); > -+ Log(Debug::Error) << "Unsupported channel layout: " << str; > - > -+ if (mCodecCtx->ch_layout.nb_channels == 1) > -+ { > -+ mOutputChannelLayout = AV_CHANNEL_LAYOUT_MONO; > -+ *chans = ChannelConfig_Mono; > -+ } > -+ else > -+ { > -+ mOutputChannelLayout = AV_CHANNEL_LAYOUT_STEREO; > -+ *chans = ChannelConfig_Stereo; > -+ } > -+#else > -+ av_get_channel_layout_string(str, sizeof(str), > mCodecCtx->channels, mCodecCtx->channel_layout); > -+ Log(Debug::Error) << "Unsupported channel layout: " << str; > -+ > -+ if (mCodecCtx->channels == 1) > -+ { > -+ mOutputChannelLayout = AV_CH_LAYOUT_MONO; > -+ *chans = ChannelConfig_Mono; > -+ } > -+ else > -+ { > -+ mOutputChannelLayout = AV_CH_LAYOUT_STEREO; > -+ *chans = ChannelConfig_Stereo; > -+ } > -+#endif > -+ break; > -+ } > - *samplerate = mCodecCtx->sample_rate; > -+#if FFMPEG_5_OR_GREATER > -+ AVChannelLayout ch_layout = mCodecCtx->ch_layout; > -+ if (ch_layout.u.mask == 0) > -+ av_channel_layout_default(&ch_layout, > mCodecCtx->ch_layout.nb_channels); > -+ > -+ if (mOutputSampleFormat != mCodecCtx->sample_fmt || > mOutputChannelLayout.u.mask != ch_layout.u.mask) > -+#else > - int64_t ch_layout = mCodecCtx->channel_layout; > - if(ch_layout == 0) > - ch_layout = av_get_default_channel_layout(mCodecCtx->channels); > - > - if(mOutputSampleFormat != mCodecCtx->sample_fmt || > - mOutputChannelLayout != ch_layout) > -+#endif > - { > -+#if FFMPEG_5_OR_GREATER > -+ swr_alloc_set_opts2(&mSwr, // SwrContext > -+ &mOutputChannelLayout, // output ch > layout > -+ mOutputSampleFormat, // output sample > format > -+ mCodecCtx->sample_rate, // output sample > rate > -+ &ch_layout, // input ch layout > -+ mCodecCtx->sample_fmt, // input sample > format > -+ mCodecCtx->sample_rate, // input sample > rate > -+ 0, // logging level > offset > -+ nullptr); // log context > -+#else > - mSwr = swr_alloc_set_opts(mSwr, // SwrContext > - mOutputChannelLayout, // output ch > layout > - mOutputSampleFormat, // output sample > format > -@@ -391,6 +461,7 @@ void FFmpeg_Decoder::getInfo(int *samplerate, ChannelC > - mCodecCtx->sample_rate, // input sample rate > - 0, // logging level > offset > - nullptr); // log context > -+#endif > - if(!mSwr) > - throw std::runtime_error("Couldn't allocate SwrContext"); > - int init=swr_init(mSwr); > -@@ -419,7 +490,11 @@ void FFmpeg_Decoder::readAll(std::vector &output > - > - while(getAVAudioData()) > - { > -+#if FFMPEG_5_OR_GREATER > -+ size_t got = mFrame->nb_samples * mOutputChannelLayout.nb_channels * > -+#else > - size_t got = mFrame->nb_samples * > av_get_channel_layout_nb_channels(mOutputChannelLayout) * > -+#endif > - av_get_bytes_per_sample(mOutputSampleFormat); > - const char *inbuf = reinterpret_cast(mFrameData[0]); > - output.insert(output.end(), inbuf, inbuf+got); > -@@ -428,7 +503,11 @@ void FFmpeg_Decoder::readAll(std::vector &output > - > - size_t FFmpeg_Decoder::getSampleOffset() > - { > -+#if FFMPEG_5_OR_GREATER > -+ int delay = (mFrameSize - mFramePos) / mOutputChannelLayout.nb_channels > / > -+#else > - int delay = (mFrameSize-mFramePos) / > av_get_channel_layout_nb_channels(mOutputChannelLayout) / > -+#endif > - av_get_bytes_per_sample(mOutputSampleFormat); > - return (int)(mNextPts*mCodecCtx->sample_rate) - delay; > - } > -@@ -444,7 +523,11 @@ FFmpeg_Decoder::FFmpeg_Decoder(const VFS::Manager* vfs > - , mNextPts(0.0) > - , mSwr(nullptr) > - , mOutputSampleFormat(AV_SAMPLE_FMT_NONE) > -+#if FFMPEG_5_OR_GREATER > -+ , mOutputChannelLayout({}) > -+#else > - , mOutputChannelLayout(0) > -+#endif > - , mDataBuf(nullptr) > - , mFrameData(nullptr) > - , mDataBufLen(0) > Index: games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_hpp > =================================================================== > RCS file: games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_hpp > diff -N games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_hpp > --- games/openmw/patches/patch-apps_openmw_mwsound_ffmpeg_decoder_hpp 21 Oct > 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,39 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: apps/openmw/mwsound/ffmpeg_decoder.hpp > ---- apps/openmw/mwsound/ffmpeg_decoder.hpp.orig > -+++ apps/openmw/mwsound/ffmpeg_decoder.hpp > -@@ -31,6 +31,9 @@ extern "C" > - #include "sound_decoder.hpp" > - > - > -+#define FFMPEG_5_OR_GREATER (LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, > 100)) > -+#define FFMPEG_CONST_WRITEPACKET (LIBAVFORMAT_VERSION_INT >= > AV_VERSION_INT(60, 12, 100) && !defined(FF_API_AVIO_WRITE_NONCONST)) > -+ > - namespace MWSound > - { > - class FFmpeg_Decoder final : public Sound_Decoder > -@@ -49,7 +52,11 @@ namespace MWSound > - > - SwrContext *mSwr; > - enum AVSampleFormat mOutputSampleFormat; > -+#if FFMPEG_5_OR_GREATER > -+ AVChannelLayout mOutputChannelLayout; > -+#else > - int64_t mOutputChannelLayout; > -+#endif > - uint8_t *mDataBuf; > - uint8_t **mFrameData; > - int mDataBufLen; > -@@ -59,7 +66,11 @@ namespace MWSound > - Files::IStreamPtr mDataStream; > - > - static int readPacket(void *user_data, uint8_t *buf, int buf_size); > -+#if FFMPEG_CONST_WRITEPACKET > -+ static int writePacket(void* user_data, const uint8_t* buf, int > buf_size); > -+#else > - static int writePacket(void *user_data, uint8_t *buf, int buf_size); > -+#endif > - static int64_t seek(void *user_data, int64_t offset, int whence); > - > - bool getAVAudioData(); > Index: games/openmw/patches/patch-apps_openmw_mwsound_movieaudiofactory_cpp > =================================================================== > RCS file: games/openmw/patches/patch-apps_openmw_mwsound_movieaudiofactory_cpp > diff -N games/openmw/patches/patch-apps_openmw_mwsound_movieaudiofactory_cpp > --- games/openmw/patches/patch-apps_openmw_mwsound_movieaudiofactory_cpp 21 > Oct 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,17 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: apps/openmw/mwsound/movieaudiofactory.cpp > ---- apps/openmw/mwsound/movieaudiofactory.cpp.orig > -+++ apps/openmw/mwsound/movieaudiofactory.cpp > -@@ -44,7 +44,11 @@ namespace MWSound > - > - size_t getSampleOffset() > - { > -+#if FFMPEG_5_OR_GREATER > -+ ssize_t clock_delay = (mFrameSize - mFramePos) / > mOutputChannelLayout.nb_channels / > -+#else > - ssize_t clock_delay = (mFrameSize-mFramePos) / > av_get_channel_layout_nb_channels(mOutputChannelLayout) / > -+#endif > - > av_get_bytes_per_sample(mOutputSampleFormat); > - return (size_t)(mAudioClock*mAudioContext->sample_rate) - > clock_delay; > - } > Index: games/openmw/patches/patch-apps_openmw_mwstate_charactermanager_hpp > =================================================================== > RCS file: games/openmw/patches/patch-apps_openmw_mwstate_charactermanager_hpp > diff -N games/openmw/patches/patch-apps_openmw_mwstate_charactermanager_hpp > --- games/openmw/patches/patch-apps_openmw_mwstate_charactermanager_hpp 19 Apr > 2025 15:15:13 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,14 +0,0 @@ > -Fix build with boost 1.87; from FreeBSD > - > -Index: apps/openmw/mwstate/charactermanager.hpp > ---- apps/openmw/mwstate/charactermanager.hpp.orig > -+++ apps/openmw/mwstate/charactermanager.hpp > -@@ -1,6 +1,8 @@ > - #ifndef GAME_STATE_CHARACTERMANAGER_H > - #define GAME_STATE_CHARACTERMANAGER_H > - > -+#include > -+ > - #include > - > - #include "character.hpp" > Index: games/openmw/patches/patch-components_bsa_bsa_file_cpp > =================================================================== > RCS file: games/openmw/patches/patch-components_bsa_bsa_file_cpp > diff -N games/openmw/patches/patch-components_bsa_bsa_file_cpp > --- games/openmw/patches/patch-components_bsa_bsa_file_cpp 19 Apr 2025 > 15:15:13 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,13 +0,0 @@ > -Fix build with boost 1.87; from FreeBSD > - > -Index: components/bsa/bsa_file.cpp > ---- components/bsa/bsa_file.cpp.orig > -+++ components/bsa/bsa_file.cpp > -@@ -26,6 +26,7 @@ > - #include > - > - #include > -+#include > - > - #include > - #include > Index: games/openmw/patches/patch-components_to_utf8_to_utf8_cpp > =================================================================== > RCS file: games/openmw/patches/patch-components_to_utf8_to_utf8_cpp > diff -N games/openmw/patches/patch-components_to_utf8_to_utf8_cpp > --- games/openmw/patches/patch-components_to_utf8_to_utf8_cpp 3 Sep 2025 > 07:51:31 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,14 +0,0 @@ > -Fix build with libc++19; backported from openmw-0.49.0 > - > -Index: components/to_utf8/to_utf8.cpp > ---- components/to_utf8/to_utf8.cpp.orig > -+++ components/to_utf8/to_utf8.cpp > -@@ -52,7 +52,7 @@ namespace > - return std::find_if(input.begin(), input.end(), [] (unsigned char v) > { return v == 0 || v >= 128; }); > - } > - > -- std::basic_string_view getTranslationArray(FromType > sourceEncoding) > -+ std::span getTranslationArray(FromType > sourceEncoding) > - { > - switch (sourceEncoding) > - { > Index: games/openmw/patches/patch-components_to_utf8_to_utf8_hpp > =================================================================== > RCS file: games/openmw/patches/patch-components_to_utf8_to_utf8_hpp > diff -N games/openmw/patches/patch-components_to_utf8_to_utf8_hpp > --- games/openmw/patches/patch-components_to_utf8_to_utf8_hpp 3 Sep 2025 > 07:51:31 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,22 +0,0 @@ > -Fix build with libc++19; backported from openmw-0.49.0 > - > -Index: components/to_utf8/to_utf8.hpp > ---- components/to_utf8/to_utf8.hpp.orig > -+++ components/to_utf8/to_utf8.hpp > -@@ -3,6 +3,7 @@ > - > - #include > - #include > -+#include > - #include > - #include > - > -@@ -46,7 +47,7 @@ namespace ToUTF8 > - inline std::pair > getLengthLegacyEnc(std::string_view input) const; > - inline void copyFromArrayLegacyEnc(std::string_view::iterator& > chp, std::string_view::iterator end, char* &out) const; > - > -- const std::basic_string_view mTranslationArray; > -+ const std::span mTranslationArray; > - }; > - > - class Utf8Encoder > Index: games/openmw/patches/patch-extern_CMakeLists_txt > =================================================================== > RCS file: /home/cvs/ports/games/openmw/patches/patch-extern_CMakeLists_txt,v > diff -u -p -r1.3 patch-extern_CMakeLists_txt > --- games/openmw/patches/patch-extern_CMakeLists_txt 25 Apr 2024 22:05:21 > -0000 1.3 > +++ games/openmw/patches/patch-extern_CMakeLists_txt 27 Jan 2025 20:31:24 > -0000 > @@ -1,15 +1,14 @@ > Index: extern/CMakeLists.txt > --- extern/CMakeLists.txt.orig > +++ extern/CMakeLists.txt > -@@ -179,14 +179,7 @@ if(NOT OPENMW_USE_SYSTEM_RECASTNAVIGATION) > +@@ -173,13 +173,7 @@ if(NOT OPENMW_USE_SYSTEM_RECASTNAVIGATION) > set(RECASTNAVIGATION_TESTS OFF CACHE BOOL "") > set(RECASTNAVIGATION_EXAMPLES OFF CACHE BOOL "") > > -- # master on 15 Feb 2021 > - include(FetchContent) > - FetchContent_Declare(recastnavigation > -- URL > https://github.com/recastnavigation/recastnavigation/archive/e75adf86f91eb3082220085e42dda62679f9a3ea.zip > -- URL_HASH > SHA512=93a19490cdfa55e98a6af9cc050e94af88fdb95fae2059ceeff28b62f3b48515f5fdd2c806c910550933b6861a4f6a91173ee0ed1b61c1396f7b34d4c78f0793 > +- URL > https://github.com/recastnavigation/recastnavigation/archive/c393777d26d2ff6519ac23612abf8af42678c9dd.zip > +- URL_HASH > SHA512=48f20cee7a70c2f20f4c68bb74d5af11a1434be85294e37f5fe7b7aae820fbcdff4f35d3be286eaf6f9cbce0aed4201fcc090df409a5bd04aec5fd7c29b3ad94 > - SOURCE_DIR fetched/recastnavigation > - ) > - FetchContent_MakeAvailableExcludeFromAll(recastnavigation) > Index: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_cpp > =================================================================== > RCS file: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_cpp > diff -N > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_cpp > --- > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_cpp 21 > Oct 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,147 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: extern/osg-ffmpeg-videoplayer/audiodecoder.cpp > ---- extern/osg-ffmpeg-videoplayer/audiodecoder.cpp.orig > -+++ extern/osg-ffmpeg-videoplayer/audiodecoder.cpp > -@@ -18,6 +18,10 @@ extern "C" > - #pragma warning (pop) > - #endif > - > -+#if FFMPEG_5_OR_GREATER > -+ #include > -+#endif > -+ > - #include "videostate.hpp" > - > - namespace > -@@ -53,7 +57,11 @@ MovieAudioDecoder::MovieAudioDecoder(VideoState* video > - : mVideoState(videoState) > - , mAVStream(*videoState->audio_st) > - , mOutputSampleFormat(AV_SAMPLE_FMT_NONE) > -+ #if FFMPEG_5_OR_GREATER > -+ , mOutputChannelLayout({}) > -+ #else > - , mOutputChannelLayout(0) > -+ #endif > - , mOutputSampleRate(0) > - , mFramePos(0) > - , mFrameSize(0) > -@@ -109,21 +117,49 @@ void MovieAudioDecoder::setupFormat() > - > - AVSampleFormat inputSampleFormat = mAudioContext->sample_fmt; > - > -+#if FFMPEG_5_OR_GREATER > -+ AVChannelLayout inputChannelLayout = mAudioContext->ch_layout; > -+ if (inputChannelLayout.u.mask != 0) > -+ mOutputChannelLayout = inputChannelLayout; > -+ else > -+ av_channel_layout_default(&mOutputChannelLayout, > mAudioContext->ch_layout.nb_channels); > -+#else > - uint64_t inputChannelLayout = mAudioContext->channel_layout; > - if (inputChannelLayout == 0) > - inputChannelLayout = > av_get_default_channel_layout(mAudioContext->channels); > -+#endif > - > - int inputSampleRate = mAudioContext->sample_rate; > - > - mOutputSampleRate = inputSampleRate; > - mOutputSampleFormat = inputSampleFormat; > -+ > -+#if FFMPEG_5_OR_GREATER > -+ adjustAudioSettings(mOutputSampleFormat, mOutputChannelLayout.u.mask, > mOutputSampleRate); > -+#else > - mOutputChannelLayout = inputChannelLayout; > - adjustAudioSettings(mOutputSampleFormat, mOutputChannelLayout, > mOutputSampleRate); > -+#endif > - > - if (inputSampleFormat != mOutputSampleFormat > -+ #if FFMPEG_5_OR_GREATER > -+ || inputChannelLayout.u.mask != mOutputChannelLayout.u.mask > -+ #else > - || inputChannelLayout != mOutputChannelLayout > -+ #endif > - || inputSampleRate != mOutputSampleRate) > - { > -+ #if FFMPEG_5_OR_GREATER > -+ swr_alloc_set_opts2(&mAudioResampler->mSwr, > -+ &mOutputChannelLayout, > -+ mOutputSampleFormat, > -+ mOutputSampleRate, > -+ &inputChannelLayout, > -+ inputSampleFormat, > -+ inputSampleRate, > -+ 0, // logging level offset > -+ nullptr); // log context > -+ #else > - mAudioResampler->mSwr = swr_alloc_set_opts(mAudioResampler->mSwr, > - mOutputChannelLayout, > - mOutputSampleFormat, > -@@ -133,6 +169,8 @@ void MovieAudioDecoder::setupFormat() > - inputSampleRate, > - 0, // logging level > offset > - nullptr); // log context > -+ #endif > -+ > - if(!mAudioResampler->mSwr) > - fail(std::string("Couldn't allocate SwrContext")); > - if(swr_init(mAudioResampler->mSwr) < 0) > -@@ -158,7 +196,11 @@ int MovieAudioDecoder::synchronize_audio() > - if(fabs(avg_diff) >= mAudioDiffThreshold) > - { > - int n = av_get_bytes_per_sample(mOutputSampleFormat) * > -+ #if FFMPEG_5_OR_GREATER > -+ mOutputChannelLayout.nb_channels; > -+ #else > - av_get_channel_layout_nb_channels(mOutputChannelLayout); > -+ #endif > - sample_skip = ((int)(diff * mAudioContext->sample_rate) * n); > - } > - } > -@@ -204,7 +246,11 @@ int MovieAudioDecoder::audio_decode_frame(AVFrame *fra > - if(!mDataBuf || mDataBufLen < frame->nb_samples) > - { > - av_freep(&mDataBuf); > -+ #if FFMPEG_5_OR_GREATER > -+ if(av_samples_alloc(&mDataBuf, nullptr, > mOutputChannelLayout.nb_channels, > -+ #else > - if(av_samples_alloc(&mDataBuf, nullptr, > av_get_channel_layout_nb_channels(mOutputChannelLayout), > -+ #endif > - frame->nb_samples, > mOutputSampleFormat, 0) < 0) > - break; > - else > -@@ -221,7 +267,11 @@ int MovieAudioDecoder::audio_decode_frame(AVFrame *fra > - else > - mFrameData = &frame->data[0]; > - > -+ #if FFMPEG_5_OR_GREATER > -+ int result = frame->nb_samples * > mOutputChannelLayout.nb_channels * > -+ #else > - int result = frame->nb_samples * > av_get_channel_layout_nb_channels(mOutputChannelLayout) * > -+ #endif > - av_get_bytes_per_sample(mOutputSampleFormat); > - > - /* We have data, return it and come back for more later */ > -@@ -298,7 +348,11 @@ size_t MovieAudioDecoder::read(char *stream, size_t le > - len1 = std::min(len1, -mFramePos); > - > - int n = av_get_bytes_per_sample(mOutputSampleFormat) > -+ #if FFMPEG_5_OR_GREATER > -+ * mOutputChannelLayout.nb_channels; > -+ #else > - * > av_get_channel_layout_nb_channels(mOutputChannelLayout); > -+ #endif > - > - /* add samples by copying the first sample*/ > - if(n == 1) > -@@ -348,7 +402,11 @@ int MovieAudioDecoder::getOutputSampleRate() const > - > - uint64_t MovieAudioDecoder::getOutputChannelLayout() const > - { > -+ #if FFMPEG_5_OR_GREATER > -+ return mOutputChannelLayout.u.mask; > -+ #else > - return mOutputChannelLayout; > -+ #endif > - } > - > - AVSampleFormat MovieAudioDecoder::getOutputSampleFormat() const > Index: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_hpp > =================================================================== > RCS file: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_hpp > diff -N > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_hpp > --- > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_audiodecoder_hpp 21 > Oct 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,26 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: extern/osg-ffmpeg-videoplayer/audiodecoder.hpp > ---- extern/osg-ffmpeg-videoplayer/audiodecoder.hpp.orig > -+++ extern/osg-ffmpeg-videoplayer/audiodecoder.hpp > -@@ -29,6 +29,8 @@ extern "C" > - typedef SSIZE_T ssize_t; > - #endif > - > -+#define FFMPEG_5_OR_GREATER (LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, > 100)) > -+ > - namespace Video > - { > - > -@@ -43,7 +45,11 @@ class MovieAudioDecoder (protected) > - AVCodecContext* mAudioContext; > - AVStream *mAVStream; > - enum AVSampleFormat mOutputSampleFormat; > -+ #if FFMPEG_5_OR_GREATER > -+ AVChannelLayout mOutputChannelLayout; > -+ #else > - uint64_t mOutputChannelLayout; > -+ #endif > - int mOutputSampleRate; > - ssize_t mFramePos; > - ssize_t mFrameSize; > Index: games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_cpp > =================================================================== > RCS file: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_cpp > diff -N > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_cpp > --- games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_cpp 21 > Oct 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,17 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: extern/osg-ffmpeg-videoplayer/videostate.cpp > ---- extern/osg-ffmpeg-videoplayer/videostate.cpp.orig > -+++ extern/osg-ffmpeg-videoplayer/videostate.cpp > -@@ -243,7 +243,11 @@ int VideoState::istream_read(void *user_data, uint8_t > - } > - } > - > -+#if FFMPEG_CONST_WRITEPACKET > -+int VideoState::istream_write(void *, const unsigned char *, int) > -+#else > - int VideoState::istream_write(void *, uint8_t *, int) > -+#endif > - { > - throw std::runtime_error("can't write to read-only stream"); > - } > Index: games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_hpp > =================================================================== > RCS file: > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_hpp > diff -N > games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_hpp > --- games/openmw/patches/patch-extern_osg-ffmpeg-videoplayer_videostate_hpp 21 > Oct 2025 12:53:02 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,30 +0,0 @@ > -https://github.com/OpenMW/openmw/commit/61cb5b4da638d520c41a9d99b5850384b2e22679 > - > -Index: extern/osg-ffmpeg-videoplayer/videostate.hpp > ---- extern/osg-ffmpeg-videoplayer/videostate.hpp.orig > -+++ extern/osg-ffmpeg-videoplayer/videostate.hpp > -@@ -42,6 +42,9 @@ extern "C" > - > - #define VIDEO_PICTURE_QUEUE_SIZE 50 > - > -+#define FFMPEG_5_OR_GREATER (LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 28, > 100)) > -+#define FFMPEG_CONST_WRITEPACKET (LIBAVFORMAT_VERSION_INT >= > AV_VERSION_INT(60, 12, 100) && !defined(FF_API_AVIO_WRITE_NONCONST)) > -+ > - extern "C" > - { > - struct SwsContext; > -@@ -155,7 +158,13 @@ struct VideoState { > - double get_master_clock(); > - > - static int istream_read(void *user_data, uint8_t *buf, int buf_size); > -- static int istream_write(void *user_data, uint8_t *buf, int buf_size); > -+ > -+#if FFMPEG_CONST_WRITEPACKET > -+ static int istream_write(void *, const unsigned char *, int); > -+#else > -+ static int istream_write(void *, uint8_t *, int); > -+#endif > -+ > - static int64_t istream_seek(void *user_data, int64_t offset, int > whence); > - > - osg::ref_ptr mTexture; > Index: games/openmw/patches/patch-extern_sol3_sol_optional_implementation_hpp > =================================================================== > RCS file: > games/openmw/patches/patch-extern_sol3_sol_optional_implementation_hpp > diff -N games/openmw/patches/patch-extern_sol3_sol_optional_implementation_hpp > --- games/openmw/patches/patch-extern_sol3_sol_optional_implementation_hpp 31 > Jan 2025 09:03:56 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,15 +0,0 @@ > -https://github.com/ThePhD/sol2/pull/1606 > - > -Index: extern/sol3/sol/optional_implementation.hpp > ---- extern/sol3/sol/optional_implementation.hpp.orig > -+++ extern/sol3/sol/optional_implementation.hpp > -@@ -2191,7 +2191,8 @@ namespace sol { > - static_assert(std::is_constructible::value, "T must be > constructible with Args"); > - > - *this = nullopt; > -- this->construct(std::forward(args)...); > -+ new (static_cast(this)) optional(std::in_place, > std::forward(args)...); > -+ return **this; > - } > - > - /// Swaps this optional with the other. > Index: games/openmw/pkg/PLIST > =================================================================== > RCS file: /home/cvs/ports/games/openmw/pkg/PLIST,v > diff -u -p -r1.13 PLIST > --- games/openmw/pkg/PLIST 25 Apr 2024 22:05:21 -0000 1.13 > +++ games/openmw/pkg/PLIST 7 Nov 2025 21:33:42 -0000 > @@ -34,11 +34,18 @@ include/recastnavigation/RecastAlloc.h > include/recastnavigation/RecastAssert.h > include/recastnavigation/RecastDebugDraw.h > include/recastnavigation/RecastDump.h > +include/recastnavigation/version.h > +lib/cmake/recastnavigation/ > +lib/cmake/recastnavigation/recastnavigation-config-version.cmake > +lib/cmake/recastnavigation/recastnavigation-config.cmake > +lib/cmake/recastnavigation/recastnavigation-targets${MODCMAKE_BUILD_SUFFIX} > +lib/cmake/recastnavigation/recastnavigation-targets.cmake > @static-lib lib/libDebugUtils.a > @static-lib lib/libDetour.a > @static-lib lib/libDetourCrowd.a > @static-lib lib/libDetourTileCache.a > @static-lib lib/libRecast.a > +lib/pkgconfig/recastnavigation.pc > share/applications/org.openmw.cs.desktop > share/applications/org.openmw.launcher.desktop > share/doc/pkg-readmes/${PKGSTEM} > @@ -52,12 +59,9 @@ share/examples/openmw/gamecontrollerdb.t > @sample ${SYSCONFDIR}/openmw/gamecontrollerdb.txt > share/examples/openmw/openmw.cfg > @sample ${SYSCONFDIR}/openmw/openmw.cfg > -share/examples/openmw/version > -@sample ${SYSCONFDIR}/openmw/version > share/metainfo/ > share/metainfo/openmw.appdata.xml > share/openmw/ > -share/openmw/data/ > share/openmw/resources/ > share/openmw/resources/defaultfilters > share/openmw/resources/lua_api/ > @@ -66,72 +70,145 @@ share/openmw/resources/lua_api/coroutine > share/openmw/resources/lua_api/global.doclua > share/openmw/resources/lua_api/math.doclua > share/openmw/resources/lua_api/openmw/ > +share/openmw/resources/lua_api/openmw/ambient.lua > +share/openmw/resources/lua_api/openmw/animation.lua > share/openmw/resources/lua_api/openmw/async.lua > +share/openmw/resources/lua_api/openmw/camera.lua > share/openmw/resources/lua_api/openmw/core.lua > share/openmw/resources/lua_api/openmw/debug.lua > +share/openmw/resources/lua_api/openmw/input.lua > +share/openmw/resources/lua_api/openmw/interfaces.lua > +share/openmw/resources/lua_api/openmw/markup.lua > +share/openmw/resources/lua_api/openmw/menu.lua > share/openmw/resources/lua_api/openmw/nearby.lua > share/openmw/resources/lua_api/openmw/postprocessing.lua > share/openmw/resources/lua_api/openmw/self.lua > +share/openmw/resources/lua_api/openmw/storage.lua > share/openmw/resources/lua_api/openmw/types.lua > share/openmw/resources/lua_api/openmw/ui.lua > share/openmw/resources/lua_api/openmw/util.lua > +share/openmw/resources/lua_api/openmw/vfs.lua > share/openmw/resources/lua_api/openmw/world.lua > share/openmw/resources/lua_api/string.doclua > share/openmw/resources/lua_api/table.doclua > share/openmw/resources/lua_libs/ > share/openmw/resources/lua_libs/content.lua > +share/openmw/resources/lua_libs/util.lua > share/openmw/resources/openmw.png > share/openmw/resources/shaders/ > -share/openmw/resources/shaders/alpha.glsl > -share/openmw/resources/shaders/blended_depth_postpass_fragment.glsl > -share/openmw/resources/shaders/blended_depth_postpass_vertex.glsl > -share/openmw/resources/shaders/debug_fragment.glsl > -share/openmw/resources/shaders/debug_vertex.glsl > -share/openmw/resources/shaders/depth.glsl > -share/openmw/resources/shaders/fog.glsl > -share/openmw/resources/shaders/fullscreen_tri_fragment.glsl > -share/openmw/resources/shaders/fullscreen_tri_vertex.glsl > -share/openmw/resources/shaders/groundcover_fragment.glsl > -share/openmw/resources/shaders/groundcover_vertex.glsl > -share/openmw/resources/shaders/gui_fragment.glsl > -share/openmw/resources/shaders/gui_vertex.glsl > -share/openmw/resources/shaders/hdr_luminance_fragment.glsl > -share/openmw/resources/shaders/hdr_resolve_fragment.glsl > -share/openmw/resources/shaders/lighting.glsl > -share/openmw/resources/shaders/lighting_util.glsl > -share/openmw/resources/shaders/multiview_resolve_fragment.glsl > -share/openmw/resources/shaders/multiview_resolve_vertex.glsl > -share/openmw/resources/shaders/nv_default_fragment.glsl > -share/openmw/resources/shaders/nv_default_vertex.glsl > -share/openmw/resources/shaders/nv_nolighting_fragment.glsl > -share/openmw/resources/shaders/nv_nolighting_vertex.glsl > -share/openmw/resources/shaders/objects_fragment.glsl > -share/openmw/resources/shaders/objects_vertex.glsl > -share/openmw/resources/shaders/openmw_fragment.glsl > -share/openmw/resources/shaders/openmw_fragment.h.glsl > -share/openmw/resources/shaders/openmw_fragment_multiview.glsl > -share/openmw/resources/shaders/openmw_vertex.glsl > -share/openmw/resources/shaders/openmw_vertex.h.glsl > -share/openmw/resources/shaders/openmw_vertex_multiview.glsl > -share/openmw/resources/shaders/parallax.glsl > -share/openmw/resources/shaders/s360_fragment.glsl > -share/openmw/resources/shaders/s360_vertex.glsl > -share/openmw/resources/shaders/shadowcasting_fragment.glsl > -share/openmw/resources/shaders/shadowcasting_vertex.glsl > -share/openmw/resources/shaders/shadows_fragment.glsl > -share/openmw/resources/shaders/shadows_vertex.glsl > -share/openmw/resources/shaders/sky_fragment.glsl > -share/openmw/resources/shaders/sky_vertex.glsl > -share/openmw/resources/shaders/skypasses.glsl > -share/openmw/resources/shaders/softparticles.glsl > -share/openmw/resources/shaders/terrain_fragment.glsl > -share/openmw/resources/shaders/terrain_vertex.glsl > -share/openmw/resources/shaders/vertexcolors.glsl > -share/openmw/resources/shaders/water_fragment.glsl > -share/openmw/resources/shaders/water_nm.png > -share/openmw/resources/shaders/water_vertex.glsl > +share/openmw/resources/shaders/compatibility/ > +share/openmw/resources/shaders/compatibility/bs/ > +share/openmw/resources/shaders/compatibility/bs/default.frag > +share/openmw/resources/shaders/compatibility/bs/default.vert > +share/openmw/resources/shaders/compatibility/bs/nolighting.frag > +share/openmw/resources/shaders/compatibility/bs/nolighting.vert > +share/openmw/resources/shaders/compatibility/debug.frag > +share/openmw/resources/shaders/compatibility/debug.vert > +share/openmw/resources/shaders/compatibility/depthclipped.frag > +share/openmw/resources/shaders/compatibility/depthclipped.vert > +share/openmw/resources/shaders/compatibility/fog.glsl > +share/openmw/resources/shaders/compatibility/fullscreen_tri.frag > +share/openmw/resources/shaders/compatibility/fullscreen_tri.vert > +share/openmw/resources/shaders/compatibility/groundcover.frag > +share/openmw/resources/shaders/compatibility/groundcover.vert > +share/openmw/resources/shaders/compatibility/gui.frag > +share/openmw/resources/shaders/compatibility/gui.vert > +share/openmw/resources/shaders/compatibility/luminance/ > +share/openmw/resources/shaders/compatibility/luminance/luminance.frag > +share/openmw/resources/shaders/compatibility/luminance/resolve.frag > +share/openmw/resources/shaders/compatibility/multiview_resolve.frag > +share/openmw/resources/shaders/compatibility/multiview_resolve.vert > +share/openmw/resources/shaders/compatibility/normals.glsl > +share/openmw/resources/shaders/compatibility/objects.frag > +share/openmw/resources/shaders/compatibility/objects.vert > +share/openmw/resources/shaders/compatibility/ripples_blobber.frag > +share/openmw/resources/shaders/compatibility/ripples_simulate.frag > +share/openmw/resources/shaders/compatibility/shadowcasting.frag > +share/openmw/resources/shaders/compatibility/shadowcasting.vert > +share/openmw/resources/shaders/compatibility/shadows_fragment.glsl > +share/openmw/resources/shaders/compatibility/shadows_vertex.glsl > +share/openmw/resources/shaders/compatibility/sky.frag > +share/openmw/resources/shaders/compatibility/sky.vert > +share/openmw/resources/shaders/compatibility/terrain.frag > +share/openmw/resources/shaders/compatibility/terrain.vert > +share/openmw/resources/shaders/compatibility/vertexcolors.glsl > +share/openmw/resources/shaders/compatibility/water.frag > +share/openmw/resources/shaders/compatibility/water.vert > +share/openmw/resources/shaders/core/ > +share/openmw/resources/shaders/core/gui.frag > +share/openmw/resources/shaders/core/gui.vert > +share/openmw/resources/shaders/core/ripples_blobber.comp > +share/openmw/resources/shaders/core/ripples_simulate.comp > +share/openmw/resources/shaders/lib/ > +share/openmw/resources/shaders/lib/core/ > +share/openmw/resources/shaders/lib/core/fragment.glsl > +share/openmw/resources/shaders/lib/core/fragment.h.glsl > +share/openmw/resources/shaders/lib/core/fragment_multiview.glsl > +share/openmw/resources/shaders/lib/core/vertex.glsl > +share/openmw/resources/shaders/lib/core/vertex.h.glsl > +share/openmw/resources/shaders/lib/core/vertex_multiview.glsl > +share/openmw/resources/shaders/lib/light/ > +share/openmw/resources/shaders/lib/light/lighting.glsl > +share/openmw/resources/shaders/lib/light/lighting_util.glsl > +share/openmw/resources/shaders/lib/luminance/ > +share/openmw/resources/shaders/lib/luminance/constants.glsl > +share/openmw/resources/shaders/lib/material/ > +share/openmw/resources/shaders/lib/material/alpha.glsl > +share/openmw/resources/shaders/lib/material/parallax.glsl > +share/openmw/resources/shaders/lib/particle/ > +share/openmw/resources/shaders/lib/particle/occlusion.glsl > +share/openmw/resources/shaders/lib/particle/soft.glsl > +share/openmw/resources/shaders/lib/sky/ > +share/openmw/resources/shaders/lib/sky/passes.glsl > +share/openmw/resources/shaders/lib/util/ > +share/openmw/resources/shaders/lib/util/coordinates.glsl > +share/openmw/resources/shaders/lib/util/distortion.glsl > +share/openmw/resources/shaders/lib/util/quickstep.glsl > +share/openmw/resources/shaders/lib/view/ > +share/openmw/resources/shaders/lib/view/depth.glsl > +share/openmw/resources/shaders/lib/water/ > +share/openmw/resources/shaders/lib/water/fresnel.glsl > +share/openmw/resources/shaders/lib/water/rain_ripples.glsl > +share/openmw/resources/shaders/lib/water/ripples.glsl > +share/openmw/resources/translations/ > +share/openmw/resources/translations/components_de.qm > +share/openmw/resources/translations/components_en.qm > +share/openmw/resources/translations/components_fr.qm > +share/openmw/resources/translations/components_pl.qm > +share/openmw/resources/translations/components_ru.qm > +share/openmw/resources/translations/components_sv.qm > +share/openmw/resources/translations/launcher_de.qm > +share/openmw/resources/translations/launcher_en.qm > +share/openmw/resources/translations/launcher_fr.qm > +share/openmw/resources/translations/launcher_pl.qm > +share/openmw/resources/translations/launcher_ru.qm > +share/openmw/resources/translations/launcher_sv.qm > +share/openmw/resources/translations/wizard_de.qm > +share/openmw/resources/translations/wizard_en.qm > +share/openmw/resources/translations/wizard_fr.qm > +share/openmw/resources/translations/wizard_pl.qm > +share/openmw/resources/translations/wizard_ru.qm > +share/openmw/resources/translations/wizard_sv.qm > share/openmw/resources/version > share/openmw/resources/vfs/ > +share/openmw/resources/vfs-mw/ > +share/openmw/resources/vfs-mw/l10n/ > +share/openmw/resources/vfs-mw/l10n/Calendar/ > +share/openmw/resources/vfs-mw/l10n/Calendar/de.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/en.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/fr.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/gmst.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/pl.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/ru.yaml > +share/openmw/resources/vfs-mw/l10n/Calendar/sv.yaml > +share/openmw/resources/vfs-mw/l10n/Interface/ > +share/openmw/resources/vfs-mw/l10n/Interface/gmst.yaml > +share/openmw/resources/vfs-mw/l10n/OMWEngine/ > +share/openmw/resources/vfs-mw/l10n/OMWEngine/gmst.yaml > +share/openmw/resources/vfs-mw/openmw_aux/ > +share/openmw/resources/vfs-mw/openmw_aux/calendarconfig.lua > +share/openmw/resources/vfs/animations/ > +share/openmw/resources/vfs/animations/animation-config.yaml > share/openmw/resources/vfs/builtin.omwscripts > share/openmw/resources/vfs/fonts/ > share/openmw/resources/vfs/fonts/DejaVuFontLicense.txt > @@ -144,60 +221,61 @@ share/openmw/resources/vfs/fonts/MysticC > share/openmw/resources/vfs/fonts/MysticCards.ttf > share/openmw/resources/vfs/fonts/MysticCardsFontLicense.txt > share/openmw/resources/vfs/l10n/ > -share/openmw/resources/vfs/l10n/BuiltInShaders/ > -share/openmw/resources/vfs/l10n/BuiltInShaders/de.yaml > -share/openmw/resources/vfs/l10n/BuiltInShaders/en.yaml > -share/openmw/resources/vfs/l10n/BuiltInShaders/fr.yaml > -share/openmw/resources/vfs/l10n/BuiltInShaders/ru.yaml > -share/openmw/resources/vfs/l10n/BuiltInShaders/sv.yaml > share/openmw/resources/vfs/l10n/Calendar/ > share/openmw/resources/vfs/l10n/Calendar/de.yaml > share/openmw/resources/vfs/l10n/Calendar/en.yaml > -share/openmw/resources/vfs/l10n/Calendar/fr.yaml > +share/openmw/resources/vfs/l10n/Calendar/pl.yaml > share/openmw/resources/vfs/l10n/Calendar/ru.yaml > share/openmw/resources/vfs/l10n/Calendar/sv.yaml > -share/openmw/resources/vfs/l10n/DebugMenu/ > -share/openmw/resources/vfs/l10n/DebugMenu/de.yaml > -share/openmw/resources/vfs/l10n/DebugMenu/en.yaml > -share/openmw/resources/vfs/l10n/DebugMenu/fr.yaml > -share/openmw/resources/vfs/l10n/DebugMenu/ru.yaml > -share/openmw/resources/vfs/l10n/DebugMenu/sv.yaml > share/openmw/resources/vfs/l10n/Interface/ > share/openmw/resources/vfs/l10n/Interface/de.yaml > share/openmw/resources/vfs/l10n/Interface/en.yaml > share/openmw/resources/vfs/l10n/Interface/fr.yaml > +share/openmw/resources/vfs/l10n/Interface/pl.yaml > share/openmw/resources/vfs/l10n/Interface/ru.yaml > share/openmw/resources/vfs/l10n/Interface/sv.yaml > -share/openmw/resources/vfs/l10n/Navigation/ > -share/openmw/resources/vfs/l10n/Navigation/de.yaml > -share/openmw/resources/vfs/l10n/Navigation/en.yaml > -share/openmw/resources/vfs/l10n/Navigation/fr.yaml > -share/openmw/resources/vfs/l10n/Navigation/ru.yaml > -share/openmw/resources/vfs/l10n/Navigation/sv.yaml > share/openmw/resources/vfs/l10n/OMWCamera/ > share/openmw/resources/vfs/l10n/OMWCamera/de.yaml > share/openmw/resources/vfs/l10n/OMWCamera/en.yaml > share/openmw/resources/vfs/l10n/OMWCamera/fr.yaml > +share/openmw/resources/vfs/l10n/OMWCamera/pl.yaml > share/openmw/resources/vfs/l10n/OMWCamera/ru.yaml > share/openmw/resources/vfs/l10n/OMWCamera/sv.yaml > -share/openmw/resources/vfs/l10n/PostProcessing/ > -share/openmw/resources/vfs/l10n/PostProcessing/de.yaml > -share/openmw/resources/vfs/l10n/PostProcessing/en.yaml > -share/openmw/resources/vfs/l10n/PostProcessing/fr.yaml > -share/openmw/resources/vfs/l10n/PostProcessing/ru.yaml > -share/openmw/resources/vfs/l10n/PostProcessing/sv.yaml > -share/openmw/resources/vfs/l10n/SavegameMenu/ > -share/openmw/resources/vfs/l10n/SavegameMenu/de.yaml > -share/openmw/resources/vfs/l10n/SavegameMenu/en.yaml > -share/openmw/resources/vfs/l10n/SavegameMenu/fr.yaml > -share/openmw/resources/vfs/l10n/SavegameMenu/ru.yaml > -share/openmw/resources/vfs/l10n/SavegameMenu/sv.yaml > -share/openmw/resources/vfs/l10n/SettingsMenu/ > -share/openmw/resources/vfs/l10n/SettingsMenu/de.yaml > -share/openmw/resources/vfs/l10n/SettingsMenu/en.yaml > -share/openmw/resources/vfs/l10n/SettingsMenu/fr.yaml > -share/openmw/resources/vfs/l10n/SettingsMenu/ru.yaml > -share/openmw/resources/vfs/l10n/SettingsMenu/sv.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/ > +share/openmw/resources/vfs/l10n/OMWCombat/de.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/en.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/fr.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/pl.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/ru.yaml > +share/openmw/resources/vfs/l10n/OMWCombat/sv.yaml > +share/openmw/resources/vfs/l10n/OMWControls/ > +share/openmw/resources/vfs/l10n/OMWControls/de.yaml > +share/openmw/resources/vfs/l10n/OMWControls/en.yaml > +share/openmw/resources/vfs/l10n/OMWControls/fr.yaml > +share/openmw/resources/vfs/l10n/OMWControls/pl.yaml > +share/openmw/resources/vfs/l10n/OMWControls/ru.yaml > +share/openmw/resources/vfs/l10n/OMWControls/sv.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/ > +share/openmw/resources/vfs/l10n/OMWEngine/de.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/en.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/fr.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/pl.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/ru.yaml > +share/openmw/resources/vfs/l10n/OMWEngine/sv.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/ > +share/openmw/resources/vfs/l10n/OMWMusic/de.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/en.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/fr.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/pl.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/ru.yaml > +share/openmw/resources/vfs/l10n/OMWMusic/sv.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/ > +share/openmw/resources/vfs/l10n/OMWShaders/de.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/en.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/fr.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/pl.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/ru.yaml > +share/openmw/resources/vfs/l10n/OMWShaders/sv.yaml > share/openmw/resources/vfs/mygui/ > share/openmw/resources/vfs/mygui/OpenMWResourcePlugin.xml > share/openmw/resources/vfs/mygui/core.skin > @@ -222,6 +300,7 @@ share/openmw/resources/vfs/mygui/openmw_ > share/openmw/resources/vfs/mygui/openmw_console.layout > share/openmw/resources/vfs/mygui/openmw_console.skin.xml > share/openmw/resources/vfs/mygui/openmw_container_window.layout > +share/openmw/resources/vfs/mygui/openmw_controllerbuttons.layout > share/openmw/resources/vfs/mygui/openmw_count_window.layout > share/openmw/resources/vfs/mygui/openmw_debug_window.layout > share/openmw/resources/vfs/mygui/openmw_debug_window.skin.xml > @@ -237,6 +316,7 @@ share/openmw/resources/vfs/mygui/openmw_ > share/openmw/resources/vfs/mygui/openmw_infobox.layout > share/openmw/resources/vfs/mygui/openmw_interactive_messagebox.layout > share/openmw/resources/vfs/mygui/openmw_interactive_messagebox_notransp.layout > +share/openmw/resources/vfs/mygui/openmw_inventory_tabs.layout > share/openmw/resources/vfs/mygui/openmw_inventory_window.layout > share/openmw/resources/vfs/mygui/openmw_itemselection_dialog.layout > share/openmw/resources/vfs/mygui/openmw_jail_screen.layout > @@ -287,11 +367,13 @@ share/openmw/resources/vfs/mygui/openmw_ > share/openmw/resources/vfs/mygui/skins.xml > share/openmw/resources/vfs/openmw_aux/ > share/openmw/resources/vfs/openmw_aux/calendar.lua > +share/openmw/resources/vfs/openmw_aux/calendarconfig.lua > share/openmw/resources/vfs/openmw_aux/time.lua > share/openmw/resources/vfs/openmw_aux/ui.lua > share/openmw/resources/vfs/openmw_aux/util.lua > share/openmw/resources/vfs/scripts/ > share/openmw/resources/vfs/scripts/omw/ > +share/openmw/resources/vfs/scripts/omw/activationhandlers.lua > share/openmw/resources/vfs/scripts/omw/ai.lua > share/openmw/resources/vfs/scripts/omw/camera/ > share/openmw/resources/vfs/scripts/omw/camera/camera.lua > @@ -300,10 +382,34 @@ share/openmw/resources/vfs/scripts/omw/c > share/openmw/resources/vfs/scripts/omw/camera/move360.lua > share/openmw/resources/vfs/scripts/omw/camera/settings.lua > share/openmw/resources/vfs/scripts/omw/camera/third_person.lua > +share/openmw/resources/vfs/scripts/omw/cellhandlers.lua > +share/openmw/resources/vfs/scripts/omw/combat/ > +share/openmw/resources/vfs/scripts/omw/combat/common.lua > +share/openmw/resources/vfs/scripts/omw/combat/global.lua > +share/openmw/resources/vfs/scripts/omw/combat/local.lua > +share/openmw/resources/vfs/scripts/omw/combat/menu.lua > share/openmw/resources/vfs/scripts/omw/console/ > share/openmw/resources/vfs/scripts/omw/console/global.lua > share/openmw/resources/vfs/scripts/omw/console/local.lua > +share/openmw/resources/vfs/scripts/omw/console/menu.lua > share/openmw/resources/vfs/scripts/omw/console/player.lua > +share/openmw/resources/vfs/scripts/omw/crimes.lua > +share/openmw/resources/vfs/scripts/omw/input/ > +share/openmw/resources/vfs/scripts/omw/input/actionbindings.lua > +share/openmw/resources/vfs/scripts/omw/input/gamepadcontrols.lua > +share/openmw/resources/vfs/scripts/omw/input/playercontrols.lua > +share/openmw/resources/vfs/scripts/omw/input/settings.lua > +share/openmw/resources/vfs/scripts/omw/input/smoothmovement.lua > +share/openmw/resources/vfs/scripts/omw/mechanics/ > +share/openmw/resources/vfs/scripts/omw/mechanics/actorcontroller.lua > +share/openmw/resources/vfs/scripts/omw/mechanics/animationcontroller.lua > +share/openmw/resources/vfs/scripts/omw/mechanics/globalcontroller.lua > +share/openmw/resources/vfs/scripts/omw/mechanics/playercontroller.lua > +share/openmw/resources/vfs/scripts/omw/music/ > +share/openmw/resources/vfs/scripts/omw/music/actor.lua > +share/openmw/resources/vfs/scripts/omw/music/helpers.lua > +share/openmw/resources/vfs/scripts/omw/music/music.lua > +share/openmw/resources/vfs/scripts/omw/music/settings.lua > share/openmw/resources/vfs/scripts/omw/mwui/ > share/openmw/resources/vfs/scripts/omw/mwui/borders.lua > share/openmw/resources/vfs/scripts/omw/mwui/constants.lua > @@ -315,20 +421,56 @@ share/openmw/resources/vfs/scripts/omw/m > share/openmw/resources/vfs/scripts/omw/settings/ > share/openmw/resources/vfs/scripts/omw/settings/common.lua > share/openmw/resources/vfs/scripts/omw/settings/global.lua > +share/openmw/resources/vfs/scripts/omw/settings/menu.lua > share/openmw/resources/vfs/scripts/omw/settings/player.lua > -share/openmw/resources/vfs/scripts/omw/settings/render.lua > share/openmw/resources/vfs/scripts/omw/settings/renderers.lua > +share/openmw/resources/vfs/scripts/omw/skillhandlers.lua > +share/openmw/resources/vfs/scripts/omw/ui.lua > +share/openmw/resources/vfs/scripts/omw/usehandlers.lua > +share/openmw/resources/vfs/scripts/omw/worldeventhandlers.lua > share/openmw/resources/vfs/shaders/ > share/openmw/resources/vfs/shaders/adjustments.omwfx > share/openmw/resources/vfs/shaders/bloomlinear.omwfx > share/openmw/resources/vfs/shaders/debug.omwfx > +share/openmw/resources/vfs/shaders/internal_distortion.omwfx > share/openmw/resources/vfs/textures/ > +share/openmw/resources/vfs/textures/omw/ > +share/openmw/resources/vfs/textures/omw/water_nm.png > +share/openmw/resources/vfs/textures/omw_menu_icon_active.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_center_h.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_center_v.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_down.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_left.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_right.dds > share/openmw/resources/vfs/textures/omw_menu_scroll_up.dds > +share/openmw/resources/vfs/textures/omw_psx_button_circle.dds > +share/openmw/resources/vfs/textures/omw_psx_button_dpad.dds > +share/openmw/resources/vfs/textures/omw_psx_button_square.dds > +share/openmw/resources/vfs/textures/omw_psx_button_triangle.dds > +share/openmw/resources/vfs/textures/omw_psx_button_x.dds > +share/openmw/resources/vfs/textures/omw_steam_button_a.dds > +share/openmw/resources/vfs/textures/omw_steam_button_b.dds > +share/openmw/resources/vfs/textures/omw_steam_button_dpad.dds > +share/openmw/resources/vfs/textures/omw_steam_button_l1.dds > +share/openmw/resources/vfs/textures/omw_steam_button_l2.dds > +share/openmw/resources/vfs/textures/omw_steam_button_l3.dds > +share/openmw/resources/vfs/textures/omw_steam_button_lstick.dds > +share/openmw/resources/vfs/textures/omw_steam_button_menu.dds > +share/openmw/resources/vfs/textures/omw_steam_button_r1.dds > +share/openmw/resources/vfs/textures/omw_steam_button_r2.dds > +share/openmw/resources/vfs/textures/omw_steam_button_r3.dds > +share/openmw/resources/vfs/textures/omw_steam_button_rstick.dds > +share/openmw/resources/vfs/textures/omw_steam_button_view.dds > +share/openmw/resources/vfs/textures/omw_steam_button_x.dds > +share/openmw/resources/vfs/textures/omw_steam_button_y.dds > +share/openmw/resources/vfs/textures/omw_switch_button_l.dds > +share/openmw/resources/vfs/textures/omw_switch_button_r.dds > +share/openmw/resources/vfs/textures/omw_switch_button_zl.dds > +share/openmw/resources/vfs/textures/omw_switch_button_zr.dds > +share/openmw/resources/vfs/textures/omw_xbox_button_lb.dds > +share/openmw/resources/vfs/textures/omw_xbox_button_lt.dds > +share/openmw/resources/vfs/textures/omw_xbox_button_rb.dds > +share/openmw/resources/vfs/textures/omw_xbox_button_rt.dds > share/pixmaps/ > share/pixmaps/openmw-cs.png > share/pixmaps/openmw.png > >