Download raw body.
[update] games/openmw to 0.50.0
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.
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<size_type>(~0);
+@@ -163,10 +163,10 @@ namespace MyGUI
+ static const size_type npos = std::numeric_limits<size_t>::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 <bsd.port.mk>
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 <components/debug/debuglog.hpp>
- #include <components/vfs/manager.hpp>
-
-+#if FFMPEG_5_OR_GREATER
-+#include <libavutil/channel_layout.h>
-+#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<char> &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<char*>(mFrameData[0]);
- output.insert(output.end(), inbuf, inbuf+got);
-@@ -428,7 +503,11 @@ void FFmpeg_Decoder::readAll(std::vector<char> &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 <list>
-+
- #include <boost/filesystem/path.hpp>
-
- #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 <components/files/constrainedfilestream.hpp>
-
- #include <cassert>
-+#include <algorithm>
-
- #include <boost/filesystem/path.hpp>
- #include <boost/filesystem/fstream.hpp>
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<signed char> getTranslationArray(FromType sourceEncoding)
-+ std::span<const signed char> 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 <string>
- #include <cstring>
-+#include <span>
- #include <vector>
- #include <string_view>
-
-@@ -46,7 +47,7 @@ namespace ToUTF8
- inline std::pair<std::size_t, bool> 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<signed char> mTranslationArray;
-+ const std::span<const signed char> 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 <libavutil/channel_layout.h>
-+#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<size_t>(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<osg::Texture2D> 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<T, Args&&...>::value, "T must be constructible with Args");
-
- *this = nullopt;
-- this->construct(std::forward<Args>(args)...);
-+ new (static_cast<void*>(this)) optional(std::in_place, std::forward<Args>(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
[update] games/openmw to 0.50.0