Download raw body.
[update] games/openmw 0.51.0
On Sun, Jun 21, 2026 at 06:33:04PM +0200, Pascal Stumpf wrote:
> Update to OpenMW 0.51.0.
>
> Using the built-in TinyXML leads to numerous crashes, which I have not
> seen with the system one.
>
> The crash catcher will try to call egdb, then lldb in case of a crash for
> supplying additional information. I have not added a RUN_DEPENDS on
> devel/gdb intentionally.
>
> Works very well so far on:
> amdgpu0: RENOIR GC 9.3.0 7 CU rev 0x00
>
> Will commit in a few days if I don't hear negative reports.
Works fine here too on:
inteldrm0: msi, ALDERLAKE_P, gen 12
ok lraab@
>
> Index: Makefile
> ===================================================================
> RCS file: /home/cvs/ports/games/openmw/Makefile,v
> diff -u -p -r1.45 Makefile
> --- Makefile 9 Jun 2026 03:25:29 -0000 1.45
> +++ Makefile 21 Jun 2026 16:20:13 -0000
> @@ -4,14 +4,13 @@ ONLY_FOR_ARCHS = amd64 i386
>
> COMMENT = open source implementation of TES III: Morrowind
>
> -V = 0.50.0
> -REVISION = 2
> +V = 0.51.0
> GH_ACCOUNT = OpenMW
> GH_PROJECT = openmw
> GH_TAGNAME = openmw-$V
> DISTNAME = openmw-$V
>
> -DISTFILES.a = c393777d26d2ff6519ac23612abf8af42678c9dd.zip
> +DISTFILES.a = 03259f3287ff8330f0d66fcd98d022edddffaa97.zip
> DIST_SUBDIR = openmw
> SITES.a = https://github.com/recastnavigation/recastnavigation/archive/
>
> @@ -26,12 +25,13 @@ PERMIT_PACKAGE = Yes
>
> WANTLIB += ${COMPILER_LIBCXX} BulletCollision GL LinearMath MyGUIEngine
> 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 += 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
> +WANTLIB += Qt6Svg Qt6Widgets SDL2 avcodec avformat avutil boost_container-mt
> +WANTLIB += boost_iostreams-mt boost_program_options-mt boost_random-mt
> +WANTLIB += boost_regex-mt c collada-dom2.4-dp icudata icui18n
> +WANTLIB += icuuc luajit-5.1 lz4 m openal osg osgAnimation osgDB
> +WANTLIB += osgFX osgGA osgParticle osgShadow osgSim osgText osgUtil
> +WANTLIB += osgViewer sqlite3 swresample swscale tinyxml unshield
> +WANTLIB += yaml-cpp z
>
> MODULES = devel/cmake lang/lua x11/qt6 lang/clang
> MODCLANG_VERSION = 22
> @@ -52,6 +52,7 @@ LIB_DEPENDS = archivers/unshield \
> graphics/openscenegraph>=3.6.5p11 \
> lang/luajit \
> textproc/icu4c \
> + textproc/tinyxml \
> x11/qt6/qtsvg
> RUN_DEPENDS = devel/desktop-file-utils
>
> @@ -62,7 +63,8 @@ CONFIGURE_ARGS += -DBINDIR=${LOCALBASE}/
> -DOPENMW_RESOURCE_FILES="${LOCALBASE}/share/openmw/resources" \
> -DCMAKE_PREFIX_PATH="${LOCALBASE}/lib/qt5/cmake:${LOCALBASE}" \
> -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON \
> - -DCOLLADA_DOM_VERSION_MINOR=4
> + -DCOLLADA_DOM_VERSION_MINOR=4 \
> + -DUSE_SYSTEM_TINYXML=ON
>
> NO_TEST = Yes
>
> @@ -72,10 +74,11 @@ MODCMAKE_LDFLAGS = -L${X11BASE}/lib
>
> post-extract:
> mkdir ${WRKDIST}/extern/fetched
> - mv ${WRKDIR}/recastnavigation-c393777d26d2ff6519ac23612abf8af42678c9dd \
> + mv ${WRKDIR}/recastnavigation-03259f3287ff8330f0d66fcd98d022edddffaa97 \
> ${WRKDIST}/extern/fetched/recastnavigation
>
> post-patch:
> - ${SUBST_CMD} ${WRKSRC}/components/files/linuxpath.cpp
> + ${SUBST_CMD} ${WRKSRC}/components/files/linuxpath.cpp \
> + ${WRKSRC}/components/crashcatcher/crashcatcher.cpp
>
> .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /home/cvs/ports/games/openmw/distinfo,v
> diff -u -p -r1.14 distinfo
> --- distinfo 15 Nov 2025 17:26:09 -0000 1.14
> +++ distinfo 21 Jun 2026 09:03:15 -0000
> @@ -1,4 +1,4 @@
> -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
> +SHA256 (openmw/03259f3287ff8330f0d66fcd98d022edddffaa97.zip) = szfYzuvWZkHhqbnKLD2668WqaKOjDwlDXlxCDBd7LGI=
> +SHA256 (openmw/openmw-0.51.0.tar.gz) = emXmOlaH/w1R8xnr1Smp6Tdw/tPMVAggHeRYjRFA8UQ=
> +SIZE (openmw/03259f3287ff8330f0d66fcd98d022edddffaa97.zip) = 1446030
> +SIZE (openmw/openmw-0.51.0.tar.gz) = 6325148
> Index: patches/patch-components_crashcatcher_crashcatcher_cpp
> ===================================================================
> RCS file: patches/patch-components_crashcatcher_crashcatcher_cpp
> diff -N patches/patch-components_crashcatcher_crashcatcher_cpp
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-components_crashcatcher_crashcatcher_cpp 21 Jun 2026 12:43:05 -0000
> @@ -0,0 +1,33 @@
> +Index: components/crashcatcher/crashcatcher.cpp
> +--- components/crashcatcher/crashcatcher.cpp.orig
> ++++ components/crashcatcher/crashcatcher.cpp
> +@@ -217,7 +217,7 @@ namespace
> +
> + struct Gdb
> + {
> +- static constexpr char sName[] = "gdb";
> ++ static constexpr char sName[] = "egdb";
> + static constexpr char sScript[] = R"(shell echo ""
> + shell echo "* Loaded Libraries"
> + info sharedlibrary
> +@@ -236,7 +236,7 @@ thread apply all backtrace full 1000
> + detach
> + quit
> + )";
> +- static constexpr char sCommandTemplate[] = "gdb --pid %d --quiet --batch --command %s";
> ++ static constexpr char sCommandTemplate[] = "egdb --pid %d --quiet --batch --command %s";
> + };
> +
> + struct Lldb
> +@@ -472,6 +472,11 @@ static void getExecPath(char** argv)
> + if (argv[0][0] == '/')
> + {
> + snprintf(argv0, sizeof(argv0), "%s", argv[0]);
> ++ return;
> ++ }
> ++ else
> ++ {
> ++ snprintf(argv0, sizeof(argv0), "%s/%s", "${TRUEPREFIX}/bin", argv[0]);
> + return;
> + }
> +
> Index: patches/patch-components_files_linuxpath_cpp
> ===================================================================
> RCS file: /home/cvs/ports/games/openmw/patches/patch-components_files_linuxpath_cpp,v
> diff -u -p -r1.3 patch-components_files_linuxpath_cpp
> --- patches/patch-components_files_linuxpath_cpp 15 Nov 2025 21:39:12 -0000 1.3
> +++ patches/patch-components_files_linuxpath_cpp 21 Jun 2026 09:03:18 -0000
> @@ -1,7 +1,7 @@
> Index: components/files/linuxpath.cpp
> --- components/files/linuxpath.cpp.orig
> +++ components/files/linuxpath.cpp
> -@@ -75,6 +75,10 @@ namespace Files
> +@@ -77,6 +77,10 @@ namespace Files
>
> std::filesystem::path LinuxPath::getLocalPath() const
> {
> @@ -12,7 +12,7 @@ Index: components/files/linuxpath.cpp
> auto localPath = std::filesystem::current_path() / "";
>
> static const std::filesystem::path statusPaths[]
> -@@ -92,6 +96,7 @@ namespace Files
> +@@ -94,6 +98,7 @@ namespace Files
> }
>
> return localPath;
> Index: patches/patch-components_sceneutil_texturetype_hpp
> ===================================================================
> RCS file: patches/patch-components_sceneutil_texturetype_hpp
> diff -N patches/patch-components_sceneutil_texturetype_hpp
> --- patches/patch-components_sceneutil_texturetype_hpp 9 Jun 2026 03:25:29 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,14 +0,0 @@
> -https://gitlab.com/OpenMW/openmw/-/commit/307a131ca09f705b97f15ede1f702630cca6b396
> -
> -Index: components/sceneutil/texturetype.hpp
> ---- components/sceneutil/texturetype.hpp.orig
> -+++ components/sceneutil/texturetype.hpp
> -@@ -18,7 +18,7 @@ namespace SceneUtil
> - {
> - }
> -
> -- static const osg::StateAttribute::Type AttributeType = static_cast<osg::StateAttribute::Type>(69420);
> -+ static const osg::StateAttribute::Type AttributeType = static_cast<osg::StateAttribute::Type>(69);
> - META_StateAttribute(SceneUtil, TextureType, AttributeType)
> -
> - bool isTextureAttribute() const override { return true; }
> Index: patches/patch-extern_CMakeLists_txt
> ===================================================================
> RCS file: /home/cvs/ports/games/openmw/patches/patch-extern_CMakeLists_txt,v
> diff -u -p -r1.4 patch-extern_CMakeLists_txt
> --- patches/patch-extern_CMakeLists_txt 15 Nov 2025 17:26:09 -0000 1.4
> +++ patches/patch-extern_CMakeLists_txt 21 Jun 2026 09:03:18 -0000
> @@ -1,17 +1,17 @@
> Index: extern/CMakeLists.txt
> --- extern/CMakeLists.txt.orig
> +++ extern/CMakeLists.txt
> -@@ -173,13 +173,7 @@ if(NOT OPENMW_USE_SYSTEM_RECASTNAVIGATION)
> +@@ -159,13 +159,7 @@ if(NOT OPENMW_USE_SYSTEM_RECASTNAVIGATION)
> set(RECASTNAVIGATION_TESTS OFF CACHE BOOL "")
> set(RECASTNAVIGATION_EXAMPLES OFF CACHE BOOL "")
>
> - include(FetchContent)
> - FetchContent_Declare(recastnavigation
> -- URL https://github.com/recastnavigation/recastnavigation/archive/c393777d26d2ff6519ac23612abf8af42678c9dd.zip
> -- URL_HASH SHA512=48f20cee7a70c2f20f4c68bb74d5af11a1434be85294e37f5fe7b7aae820fbcdff4f35d3be286eaf6f9cbce0aed4201fcc090df409a5bd04aec5fd7c29b3ad94
> +- URL https://github.com/OpenMW/recastnavigation/archive/03259f3287ff8330f0d66fcd98d022edddffaa97.zip
> +- URL_HASH SHA512=63db2ac90904764d7f1466d3c95994ec51d777cddd870b70f8ef674c09ed166b3d16ffc4ac1d18d0eab865fda4bf51b6ea17049025b66a338d3cadd0f48dc712
> - SOURCE_DIR fetched/recastnavigation
> - )
> -- FetchContent_MakeAvailableExcludeFromAll(recastnavigation)
> +- FetchContent_MakeAvailable(recastnavigation)
> + add_subdirectory("fetched/recastnavigation")
> endif()
>
> Index: pkg/PLIST
> ===================================================================
> RCS file: /home/cvs/ports/games/openmw/pkg/PLIST,v
> diff -u -p -r1.14 PLIST
> --- pkg/PLIST 15 Nov 2025 17:26:09 -0000 1.14
> +++ pkg/PLIST 21 Jun 2026 09:39:29 -0000
> @@ -9,43 +9,6 @@
> @bin bin/openmw-launcher
> @bin bin/openmw-navmeshtool
> @bin bin/openmw-wizard
> -include/recastnavigation/
> -include/recastnavigation/DebugDraw.h
> -include/recastnavigation/DetourAlloc.h
> -include/recastnavigation/DetourAssert.h
> -include/recastnavigation/DetourCommon.h
> -include/recastnavigation/DetourCrowd.h
> -include/recastnavigation/DetourDebugDraw.h
> -include/recastnavigation/DetourLocalBoundary.h
> -include/recastnavigation/DetourMath.h
> -include/recastnavigation/DetourNavMesh.h
> -include/recastnavigation/DetourNavMeshBuilder.h
> -include/recastnavigation/DetourNavMeshQuery.h
> -include/recastnavigation/DetourNode.h
> -include/recastnavigation/DetourObstacleAvoidance.h
> -include/recastnavigation/DetourPathCorridor.h
> -include/recastnavigation/DetourPathQueue.h
> -include/recastnavigation/DetourProximityGrid.h
> -include/recastnavigation/DetourStatus.h
> -include/recastnavigation/DetourTileCache.h
> -include/recastnavigation/DetourTileCacheBuilder.h
> -include/recastnavigation/Recast.h
> -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}
> @@ -74,6 +37,7 @@ share/openmw/resources/lua_api/openmw/am
> 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/content.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
> @@ -121,6 +85,8 @@ share/openmw/resources/shaders/compatibi
> 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/outline.frag
> +share/openmw/resources/shaders/compatibility/outline.vert
> share/openmw/resources/shaders/compatibility/ripples_blobber.frag
> share/openmw/resources/shaders/compatibility/ripples_simulate.frag
> share/openmw/resources/shaders/compatibility/shadowcasting.frag
> @@ -131,6 +97,8 @@ share/openmw/resources/shaders/compatibi
> 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/terrain_composite.frag
> +share/openmw/resources/shaders/compatibility/terrain_composite.vert
> share/openmw/resources/shaders/compatibility/vertexcolors.glsl
> share/openmw/resources/shaders/compatibility/water.frag
> share/openmw/resources/shaders/compatibility/water.vert
> @@ -171,18 +139,21 @@ share/openmw/resources/shaders/lib/water
> 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_bg.qm
> 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_bg.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_bg.qm
> share/openmw/resources/translations/wizard_de.qm
> share/openmw/resources/translations/wizard_en.qm
> share/openmw/resources/translations/wizard_fr.qm
> @@ -192,6 +163,7 @@ share/openmw/resources/translations/wiza
> share/openmw/resources/version
> share/openmw/resources/vfs/
> share/openmw/resources/vfs-mw/
> +share/openmw/resources/vfs-mw/builtin.omwscripts
> share/openmw/resources/vfs-mw/l10n/
> share/openmw/resources/vfs-mw/l10n/Calendar/
> share/openmw/resources/vfs-mw/l10n/Calendar/de.yaml
> @@ -203,10 +175,26 @@ share/openmw/resources/vfs-mw/l10n/Calen
> 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/Mechanics/
> +share/openmw/resources/vfs-mw/l10n/Mechanics/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-mw/scripts/
> +share/openmw/resources/vfs-mw/scripts/omw/
> +share/openmw/resources/vfs-mw/scripts/omw/cellhandlers.lua
> +share/openmw/resources/vfs-mw/scripts/omw/combat/
> +share/openmw/resources/vfs-mw/scripts/omw/combat/common.lua
> +share/openmw/resources/vfs-mw/scripts/omw/combat/global.lua
> +share/openmw/resources/vfs-mw/scripts/omw/combat/local.lua
> +share/openmw/resources/vfs-mw/scripts/omw/combat/menu.lua
> +share/openmw/resources/vfs-mw/scripts/omw/esmfallbacks.lua
> +share/openmw/resources/vfs-mw/scripts/omw/music/
> +share/openmw/resources/vfs-mw/scripts/omw/music/helpers.lua
> +share/openmw/resources/vfs-mw/scripts/omw/music/music.lua
> +share/openmw/resources/vfs-mw/scripts/omw/music/settings.lua
> +share/openmw/resources/vfs-mw/scripts/omw/playerskillhandlers.lua
> share/openmw/resources/vfs/animations/
> share/openmw/resources/vfs/animations/animation-config.yaml
> share/openmw/resources/vfs/builtin.omwscripts
> @@ -382,12 +370,8 @@ 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/combat/interface.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
> @@ -407,9 +391,6 @@ share/openmw/resources/vfs/scripts/omw/m
> 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
> @@ -436,6 +417,7 @@ share/openmw/resources/vfs/shaders/inter
> 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_map_color_palette.dds
> 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
>
[update] games/openmw 0.51.0