Thomas Frohwein <tfrohw...@fastmail.com> writes:

> On Sun, Jun 21, 2020 at 01:42:56PM +0300, Timo Myyrä wrote:
>
>> Hi,
>> 
>> OpenMW got a new release:
>> https://openmw.org/2020/openmw-0-46-0-released/
>> 
>> I've been playing with this on amd64, seems to work so far.
>
> Compiles fine; runs on a few minutes of playtesting, but performance on
> this Ryzen 7 2700 with Radeon HD6870 still leaves a bit to be desired,
> but that was similar before. Feels like 20-30 FPS on 1080p with details
> on the higher side.
>
> It looks like some missing WANTLIBs are picked up by make
> port-lib-depends-check:
>
> Missing: boost_iostreams-mt.10 from boost-1.66.0p11 
> (/usr/local/bin/openmw-wizard)
> Missing: osgShadow.1 from openscenegraph-3.4.1p6 
> (/usr/local/bin/openmw-wizard)
> WANTLIB += boost_iostreams-mt osgShadow
>
> Would be good if that could be added or clarified by Pascal. With that
> ok thfr@
>
>> 
>> timo
>> 
>> Index: Makefile
>> ===================================================================
>> RCS file: /cvs/ports/games/openmw/Makefile,v
>> retrieving revision 1.23
>> diff -u -p -u -p -r1.23 Makefile
>> --- Makefile 24 May 2020 21:11:00 -0000      1.23
>> +++ Makefile 21 Jun 2020 10:39:50 -0000
>> @@ -4,12 +4,11 @@ ONLY_FOR_ARCHS =   amd64 i386
>>  
>>  COMMENT =           open source implementation of TES III: Morrowind
>>  
>> -V =                 0.45.0
>> +V =                 0.46.0
>>  GH_ACCOUNT =                OpenMW
>>  GH_PROJECT =                openmw
>>  GH_TAGNAME =                openmw-$V
>>  DISTNAME =          openmw-$V
>> -REVISION =          0
>>  
>>  CATEGORIES =                games
>>  
>> Index: distinfo
>> ===================================================================
>> RCS file: /cvs/ports/games/openmw/distinfo,v
>> retrieving revision 1.9
>> diff -u -p -u -p -r1.9 distinfo
>> --- distinfo 25 Nov 2019 10:21:25 -0000      1.9
>> +++ distinfo 21 Jun 2020 10:39:50 -0000
>> @@ -1,2 +1,2 @@
>> -SHA256 (openmw-0.45.0.tar.gz) = tjz5cfQG718oAZ9l6eK9lkGiJ0We3kXRR1YpF/Z+HGQ=
>> -SIZE (openmw-0.45.0.tar.gz) = 4711103
>> +SHA256 (openmw-0.46.0.tar.gz) = B6NajxX2f1qnIQwqMHpttWYKm2H+NJg8NbFyyGca/Vg=
>> +SIZE (openmw-0.46.0.tar.gz) = 5155004
>> Index: patches/patch-components_crashcatcher_crashcatcher_cpp
>> ===================================================================
>> RCS file: patches/patch-components_crashcatcher_crashcatcher_cpp
>> diff -N patches/patch-components_crashcatcher_crashcatcher_cpp
>> --- patches/patch-components_crashcatcher_crashcatcher_cpp   25 Nov 2019 
>> 10:21:25 -0000      1.1
>> +++ /dev/null        1 Jan 1970 00:00:00 -0000
>> @@ -1,152 +0,0 @@
>> -$OpenBSD: patch-components_crashcatcher_crashcatcher_cpp,v 1.1 2019/11/25 
>> 10:21:25 solene Exp $
>> -
>> -Fixes game failing to start.
>> -Upstream commit fe69e5507df97d84d3cb29d760da78f64e41cc07
>> -
>> -Index: components/crashcatcher/crashcatcher.cpp
>> ---- components/crashcatcher/crashcatcher.cpp.orig
>> -+++ components/crashcatcher/crashcatcher.cpp
>> -@@ -17,6 +17,7 @@
>> - #include <components/debug/debuglog.hpp>
>> - 
>> - #include <boost/filesystem/fstream.hpp>
>> -+#include <boost/filesystem/operations.hpp>
>> - 
>> - namespace bfs = boost::filesystem;
>> - 
>> -@@ -34,9 +35,13 @@ namespace bfs = boost::filesystem;
>> - 
>> - #if defined(__APPLE__)
>> - #include <sys/sysctl.h>
>> -+#include <libproc.h>
>> - #endif
>> - 
>> --#define UNUSED(x) (void)(x)
>> -+#if defined(__FreeBSD__)
>> -+#include <sys/sysctl.h>
>> -+#include <sys/user.h>
>> -+#endif
>> - 
>> - static const char crash_switch[] = "--cc-handle-crash";
>> - 
>> -@@ -413,6 +418,39 @@ static void crash_handler(const char *logfile)
>> -     exit(0);
>> - }
>> - 
>> -+static void getExecPath(char **argv)
>> -+{
>> -+#if defined (__FreeBSD__)
>> -+    int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
>> -+    size_t size = sizeof(argv0);
>> -+
>> -+    if (sysctl(mib, 4, argv0, &size, nullptr, 0) == 0)
>> -+        return;
>> -+#endif
>> -+
>> -+#if defined (__APPLE__)
>> -+    if(proc_pidpath(getpid(), argv0, sizeof(argv0)) > 0)
>> -+        return;
>> -+#endif
>> -+    int cwdlen;
>> -+    const char *statusPaths[] = {"/proc/self/exe", "/proc/self/file", 
>> "/proc/curproc/exe", "/proc/curproc/file"};
>> -+    memset(argv0, 0, sizeof(argv0));
>> -+
>> -+    for(const char *path : statusPaths)
>> -+    {
>> -+        if (readlink(path, argv0, sizeof(argv0)) != -1)
>> -+            return;
>> -+    }
>> -+
>> -+    if(argv[0][0] == '/')
>> -+        snprintf(argv0, sizeof(argv0), "%s", argv[0]);
>> -+    else if (getcwd(argv0, sizeof(argv0)) != NULL)
>> -+    {
>> -+        cwdlen = strlen(argv0);
>> -+        snprintf(argv0+cwdlen, sizeof(argv0)-cwdlen, "/%s", argv[0]);
>> -+    }
>> -+}
>> -+
>> - int crashCatcherInstallHandlers(int argc, char **argv, int num_signals, 
>> int *signals, const char *logfile, int (*user_info)(char*, char*))
>> - {
>> -     struct sigaction sa;
>> -@@ -424,20 +462,7 @@ int crashCatcherInstallHandlers(int argc, char **argv,
>> - 
>> -     cc_user_info = user_info;
>> - 
>> --    if(argv[0][0] == '/')
>> --        snprintf(argv0, sizeof(argv0), "%s", argv[0]);
>> --    else
>> --    {
>> --        {
>> --            /* we don't want to disable "ignoring return value" warnings, 
>> so we make
>> --             * a special exception here. */
>> --            char * unused;
>> --            unused = getcwd(argv0, sizeof(argv0));
>> --            UNUSED(unused);
>> --        }
>> --        retval = strlen(argv0);
>> --        snprintf(argv0+retval, sizeof(argv0)-retval, "/%s", argv[0]);
>> --    }
>> -+    getExecPath(argv);
>> - 
>> -     /* Set an alternate signal stack so SIGSEGVs caused by stack overflows
>> -      * still run */
>> -@@ -467,20 +492,24 @@ int crashCatcherInstallHandlers(int argc, char **argv,
>> - 
>> - static bool is_debugger_present()
>> - {
>> --#if !defined (__APPLE__)
>> --    bfs::ifstream file((bfs::path("/proc/self/status")));
>> --    while (!file.eof())
>> -+#if defined (__linux__)
>> -+    bfs::path procstatus = bfs::path("/proc/self/status");
>> -+    if (bfs::exists(procstatus))
>> -     {
>> --        std::string word;
>> --        file >> word;
>> --        if (word == "TracerPid:")
>> -+        bfs::ifstream file((procstatus));
>> -+        while (!file.eof())
>> -         {
>> -+            std::string word;
>> -             file >> word;
>> --            return word != "0";
>> -+            if (word == "TracerPid:")
>> -+            {
>> -+                file >> word;
>> -+                return word != "0";
>> -+            }
>> -         }
>> -     }
>> -     return false;
>> --#else
>> -+#elif defined(__APPLE__)
>> -     int junk;
>> -     int mib[4];
>> -     struct kinfo_proc info;
>> -@@ -508,12 +537,24 @@ static bool is_debugger_present()
>> -     // We're being debugged if the P_TRACED flag is set.
>> - 
>> -     return (info.kp_proc.p_flag & P_TRACED) != 0;
>> -+#elif defined(__FreeBSD__)
>> -+    struct kinfo_proc info;
>> -+    size_t size = sizeof(info);
>> -+    int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid() };
>> -+
>> -+    if (sysctl(mib, sizeof(mib) / sizeof(*mib), &info, &size, nullptr, 0) 
>> == 0)
>> -+        return (info.ki_flag & P_TRACED) != 0;
>> -+    else
>> -+        perror("Failed to retrieve process info");
>> -+    return false;
>> -+#else
>> -+    return false;
>> - #endif
>> - }
>> - 
>> - void crashCatcherInstall(int argc, char **argv, const std::string 
>> &crashLogPath)
>> - {
>> --    if ((argc == 2 && strcmp(argv[1], "--cc-handle-crash") == 0) || 
>> !is_debugger_present())
>> -+    if ((argc == 2 && strcmp(argv[1], crash_switch) == 0) || 
>> !is_debugger_present())
>> -     {
>> -         int s[5] = { SIGSEGV, SIGILL, SIGFPE, SIGBUS, SIGABRT };
>> -         if (crashCatcherInstallHandlers(argc, argv, 5, s, 
>> crashLogPath.c_str(), nullptr) == -1)
>> Index: pkg/PLIST
>> ===================================================================
>> RCS file: /cvs/ports/games/openmw/pkg/PLIST,v
>> retrieving revision 1.9
>> diff -u -p -u -p -r1.9 PLIST
>> --- pkg/PLIST        25 Nov 2019 10:21:25 -0000      1.9
>> +++ pkg/PLIST        21 Jun 2020 10:39:50 -0000
>> @@ -1,23 +1,20 @@
>>  @comment $OpenBSD: PLIST,v 1.9 2019/11/25 10:21:25 solene Exp $
>>  @bin bin/bsatool
>>  @bin bin/esmtool
>> +@bin bin/niftest
>>  @bin bin/openmw
>>  @bin bin/openmw-cs
>>  @bin bin/openmw-essimporter
>>  @bin bin/openmw-iniimporter
>>  @bin bin/openmw-launcher
>>  @bin bin/openmw-wizard
>> -share/applications/openmw-cs.desktop
>> -share/applications/openmw.desktop
>> +share/applications/org.openmw.cs.desktop
>> +share/applications/org.openmw.launcher.desktop
>>  share/doc/pkg-readmes/${PKGSTEM}
>>  share/examples/openmw/
>>  @sample ${SYSCONFDIR}/openmw/
>>  share/examples/openmw/gamecontrollerdb.txt
>>  @sample ${SYSCONFDIR}/openmw/gamecontrollerdb.txt
>> -share/examples/openmw/gamecontrollerdb_204.txt
>> -@sample ${SYSCONFDIR}/openmw/gamecontrollerdb_204.txt
>> -share/examples/openmw/gamecontrollerdb_205.txt
>> -@sample ${SYSCONFDIR}/openmw/gamecontrollerdb_205.txt
>>  share/examples/openmw/openmw-cs.cfg
>>  @sample ${SYSCONFDIR}/openmw/openmw-cs.cfg
>>  share/examples/openmw/openmw.cfg
>> @@ -129,12 +126,24 @@ share/openmw/resources/shaders/objects_v
>>  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/terrain_fragment.glsl
>>  share/openmw/resources/shaders/terrain_vertex.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/version
>> +share/openmw/resources/vfs/
>> +share/openmw/resources/vfs/textures/
>> +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/pixmaps/
>>  share/pixmaps/openmw-cs.png
>>  share/pixmaps/openmw.png
>> 

ok, revised diff fixing the WANTLIB:

Index: Makefile
===================================================================
RCS file: /cvs/ports/games/openmw/Makefile,v
retrieving revision 1.23
diff -u -p -u -p -r1.23 Makefile
--- Makefile    24 May 2020 21:11:00 -0000      1.23
+++ Makefile    22 Jun 2020 08:03:33 -0000
@@ -4,12 +4,11 @@ ONLY_FOR_ARCHS =      amd64 i386
 
 COMMENT =              open source implementation of TES III: Morrowind
 
-V =                    0.45.0
+V =                    0.46.0
 GH_ACCOUNT =           OpenMW
 GH_PROJECT =           openmw
 GH_TAGNAME =           openmw-$V
 DISTNAME =             openmw-$V
-REVISION =             0
 
 CATEGORIES =           games
 
@@ -22,9 +21,9 @@ PERMIT_PACKAGE =      Yes
 
 WANTLIB += ${COMPILER_LIBCXX} BulletCollision GL LinearMath MyGUIEngine
 WANTLIB += OpenThreads Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5Widgets
-WANTLIB += SDL2 avcodec avformat avutil boost_filesystem-mt 
boost_program_options-mt
-WANTLIB += boost_system-mt c m openal osg osgDB osgFX
-WANTLIB += osgGA osgParticle osgText osgUtil osgViewer swresample
+WANTLIB += SDL2 avcodec avformat avutil boost_filesystem-mt boost_iostreams-mt 
+WANTLIB += boost_program_options-mt boost_system-mt c m openal osg osgDB osgFX
+WANTLIB += osgGA osgParticle osgShadow osgText osgUtil osgViewer swresample
 WANTLIB += swscale unshield
 
 MODULES =              devel/cmake x11/qt5
Index: distinfo
===================================================================
RCS file: /cvs/ports/games/openmw/distinfo,v
retrieving revision 1.9
diff -u -p -u -p -r1.9 distinfo
--- distinfo    25 Nov 2019 10:21:25 -0000      1.9
+++ distinfo    22 Jun 2020 08:03:33 -0000
@@ -1,2 +1,2 @@
-SHA256 (openmw-0.45.0.tar.gz) = tjz5cfQG718oAZ9l6eK9lkGiJ0We3kXRR1YpF/Z+HGQ=
-SIZE (openmw-0.45.0.tar.gz) = 4711103
+SHA256 (openmw-0.46.0.tar.gz) = B6NajxX2f1qnIQwqMHpttWYKm2H+NJg8NbFyyGca/Vg=
+SIZE (openmw-0.46.0.tar.gz) = 5155004
Index: patches/patch-components_crashcatcher_crashcatcher_cpp
===================================================================
RCS file: patches/patch-components_crashcatcher_crashcatcher_cpp
diff -N patches/patch-components_crashcatcher_crashcatcher_cpp
--- patches/patch-components_crashcatcher_crashcatcher_cpp      25 Nov 2019 
10:21:25 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,152 +0,0 @@
-$OpenBSD: patch-components_crashcatcher_crashcatcher_cpp,v 1.1 2019/11/25 
10:21:25 solene Exp $
-
-Fixes game failing to start.
-Upstream commit fe69e5507df97d84d3cb29d760da78f64e41cc07
-
-Index: components/crashcatcher/crashcatcher.cpp
---- components/crashcatcher/crashcatcher.cpp.orig
-+++ components/crashcatcher/crashcatcher.cpp
-@@ -17,6 +17,7 @@
- #include <components/debug/debuglog.hpp>
- 
- #include <boost/filesystem/fstream.hpp>
-+#include <boost/filesystem/operations.hpp>
- 
- namespace bfs = boost::filesystem;
- 
-@@ -34,9 +35,13 @@ namespace bfs = boost::filesystem;
- 
- #if defined(__APPLE__)
- #include <sys/sysctl.h>
-+#include <libproc.h>
- #endif
- 
--#define UNUSED(x) (void)(x)
-+#if defined(__FreeBSD__)
-+#include <sys/sysctl.h>
-+#include <sys/user.h>
-+#endif
- 
- static const char crash_switch[] = "--cc-handle-crash";
- 
-@@ -413,6 +418,39 @@ static void crash_handler(const char *logfile)
-     exit(0);
- }
- 
-+static void getExecPath(char **argv)
-+{
-+#if defined (__FreeBSD__)
-+    int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
-+    size_t size = sizeof(argv0);
-+
-+    if (sysctl(mib, 4, argv0, &size, nullptr, 0) == 0)
-+        return;
-+#endif
-+
-+#if defined (__APPLE__)
-+    if(proc_pidpath(getpid(), argv0, sizeof(argv0)) > 0)
-+        return;
-+#endif
-+    int cwdlen;
-+    const char *statusPaths[] = {"/proc/self/exe", "/proc/self/file", 
"/proc/curproc/exe", "/proc/curproc/file"};
-+    memset(argv0, 0, sizeof(argv0));
-+
-+    for(const char *path : statusPaths)
-+    {
-+        if (readlink(path, argv0, sizeof(argv0)) != -1)
-+            return;
-+    }
-+
-+    if(argv[0][0] == '/')
-+        snprintf(argv0, sizeof(argv0), "%s", argv[0]);
-+    else if (getcwd(argv0, sizeof(argv0)) != NULL)
-+    {
-+        cwdlen = strlen(argv0);
-+        snprintf(argv0+cwdlen, sizeof(argv0)-cwdlen, "/%s", argv[0]);
-+    }
-+}
-+
- int crashCatcherInstallHandlers(int argc, char **argv, int num_signals, int 
*signals, const char *logfile, int (*user_info)(char*, char*))
- {
-     struct sigaction sa;
-@@ -424,20 +462,7 @@ int crashCatcherInstallHandlers(int argc, char **argv,
- 
-     cc_user_info = user_info;
- 
--    if(argv[0][0] == '/')
--        snprintf(argv0, sizeof(argv0), "%s", argv[0]);
--    else
--    {
--        {
--            /* we don't want to disable "ignoring return value" warnings, so 
we make
--             * a special exception here. */
--            char * unused;
--            unused = getcwd(argv0, sizeof(argv0));
--            UNUSED(unused);
--        }
--        retval = strlen(argv0);
--        snprintf(argv0+retval, sizeof(argv0)-retval, "/%s", argv[0]);
--    }
-+    getExecPath(argv);
- 
-     /* Set an alternate signal stack so SIGSEGVs caused by stack overflows
-      * still run */
-@@ -467,20 +492,24 @@ int crashCatcherInstallHandlers(int argc, char **argv,
- 
- static bool is_debugger_present()
- {
--#if !defined (__APPLE__)
--    bfs::ifstream file((bfs::path("/proc/self/status")));
--    while (!file.eof())
-+#if defined (__linux__)
-+    bfs::path procstatus = bfs::path("/proc/self/status");
-+    if (bfs::exists(procstatus))
-     {
--        std::string word;
--        file >> word;
--        if (word == "TracerPid:")
-+        bfs::ifstream file((procstatus));
-+        while (!file.eof())
-         {
-+            std::string word;
-             file >> word;
--            return word != "0";
-+            if (word == "TracerPid:")
-+            {
-+                file >> word;
-+                return word != "0";
-+            }
-         }
-     }
-     return false;
--#else
-+#elif defined(__APPLE__)
-     int junk;
-     int mib[4];
-     struct kinfo_proc info;
-@@ -508,12 +537,24 @@ static bool is_debugger_present()
-     // We're being debugged if the P_TRACED flag is set.
- 
-     return (info.kp_proc.p_flag & P_TRACED) != 0;
-+#elif defined(__FreeBSD__)
-+    struct kinfo_proc info;
-+    size_t size = sizeof(info);
-+    int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid() };
-+
-+    if (sysctl(mib, sizeof(mib) / sizeof(*mib), &info, &size, nullptr, 0) == 
0)
-+        return (info.ki_flag & P_TRACED) != 0;
-+    else
-+        perror("Failed to retrieve process info");
-+    return false;
-+#else
-+    return false;
- #endif
- }
- 
- void crashCatcherInstall(int argc, char **argv, const std::string 
&crashLogPath)
- {
--    if ((argc == 2 && strcmp(argv[1], "--cc-handle-crash") == 0) || 
!is_debugger_present())
-+    if ((argc == 2 && strcmp(argv[1], crash_switch) == 0) || 
!is_debugger_present())
-     {
-         int s[5] = { SIGSEGV, SIGILL, SIGFPE, SIGBUS, SIGABRT };
-         if (crashCatcherInstallHandlers(argc, argv, 5, s, 
crashLogPath.c_str(), nullptr) == -1)
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/games/openmw/pkg/PLIST,v
retrieving revision 1.9
diff -u -p -u -p -r1.9 PLIST
--- pkg/PLIST   25 Nov 2019 10:21:25 -0000      1.9
+++ pkg/PLIST   22 Jun 2020 08:03:33 -0000
@@ -1,23 +1,20 @@
 @comment $OpenBSD: PLIST,v 1.9 2019/11/25 10:21:25 solene Exp $
 @bin bin/bsatool
 @bin bin/esmtool
+@bin bin/niftest
 @bin bin/openmw
 @bin bin/openmw-cs
 @bin bin/openmw-essimporter
 @bin bin/openmw-iniimporter
 @bin bin/openmw-launcher
 @bin bin/openmw-wizard
-share/applications/openmw-cs.desktop
-share/applications/openmw.desktop
+share/applications/org.openmw.cs.desktop
+share/applications/org.openmw.launcher.desktop
 share/doc/pkg-readmes/${PKGSTEM}
 share/examples/openmw/
 @sample ${SYSCONFDIR}/openmw/
 share/examples/openmw/gamecontrollerdb.txt
 @sample ${SYSCONFDIR}/openmw/gamecontrollerdb.txt
-share/examples/openmw/gamecontrollerdb_204.txt
-@sample ${SYSCONFDIR}/openmw/gamecontrollerdb_204.txt
-share/examples/openmw/gamecontrollerdb_205.txt
-@sample ${SYSCONFDIR}/openmw/gamecontrollerdb_205.txt
 share/examples/openmw/openmw-cs.cfg
 @sample ${SYSCONFDIR}/openmw/openmw-cs.cfg
 share/examples/openmw/openmw.cfg
@@ -129,12 +126,24 @@ share/openmw/resources/shaders/objects_v
 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/terrain_fragment.glsl
 share/openmw/resources/shaders/terrain_vertex.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/version
+share/openmw/resources/vfs/
+share/openmw/resources/vfs/textures/
+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/pixmaps/
 share/pixmaps/openmw-cs.png
 share/pixmaps/openmw.png

Reply via email to