summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Sokolov <alexey+gentoo@asokolov.org>2021-12-06 11:40:28 +0100
committerDavid Seifert <soap@gentoo.org>2021-12-06 11:40:28 +0100
commit7d9a09fdbbac2bcaaeb79ce9cc4d852f7f656101 (patch)
tree057e5d7d21b6665e5275fc4b9606cbeb84fff460 /games-engines
parentdev-ml/merlin-extend: use dune instead of findlib (diff)
downloadgentoo-7d9a09fdbbac2bcaaeb79ce9cc4d852f7f656101.tar.gz
gentoo-7d9a09fdbbac2bcaaeb79ce9cc4d852f7f656101.tar.bz2
gentoo-7d9a09fdbbac2bcaaeb79ce9cc4d852f7f656101.zip
games-engines/openmw: drop old
Closes: https://github.com/gentoo/gentoo/pull/23194 Closes: https://bugs.gentoo.org/794538 Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org> Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'games-engines')
-rw-r--r--games-engines/openmw/Manifest2
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-boost-1.77.patch10
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-fix-cast.patch214
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-floattest2.patch139
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-gcc11.patch36
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-missing-include.patch19
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-mygui-license.patch16
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-nifbullet-test.patch335
-rw-r--r--games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch24
-rw-r--r--games-engines/openmw/openmw-0.46.0-r2.ebuild163
10 files changed, 0 insertions, 958 deletions
diff --git a/games-engines/openmw/Manifest b/games-engines/openmw/Manifest
index 088a9b8fd26c..607fa30988f1 100644
--- a/games-engines/openmw/Manifest
+++ b/games-engines/openmw/Manifest
@@ -1,3 +1 @@
-DIST openmw-0.46.0-floattest.patch 43168 BLAKE2B 060b529fd4cd01f0fc723bb5a00a256b9c1ae4413c7b22581467cce75416e01041c3af22f0215ad9b1c475965a988065e0860c01c1e71d97454b022eec4779ea SHA512 0e165417e9ae047231fdc27b62251b33867f3782c1753f81705c886d6d3a433c8bbc3b4653a2555bc644bad11db9769d4bc2abcc84ca3ab23fabb6b80347bc32
-DIST openmw-0.46.0.tar.gz 5155004 BLAKE2B 8ad94a7fffe5a0739c56c778efe2ec17ef66c312a7fe5caf015cf3cad2bc17d2abe8cdc3f4134049a32fe55c4f4b3f72678d2d0ce1037fd02f6ac753b9d89b2c SHA512 da384aead300552817c0d0ce03515a5ccc95dcab4e02d4c1dd0d6c5f1b01ee01209bbaea74e2d12021e3465e49b051823bb018de39675c5a22c6892893624486
DIST openmw-0.47.0.tar.gz 5156857 BLAKE2B 40e8b9670423259fa0cc03ef000c17ebe06d1d58c2527b51b25cea3b54978b8a698984371eac14ff212f9550253ab17d41b83d37426371f12f5ce2d30b240d3d SHA512 517e650d0054cdba8d38de05ed3975b0fcf8de32fda59c8df7c34b973e5390efa0dd9ec79babdfdaa79dee7aa8a75009776f62fad91b9aa9aa28016c5032652b
diff --git a/games-engines/openmw/files/openmw-0.46.0-boost-1.77.patch b/games-engines/openmw/files/openmw-0.46.0-boost-1.77.patch
deleted file mode 100644
index 708fd9e9f52f..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-boost-1.77.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-https://bugs.gentoo.org/808763
-
---- a/components/vfs/filesystemarchive.cpp
-+++ b/components/vfs/filesystemarchive.cpp
-@@ -1,4 +1,5 @@
- #include "filesystemarchive.hpp"
-
-+#include <algorithm>
- #include <boost/filesystem.hpp>
-
diff --git a/games-engines/openmw/files/openmw-0.46.0-fix-cast.patch b/games-engines/openmw/files/openmw-0.46.0-fix-cast.patch
deleted file mode 100644
index f6e82cb3a2c9..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-fix-cast.patch
+++ /dev/null
@@ -1,214 +0,0 @@
-Fixes build on ~arch system, patch from upstream, to be dropped for 0.47
-
-From 208a50340db5506dded60c05272ce9692773baa9 Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Mon, 13 Apr 2020 20:45:07 +0200
-Subject: [PATCH] Specialize DetourNavigator::ObjectId ctor for pointers
-
-To fix msvc error:
-components\detournavigator\objectid.hpp(14,13): error C2440: 'reinterpret_cast': cannot convert from 'const T' to 'size_t'
- with
- [
- T=unsigned long
- ]
-diff --git a/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp b/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp
-index 5275d9119e..e44ae48786 100644
---- a/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp
-+++ b/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp
-@@ -61,15 +61,15 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- EXPECT_TRUE(manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground));
-+ EXPECT_TRUE(manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground));
- }
-
- TEST_F(DetourNavigatorTileCachedRecastMeshManagerTest, add_object_for_existing_object_should_return_false)
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-- EXPECT_FALSE(manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground));
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ EXPECT_FALSE(manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground));
- }
-
- TEST_F(DetourNavigatorTileCachedRecastMeshManagerTest, update_object_for_changed_object_should_return_changed_tiles)
-@@ -77,9 +77,9 @@ namespace
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0));
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground);
- EXPECT_THAT(
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground),
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground),
- ElementsAre(TilePosition(-1, -1), TilePosition(-1, 0), TilePosition(0, -1), TilePosition(0, 0),
- TilePosition(1, -1), TilePosition(1, 0))
- );
-@@ -89,9 +89,9 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground),
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground),
- std::vector<TilePosition>()
- );
- }
-@@ -100,7 +100,7 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr);
-@@ -111,7 +111,7 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getMesh(TilePosition(1, 0)), nullptr);
- }
-
-@@ -121,13 +121,13 @@ namespace
- const btBoxShape boxShape(btVector3(20, 20, 100));
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0));
-
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground);
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(1, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(1, -1)), nullptr);
-
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr);
-@@ -140,11 +140,11 @@ namespace
- const btBoxShape boxShape(btVector3(20, 20, 100));
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0));
-
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground);
- EXPECT_EQ(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_EQ(manager.getMesh(TilePosition(-1, 0)), nullptr);
-
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getMesh(TilePosition(1, 0)), nullptr);
- EXPECT_EQ(manager.getMesh(TilePosition(1, -1)), nullptr);
- }
-@@ -153,8 +153,8 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-- manager.removeObject(ObjectId(1ul));
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.removeObject(ObjectId(&boxShape));
- EXPECT_EQ(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_EQ(manager.getMesh(TilePosition(-1, 0)), nullptr);
- EXPECT_EQ(manager.getMesh(TilePosition(0, -1)), nullptr);
-@@ -166,13 +166,13 @@ namespace
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, 0)), nullptr);
-
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr);
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr);
-@@ -184,7 +184,7 @@ namespace
- TileCachedRecastMeshManager manager(mSettings);
- const auto initialRevision = manager.getRevision();
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getRevision(), initialRevision + 1);
- }
-
-@@ -192,9 +192,9 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- const auto beforeAddRevision = manager.getRevision();
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getRevision(), beforeAddRevision);
- }
-
-@@ -203,9 +203,9 @@ namespace
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0));
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground);
- const auto beforeUpdateRevision = manager.getRevision();
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getRevision(), beforeUpdateRevision + 1);
- }
-
-@@ -213,9 +213,9 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- const auto beforeUpdateRevision = manager.getRevision();
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- EXPECT_EQ(manager.getRevision(), beforeUpdateRevision);
- }
-
-@@ -223,9 +223,9 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const btBoxShape boxShape(btVector3(20, 20, 100));
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground);
- const auto beforeRemoveRevision = manager.getRevision();
-- manager.removeObject(ObjectId(1ul));
-+ manager.removeObject(ObjectId(&boxShape));
- EXPECT_EQ(manager.getRevision(), beforeRemoveRevision + 1);
- }
-
-@@ -233,7 +233,7 @@ namespace
- {
- TileCachedRecastMeshManager manager(mSettings);
- const auto beforeRemoveRevision = manager.getRevision();
-- manager.removeObject(ObjectId(1ul));
-+ manager.removeObject(ObjectId(&manager));
- EXPECT_EQ(manager.getRevision(), beforeRemoveRevision);
- }
- }
-diff --git a/components/detournavigator/objectid.hpp b/components/detournavigator/objectid.hpp
-index 3b56924b13..6ddcc9169d 100644
---- a/components/detournavigator/objectid.hpp
-+++ b/components/detournavigator/objectid.hpp
-@@ -10,7 +10,7 @@ namespace DetourNavigator
- {
- public:
- template <class T>
-- explicit ObjectId(const T value) throw()
-+ explicit ObjectId(T* value) throw()
- : mValue(reinterpret_cast<std::size_t>(value))
- {
- }
diff --git a/games-engines/openmw/files/openmw-0.46.0-floattest2.patch b/games-engines/openmw/files/openmw-0.46.0-floattest2.patch
deleted file mode 100644
index ca6e355eab7d..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-floattest2.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-https://gitlab.com/OpenMW/openmw/-/merge_requests/253
-
---- a/apps/openmw_test_suite/detournavigator/navigator.cpp 2020-06-30 16:07:31.544410916 +0100
-+++ b/apps/openmw_test_suite/detournavigator/navigator.cpp 2020-06-30 16:08:50.405698937 +0100
-@@ -458,25 +458,25 @@
-
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim, mAreaCosts, mOut), Status::Success);
-
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({
-- osg::Vec3f(0, 215, 185.33331298828125),
-- osg::Vec3f(0, 186.6666717529296875, 185.33331298828125),
-- osg::Vec3f(0, 158.333343505859375, 185.33331298828125),
-- osg::Vec3f(0, 130.0000152587890625, 185.33331298828125),
-- osg::Vec3f(0, 101.66667938232421875, 185.33331298828125),
-- osg::Vec3f(0, 73.333343505859375, 185.33331298828125),
-- osg::Vec3f(0, 45.0000152587890625, 185.33331298828125),
-- osg::Vec3f(0, 16.6666812896728515625, 185.33331298828125),
-- osg::Vec3f(0, -11.66664981842041015625, 185.33331298828125),
-- osg::Vec3f(0, -39.999980926513671875, 185.33331298828125),
-- osg::Vec3f(0, -68.33331298828125, 185.33331298828125),
-- osg::Vec3f(0, -96.66664886474609375, 185.33331298828125),
-- osg::Vec3f(0, -124.99997711181640625, 185.33331298828125),
-- osg::Vec3f(0, -153.33331298828125, 185.33331298828125),
-- osg::Vec3f(0, -181.6666412353515625, 185.33331298828125),
-- osg::Vec3f(0, -209.999969482421875, 185.33331298828125),
-- osg::Vec3f(0, -215, 185.33331298828125),
-- })) << mPath;
-+ EXPECT_THAT(mPath, ElementsAre(
-+ Vec3fEq(0, 215, 185.33331298828125),
-+ Vec3fEq(0, 186.6666717529296875, 185.33331298828125),
-+ Vec3fEq(0, 158.333343505859375, 185.33331298828125),
-+ Vec3fEq(0, 130.0000152587890625, 185.33331298828125),
-+ Vec3fEq(0, 101.66667938232421875, 185.33331298828125),
-+ Vec3fEq(0, 73.333343505859375, 185.33331298828125),
-+ Vec3fEq(0, 45.0000152587890625, 185.33331298828125),
-+ Vec3fEq(0, 16.6666812896728515625, 185.33331298828125),
-+ Vec3fEq(0, -11.66664981842041015625, 185.33331298828125),
-+ Vec3fEq(0, -39.999980926513671875, 185.33331298828125),
-+ Vec3fEq(0, -68.33331298828125, 185.33331298828125),
-+ Vec3fEq(0, -96.66664886474609375, 185.33331298828125),
-+ Vec3fEq(0, -124.99997711181640625, 185.33331298828125),
-+ Vec3fEq(0, -153.33331298828125, 185.33331298828125),
-+ Vec3fEq(0, -181.6666412353515625, 185.33331298828125),
-+ Vec3fEq(0, -209.999969482421875, 185.33331298828125),
-+ Vec3fEq(0, -215, 185.33331298828125)
-+ ));
- }
-
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_water_when_ground_cross_water_with_swim_and_walk_flags)
-@@ -505,25 +505,25 @@
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim | Flag_walk, mAreaCosts, mOut),
- Status::Success);
-
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({
-- osg::Vec3f(0, 215, -94.75363922119140625),
-- osg::Vec3f(0, 186.6666717529296875, -106.0000152587890625),
-- osg::Vec3f(0, 158.333343505859375, -115.85507965087890625),
-- osg::Vec3f(0, 130.0000152587890625, -125.71016693115234375),
-- osg::Vec3f(0, 101.66667938232421875, -135.5652313232421875),
-- osg::Vec3f(0, 73.333343505859375, -143.3333587646484375),
-- osg::Vec3f(0, 45.0000152587890625, -143.3333587646484375),
-- osg::Vec3f(0, 16.6666812896728515625, -143.3333587646484375),
-- osg::Vec3f(0, -11.66664981842041015625, -143.3333587646484375),
-- osg::Vec3f(0, -39.999980926513671875, -143.3333587646484375),
-- osg::Vec3f(0, -68.33331298828125, -143.3333587646484375),
-- osg::Vec3f(0, -96.66664886474609375, -137.3043670654296875),
-- osg::Vec3f(0, -124.99997711181640625, -127.44930267333984375),
-- osg::Vec3f(0, -153.33331298828125, -117.59423065185546875),
-- osg::Vec3f(0, -181.6666412353515625, -107.73915863037109375),
-- osg::Vec3f(0, -209.999969482421875, -97.7971343994140625),
-- osg::Vec3f(0, -215, -94.75363922119140625),
-- })) << mPath;
-+ EXPECT_THAT(mPath, ElementsAre(
-+ Vec3fEq(0, 215, -94.75363922119140625),
-+ Vec3fEq(0, 186.6666717529296875, -106.0000152587890625),
-+ Vec3fEq(0, 158.333343505859375, -115.85507965087890625),
-+ Vec3fEq(0, 130.0000152587890625, -125.71016693115234375),
-+ Vec3fEq(0, 101.66667938232421875, -135.5652313232421875),
-+ Vec3fEq(0, 73.333343505859375, -143.3333587646484375),
-+ Vec3fEq(0, 45.0000152587890625, -143.3333587646484375),
-+ Vec3fEq(0, 16.6666812896728515625, -143.3333587646484375),
-+ Vec3fEq(0, -11.66664981842041015625, -143.3333587646484375),
-+ Vec3fEq(0, -39.999980926513671875, -143.3333587646484375),
-+ Vec3fEq(0, -68.33331298828125, -143.3333587646484375),
-+ Vec3fEq(0, -96.66664886474609375, -137.3043670654296875),
-+ Vec3fEq(0, -124.99997711181640625, -127.44930267333984375),
-+ Vec3fEq(0, -153.33331298828125, -117.59423065185546875),
-+ Vec3fEq(0, -181.6666412353515625, -107.73915863037109375),
-+ Vec3fEq(0, -209.999969482421875, -97.7971343994140625),
-+ Vec3fEq(0, -215, -94.75363922119140625)
-+ ));
- }
-
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_water_when_ground_cross_water_with_max_int_cells_size_and_swim_and_walk_flags)
-@@ -552,25 +552,25 @@
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim | Flag_walk, mAreaCosts, mOut),
- Status::Success);
-
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({
-- osg::Vec3f(0, 215, -94.75363922119140625),
-- osg::Vec3f(0, 186.6666717529296875, -106.0000152587890625),
-- osg::Vec3f(0, 158.333343505859375, -115.85507965087890625),
-- osg::Vec3f(0, 130.0000152587890625, -125.71016693115234375),
-- osg::Vec3f(0, 101.66667938232421875, -135.5652313232421875),
-- osg::Vec3f(0, 73.333343505859375, -143.3333587646484375),
-- osg::Vec3f(0, 45.0000152587890625, -143.3333587646484375),
-- osg::Vec3f(0, 16.6666812896728515625, -143.3333587646484375),
-- osg::Vec3f(0, -11.66664981842041015625, -143.3333587646484375),
-- osg::Vec3f(0, -39.999980926513671875, -143.3333587646484375),
-- osg::Vec3f(0, -68.33331298828125, -143.3333587646484375),
-- osg::Vec3f(0, -96.66664886474609375, -137.3043670654296875),
-- osg::Vec3f(0, -124.99997711181640625, -127.44930267333984375),
-- osg::Vec3f(0, -153.33331298828125, -117.59423065185546875),
-- osg::Vec3f(0, -181.6666412353515625, -107.73915863037109375),
-- osg::Vec3f(0, -209.999969482421875, -97.7971343994140625),
-- osg::Vec3f(0, -215, -94.75363922119140625),
-- })) << mPath;
-+ EXPECT_THAT(mPath, ElementsAre(
-+ Vec3fEq(0, 215, -94.75363922119140625),
-+ Vec3fEq(0, 186.6666717529296875, -106.0000152587890625),
-+ Vec3fEq(0, 158.333343505859375, -115.85507965087890625),
-+ Vec3fEq(0, 130.0000152587890625, -125.71016693115234375),
-+ Vec3fEq(0, 101.66667938232421875, -135.5652313232421875),
-+ Vec3fEq(0, 73.333343505859375, -143.3333587646484375),
-+ Vec3fEq(0, 45.0000152587890625, -143.3333587646484375),
-+ Vec3fEq(0, 16.6666812896728515625, -143.3333587646484375),
-+ Vec3fEq(0, -11.66664981842041015625, -143.3333587646484375),
-+ Vec3fEq(0, -39.999980926513671875, -143.3333587646484375),
-+ Vec3fEq(0, -68.33331298828125, -143.3333587646484375),
-+ Vec3fEq(0, -96.66664886474609375, -137.3043670654296875),
-+ Vec3fEq(0, -124.99997711181640625, -127.44930267333984375),
-+ Vec3fEq(0, -153.33331298828125, -117.59423065185546875),
-+ Vec3fEq(0, -181.6666412353515625, -107.73915863037109375),
-+ Vec3fEq(0, -209.999969482421875, -97.7971343994140625),
-+ Vec3fEq(0, -215, -94.75363922119140625)
-+ ));
- }
-
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_ground_when_ground_cross_water_with_only_walk_flag)
diff --git a/games-engines/openmw/files/openmw-0.46.0-gcc11.patch b/games-engines/openmw/files/openmw-0.46.0-gcc11.patch
deleted file mode 100644
index 0dc3106fb3bf..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-gcc11.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/components/sceneutil/mwshadowtechnique.cpp b/components/sceneutil/mwshadowtechnique.cpp
-index cb3a1b2..62cfeec 100644
---- a/components/sceneutil/mwshadowtechnique.cpp
-+++ b/components/sceneutil/mwshadowtechnique.cpp
-@@ -24,6 +24,7 @@
- #include <osg/io_utils>
-
- #include <sstream>
-+#include <limits>
-
- namespace {
-
-diff --git a/components/sceneutil/shadow.cpp b/components/sceneutil/shadow.cpp
-index 035c19a..aba1b81 100644
---- a/components/sceneutil/shadow.cpp
-+++ b/components/sceneutil/shadow.cpp
-@@ -4,6 +4,7 @@
-
- #include <components/sceneutil/vismask.hpp>
- #include <components/settings/settings.hpp>
-+#include <limits>
-
- namespace SceneUtil
- {
-diff --git a/components/terrain/quadtreeworld.cpp b/components/terrain/quadtreeworld.cpp
-index f998b78..e0e47dd 100644
---- a/components/terrain/quadtreeworld.cpp
-+++ b/components/terrain/quadtreeworld.cpp
-@@ -3,6 +3,7 @@
- #include <osgUtil/CullVisitor>
-
- #include <sstream>
-+#include <limits>
-
- #include <components/misc/constants.hpp>
- #include <components/sceneutil/mwshadowtechnique.hpp>
diff --git a/games-engines/openmw/files/openmw-0.46.0-missing-include.patch b/games-engines/openmw/files/openmw-0.46.0-missing-include.patch
deleted file mode 100644
index 803707498e43..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-missing-include.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Fixes build on ~arch system, patch from upstream, to be dropped for 0.47
-
-From 10daadefbea1f62a818c339dc7f3d69a858bc8a6 Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Thu, 30 Apr 2020 21:57:22 +0200
-Subject: [PATCH] Add missing include
-
-diff --git a/components/detournavigator/offmeshconnectionsmanager.hpp b/components/detournavigator/offmeshconnectionsmanager.hpp
-index 30d7976aec..155ce32963 100644
---- a/components/detournavigator/offmeshconnectionsmanager.hpp
-+++ b/components/detournavigator/offmeshconnectionsmanager.hpp
-@@ -13,6 +13,7 @@
-
- #include <boost/optional.hpp>
-
-+#include <algorithm>
- #include <map>
- #include <mutex>
- #include <unordered_map>
diff --git a/games-engines/openmw/files/openmw-0.46.0-mygui-license.patch b/games-engines/openmw/files/openmw-0.46.0-mygui-license.patch
deleted file mode 100644
index a14f58bc9e79..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-mygui-license.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-We don't install license files
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d69352c94..5f97c86e9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -470,9 +470,6 @@ IF(NOT WIN32 AND NOT APPLE)
- # INSTALL(PROGRAMS "${OpenMW_BINARY_DIR}/Plugin_MyGUI_OpenMW_Resources.so" DESTINATION "${LIBDIR}" )
- #ENDIF(BUILD_MYGUI_PLUGIN)
-
-- # Install licenses
-- INSTALL(FILES "files/mygui/DejaVu Font License.txt" DESTINATION "${LICDIR}" )
--
- # Install icon and desktop file
- INSTALL(FILES "${OpenMW_BINARY_DIR}/org.openmw.launcher.desktop" DESTINATION "${DATAROOTDIR}/applications" COMPONENT "openmw")
- INSTALL(FILES "${OpenMW_SOURCE_DIR}/files/launcher/images/openmw.png" DESTINATION "${ICONDIR}" COMPONENT "openmw")
diff --git a/games-engines/openmw/files/openmw-0.46.0-nifbullet-test.patch b/games-engines/openmw/files/openmw-0.46.0-nifbullet-test.patch
deleted file mode 100644
index 315b0753589d..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-nifbullet-test.patch
+++ /dev/null
@@ -1,335 +0,0 @@
-Fixes test on i686 system, patch from upstream, to be dropped for 0.47
-
-From 14d0ca4cd3e9aa9e329590913d5f8fb55077587d Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Sun, 25 Nov 2018 11:42:26 +0300
-Subject: [PATCH 1/4] Cast float to btScalar
-
----
- .../detournavigator/recastmeshbuilder.cpp | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/components/detournavigator/recastmeshbuilder.cpp b/components/detournavigator/recastmeshbuilder.cpp
-index d96ba2f29c..f613683571 100644
---- a/components/detournavigator/recastmeshbuilder.cpp
-+++ b/components/detournavigator/recastmeshbuilder.cpp
-@@ -163,15 +163,15 @@ namespace DetourNavigator
-
- transformBoundingBox(transform, aabbMin, aabbMax);
-
-- aabbMin.setX(std::max(mBounds.mMin.x(), aabbMin.x()));
-- aabbMin.setX(std::min(mBounds.mMax.x(), aabbMin.x()));
-- aabbMin.setY(std::max(mBounds.mMin.y(), aabbMin.y()));
-- aabbMin.setY(std::min(mBounds.mMax.y(), aabbMin.y()));
--
-- aabbMax.setX(std::max(mBounds.mMin.x(), aabbMax.x()));
-- aabbMax.setX(std::min(mBounds.mMax.x(), aabbMax.x()));
-- aabbMax.setY(std::max(mBounds.mMin.y(), aabbMax.y()));
-- aabbMax.setY(std::min(mBounds.mMax.y(), aabbMax.y()));
-+ aabbMin.setX(std::max(static_cast<btScalar>(mBounds.mMin.x()), aabbMin.x()));
-+ aabbMin.setX(std::min(static_cast<btScalar>(mBounds.mMax.x()), aabbMin.x()));
-+ aabbMin.setY(std::max(static_cast<btScalar>(mBounds.mMin.y()), aabbMin.y()));
-+ aabbMin.setY(std::min(static_cast<btScalar>(mBounds.mMax.y()), aabbMin.y()));
-+
-+ aabbMax.setX(std::max(static_cast<btScalar>(mBounds.mMin.x()), aabbMax.x()));
-+ aabbMax.setX(std::min(static_cast<btScalar>(mBounds.mMax.x()), aabbMax.x()));
-+ aabbMax.setY(std::max(static_cast<btScalar>(mBounds.mMin.y()), aabbMax.y()));
-+ aabbMax.setY(std::min(static_cast<btScalar>(mBounds.mMax.y()), aabbMax.y()));
-
- transformBoundingBox(transform.inverse(), aabbMin, aabbMax);
-
-
-From ef5a5ef43f9a91795339ef3ea97c505c1e9dc28d Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Sun, 25 Nov 2018 14:03:28 +0300
-Subject: [PATCH 2/4] Print not matched values with full precision
-
----
- .../detournavigator/operators.hpp | 62 +++++++++++++++----
- 1 file changed, 51 insertions(+), 11 deletions(-)
-
-diff --git a/apps/openmw_test_suite/detournavigator/operators.hpp b/apps/openmw_test_suite/detournavigator/operators.hpp
-index a473632bab..e34d6278a7 100644
---- a/apps/openmw_test_suite/detournavigator/operators.hpp
-+++ b/apps/openmw_test_suite/detournavigator/operators.hpp
-@@ -20,22 +20,62 @@ namespace DetourNavigator
- }
- }
-
-+namespace
-+{
-+ template <class T>
-+ struct Wrapper {
-+ const T& mValue;
-+ };
-+
-+ template <class Range>
-+ inline testing::Message& writeRange(testing::Message& message, const Range& range)
-+ {
-+ message << "{\n";
-+ for (const auto& v : range)
-+ message << Wrapper<typename std::decay<decltype(v)>::type> {v} << ",\n";
-+ return message << "}";
-+ }
-+}
-+
- namespace testing
- {
-+ template <>
-+ inline testing::Message& Message::operator <<(const osg::Vec3f& value)
-+ {
-+ return (*this) << "osg::Vec3f(" << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.x()
-+ << ", " << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.y()
-+ << ", " << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.z()
-+ << ')';
-+ }
-+
-+ template <>
-+ inline testing::Message& Message::operator <<(const Wrapper<osg::Vec3f>& value)
-+ {
-+ return (*this) << value.mValue;
-+ }
-+
-+ template <>
-+ inline testing::Message& Message::operator <<(const Wrapper<float>& value)
-+ {
-+ return (*this) << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.mValue;
-+ }
-+
- template <>
- inline testing::Message& Message::operator <<(const std::deque<osg::Vec3f>& value)
- {
-- (*this) << "{\n";
-- for (const auto& v : value)
-- {
-- std::ostringstream stream;
-- stream << "osg::Vec3f("
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.x() << ", "
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.y() << ", "
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.z() << ")";
-- (*this) << stream.str() << ",\n";
-- }
-- return (*this) << "}";
-+ return writeRange(*this, value);
-+ }
-+
-+ template <>
-+ inline testing::Message& Message::operator <<(const std::vector<osg::Vec3f>& value)
-+ {
-+ return writeRange(*this, value);
-+ }
-+
-+ template <>
-+ inline testing::Message& Message::operator <<(const std::vector<float>& value)
-+ {
-+ return writeRange(*this, value);
- }
- }
-
-
-From 2d7c3bae6127fc3717d5e3a8e8830215450fb47f Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Sun, 25 Nov 2018 11:46:09 +0300
-Subject: [PATCH 3/4] Support bullet with double precision
-
----
- apps/openmw/mwphysics/heightfield.cpp | 38 ++++++++++++++++++-
- apps/openmw/mwphysics/heightfield.hpp | 5 +++
- .../detournavigator/recastmeshbuilder.cpp | 4 +-
- .../nifloader/testbulletnifloader.cpp | 36 ++++++++++++++++--
- 4 files changed, 77 insertions(+), 6 deletions(-)
-
-diff --git a/apps/openmw/mwphysics/heightfield.cpp b/apps/openmw/mwphysics/heightfield.cpp
-index 52aed9c072..e1448116bf 100644
---- a/apps/openmw/mwphysics/heightfield.cpp
-+++ b/apps/openmw/mwphysics/heightfield.cpp
-@@ -7,12 +7,48 @@
-
- #include <LinearMath/btTransform.h>
-
-+#include <type_traits>
-+
-+namespace
-+{
-+ template <class T>
-+ auto makeHeights(const T* heights, float sqrtVerts)
-+ -> std::enable_if_t<std::is_same<btScalar, T>::value, std::vector<btScalar>>
-+ {
-+ return {};
-+ }
-+
-+ template <class T>
-+ auto makeHeights(const T* heights, float sqrtVerts)
-+ -> std::enable_if_t<!std::is_same<btScalar, T>::value, std::vector<btScalar>>
-+ {
-+ return std::vector<btScalar>(heights, heights + static_cast<std::ptrdiff_t>(sqrtVerts * sqrtVerts));
-+ }
-+
-+ template <class T>
-+ auto getHeights(const T* floatHeights, const std::vector<btScalar>&)
-+ -> std::enable_if_t<std::is_same<btScalar, T>::value, const btScalar*>
-+ {
-+ return floatHeights;
-+ }
-+
-+ template <class T>
-+ auto getHeights(const T*, const std::vector<btScalar>& btScalarHeights)
-+ -> std::enable_if_t<!std::is_same<btScalar, T>::value, const btScalar*>
-+ {
-+ return btScalarHeights.data();
-+ }
-+}
-+
- namespace MWPhysics
- {
- HeightField::HeightField(const float* heights, int x, int y, float triSize, float sqrtVerts, float minH, float maxH, const osg::Object* holdObject)
-+ : mHeights(makeHeights(heights, sqrtVerts))
- {
- mShape = new btHeightfieldTerrainShape(
-- sqrtVerts, sqrtVerts, heights, 1,
-+ sqrtVerts, sqrtVerts,
-+ getHeights(heights, mHeights),
-+ 1,
- minH, maxH, 2,
- PHY_FLOAT, false
- );
-diff --git a/apps/openmw/mwphysics/heightfield.hpp b/apps/openmw/mwphysics/heightfield.hpp
-index f248186db3..2ba58afff8 100644
---- a/apps/openmw/mwphysics/heightfield.hpp
-+++ b/apps/openmw/mwphysics/heightfield.hpp
-@@ -3,6 +3,10 @@
-
- #include <osg/ref_ptr>
-
-+#include <LinearMath/btScalar.h>
-+
-+#include <vector>
-+
- class btCollisionObject;
- class btHeightfieldTerrainShape;
-
-@@ -27,6 +31,7 @@ namespace MWPhysics
- btHeightfieldTerrainShape* mShape;
- btCollisionObject* mCollisionObject;
- osg::ref_ptr<const osg::Object> mHoldObject;
-+ std::vector<btScalar> mHeights;
-
- void operator=(const HeightField&);
- HeightField(const HeightField&);
-diff --git a/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp b/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp
-index 6c474765de..c86dee6e55 100644
---- a/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp
-+++ b/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp
-@@ -363,11 +363,11 @@ namespace
- AreaType_ground
- );
- const auto recastMesh = builder.create(mGeneration, mRevision);
-- EXPECT_EQ(recastMesh->getVertices(), std::vector<float>({
-+ EXPECT_THAT(recastMesh->getVertices(), Pointwise(FloatNear(1e-5), std::vector<float>({
- 1.41421353816986083984375, 0, 1.1920928955078125e-07,
- -1.41421353816986083984375, 0, -1.1920928955078125e-07,
- 1.1920928955078125e-07, 0, -1.41421353816986083984375,
-- }));
-+ })));
- EXPECT_EQ(recastMesh->getIndices(), std::vector<int>({0, 1, 2}));
- EXPECT_EQ(recastMesh->getAreaTypes(), std::vector<AreaType>({AreaType_ground}));
- }
-diff --git a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp
-index 36f2512462..6ec94fd68f 100644
---- a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp
-+++ b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp
-@@ -9,6 +9,8 @@
- #include <gtest/gtest.h>
- #include <gmock/gmock.h>
-
-+#include <algorithm>
-+
- namespace
- {
- template <class T>
-@@ -30,6 +32,34 @@ namespace
- shape.processAllTriangles(&callback, aabbMin, aabbMax);
- return result;
- }
-+
-+ bool isNear(btScalar lhs, btScalar rhs)
-+ {
-+ return std::abs(lhs - rhs) <= 1e-5;
-+ }
-+
-+ bool isNear(const btVector3& lhs, const btVector3& rhs)
-+ {
-+ return std::equal(
-+ static_cast<const btScalar*>(lhs),
-+ static_cast<const btScalar*>(lhs) + 3,
-+ static_cast<const btScalar*>(rhs),
-+ [] (btScalar lhs, btScalar rhs) { return isNear(lhs, rhs); }
-+ );
-+ }
-+
-+ bool isNear(const btMatrix3x3& lhs, const btMatrix3x3& rhs)
-+ {
-+ for (int i = 0; i < 3; ++i)
-+ if (!isNear(lhs[i], rhs[i]))
-+ return false;
-+ return true;
-+ }
-+
-+ bool isNear(const btTransform& lhs, const btTransform& rhs)
-+ {
-+ return isNear(lhs.getOrigin(), rhs.getOrigin()) && isNear(lhs.getBasis(), rhs.getBasis());
-+ }
- }
-
- static std::ostream& operator <<(std::ostream& stream, const btVector3& value)
-@@ -157,7 +187,7 @@ static bool operator ==(const btCompoundShape& lhs, const btCompoundShape& rhs)
- for (int i = 0; i < lhs.getNumChildShapes(); ++i)
- {
- if (!compareObjects(lhs.getChildShape(i), rhs.getChildShape(i))
-- || !(lhs.getChildTransform(i) == rhs.getChildTransform(i)))
-+ || !isNear(lhs.getChildTransform(i), rhs.getChildTransform(i)))
- return false;
- }
- return true;
-@@ -165,13 +195,13 @@ static bool operator ==(const btCompoundShape& lhs, const btCompoundShape& rhs)
-
- static bool operator ==(const btBoxShape& lhs, const btBoxShape& rhs)
- {
-- return lhs.getLocalScaling() == rhs.getLocalScaling()
-+ return isNear(lhs.getLocalScaling(), rhs.getLocalScaling())
- && lhs.getHalfExtentsWithoutMargin() == rhs.getHalfExtentsWithoutMargin();
- }
-
- static bool operator ==(const btBvhTriangleMeshShape& lhs, const btBvhTriangleMeshShape& rhs)
- {
-- return lhs.getLocalScaling() == rhs.getLocalScaling()
-+ return isNear(lhs.getLocalScaling(), rhs.getLocalScaling())
- && lhs.usesQuantizedAabbCompression() == rhs.usesQuantizedAabbCompression()
- && lhs.getOwnsBvh() == rhs.getOwnsBvh()
- && getTriangles(lhs) == getTriangles(rhs);
-
-From 66da72048a5893bc8c9b20f6f7210fd45b6a74bf Mon Sep 17 00:00:00 2001
-From: elsid <elsid.mail@gmail.com>
-Date: Wed, 20 Feb 2019 23:41:16 +0300
-Subject: [PATCH 4/4] Update bullet for windows up to 2.87
-
----
- CI/before_script.msvc.sh | 12 ++++++------
- appveyor.yml | 4 ++--
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/appveyor.yml b/appveyor.yml
-index 3057cc7257..e2c13ed948 100644
---- a/appveyor.yml
-+++ b/appveyor.yml
-@@ -30,8 +30,8 @@ configuration:
- clone_depth: 1
-
- cache:
-- - C:\projects\openmw\deps\Bullet-2.86-msvc2015-win32.7z
-- - C:\projects\openmw\deps\Bullet-2.86-msvc2015-win64.7z
-+ - C:\projects\openmw\deps\Bullet-2.87-msvc2015-win32.7z
-+ - C:\projects\openmw\deps\Bullet-2.87-msvc2015-win64.7z
- - C:\projects\openmw\deps\MyGUI-3.2.2-msvc2015-win32.7z
- - C:\projects\openmw\deps\MyGUI-3.2.2-msvc2015-win64.7z
- - C:\projects\openmw\deps\OSG-3.4.1-scrawl-msvc2015-win32.7z
diff --git a/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch b/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch
deleted file mode 100644
index ea3242d73ca8..000000000000
--- a/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Use system recastnavigation instead of bundled one
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d69352c94..cfb53dc5b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -596,7 +596,16 @@ endif(WIN32)
- # Extern
- set(RECASTNAVIGATION_STATIC ON CACHE BOOL "Build recastnavigation static libraries")
-
--add_subdirectory (extern/recastnavigation EXCLUDE_FROM_ALL)
-+add_library(RecastNavigation::DebugUtils SHARED IMPORTED)
-+add_library(RecastNavigation::Detour SHARED IMPORTED)
-+add_library(RecastNavigation::Recast SHARED IMPORTED)
-+set_target_properties(RecastNavigation::DebugUtils PROPERTIES
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libDebugUtils.so)
-+set_target_properties(RecastNavigation::Detour PROPERTIES
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libDetour.so)
-+set_target_properties(RecastNavigation::Recast PROPERTIES
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libRecast.so)
-+
- add_subdirectory (extern/osg-ffmpeg-videoplayer)
- add_subdirectory (extern/oics)
- if (BUILD_OPENCS)
diff --git a/games-engines/openmw/openmw-0.46.0-r2.ebuild b/games-engines/openmw/openmw-0.46.0-r2.ebuild
deleted file mode 100644
index 24532e11f3da..000000000000
--- a/games-engines/openmw/openmw-0.46.0-r2.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake flag-o-matic xdg-utils readme.gentoo-r1
-
-DESCRIPTION="Open source reimplementation of TES III: Morrowind"
-HOMEPAGE="https://openmw.org/ https://gitlab.com/OpenMW/openmw"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/OpenMW/openmw.git"
-else
- SRC_URI="
- https://github.com/OpenMW/openmw/archive/${P}.tar.gz
- https://gitlab.com/OpenMW/openmw/-/merge_requests/163.patch -> ${P}-floattest.patch
- "
- KEYWORDS="~amd64 ~x86"
- S="${WORKDIR}/${PN}-${P}"
-fi
-
-LICENSE="GPL-3 MIT BitstreamVera ZLIB"
-SLOT="0"
-IUSE="doc devtools +osg-fork test +qt5"
-RESTRICT="!test? ( test )"
-
-# FIXME: Unbundle dev-games/openscenegraph-qt in extern/osgQt directory,
-# used when BUILD_OPENCS flag is enabled. See bug #676266.
-
-RDEPEND="
- dev-games/mygui
- dev-games/recastnavigation
- dev-libs/boost:=[threads(+),zlib]
- dev-libs/tinyxml:=[stl]
- media-libs/libsdl2[joystick,opengl,video]
- media-libs/openal
- media-video/ffmpeg:=
- >=sci-physics/bullet-2.86:=[-double-precision]
- virtual/opengl
- osg-fork? ( =dev-games/openscenegraph-openmw-3.4*:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] )
- !osg-fork? ( >=dev-games/openscenegraph-3.5.5:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] )
- qt5? (
- app-arch/unshield
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtopengl:5
- dev-qt/qtwidgets:5
- )
-"
-
-DEPEND="${RDEPEND}"
-
-BDEPEND="
- virtual/pkgconfig
- doc? (
- app-doc/doxygen[doc]
- dev-python/sphinx
- )
- test? (
- dev-cpp/gtest
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/openmw-0.46.0-mygui-license.patch
- "${FILESDIR}"/openmw-0.46.0-recastnavigation.patch
- "${FILESDIR}"/openmw-0.46.0-missing-include.patch
- "${FILESDIR}"/openmw-0.46.0-fix-cast.patch
- "${FILESDIR}"/openmw-0.46.0-nifbullet-test.patch
- # https://gitlab.com/OpenMW/openmw/-/merge_requests/163
- "${DISTDIR}"/openmw-0.46.0-floattest.patch
- "${FILESDIR}"/openmw-0.46.0-floattest2.patch
- "${FILESDIR}"/openmw-0.46.0-gcc11.patch
- "${FILESDIR}"/openmw-0.46.0-boost-1.77.patch
-)
-
-src_prepare() {
- cmake_src_prepare
-
- # Use the system tinyxml headers
- rm -v extern/oics/tiny{str,xml}* || die
-
- # Unbundle recastnavigation
- rm -vr extern/recastnavigation || die
- sed -i "s#GENTOO_RECAST_LIBDIR#${EPREFIX}/usr/$(get_libdir)#" CMakeLists.txt || die
-}
-
-src_configure() {
- use devtools && ! use qt5 && \
- elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed"
-
- append-cxxflags "-I${EPREFIX}/usr/include/recastnavigation"
-
- local mycmakeargs=(
- -DBUILD_BSATOOL=$(usex devtools)
- -DBUILD_DOCS=$(usex doc)
- -DBUILD_ESMTOOL=$(usex devtools)
- -DBUILD_LAUNCHER=$(usex qt5)
- -DBUILD_NIFTEST=$(usex devtools)
- -DBUILD_OPENCS=$(usex devtools $(usex qt5))
- -DBUILD_WIZARD=$(usex qt5)
- -DBUILD_UNITTESTS=$(usex test)
- -DGLOBAL_DATA_PATH="${EPREFIX}/usr/share"
- -DICONDIR="${EPREFIX}/usr/share/icons/hicolor/256x256/apps"
- -DMORROWIND_DATA_FILES="${EPREFIX}/usr/share/morrowind-data"
- -DUSE_SYSTEM_TINYXML=ON
- -DDESIRED_QT_VERSION=5
- )
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-
- if use doc ; then
- cmake_src_compile doc
- find "${CMAKE_BUILD_DIR}"/docs/Doxygen/html \
- -name '*.md5' -type f -delete || die
- HTML_DOCS=( "${CMAKE_BUILD_DIR}"/docs/Doxygen/html/. )
- fi
-}
-
-src_test() {
- "${BUILD_DIR}/openmw_test_suite" || die
-}
-
-src_install() {
- cmake_src_install
-
- local DOC_CONTENTS="
- You need the original Morrowind data files. If you haven't
- installed them yet, you can install them straight via the
- installation wizard which is the officially supported method
- (either by using the launcher or by calling 'openmw-wizard'
- directly).\n"
-
- if ! use qt5; then
- local DOC_CONTENTS+="\n\n
- USE flag 'qt5' is disabled, 'openmw-launcher' and
- 'openmw-wizard' are not available. You are on your own for
- making the Morrowind data files available and pointing
- openmw at them.\n\n
- Additionally; you must import the Morrowind.ini file before
- running openmw with the Morrowind data files for the first
- time. Typically this can be done like so:\n\n
- \t mkdir -p ~/.config/openmw\n
- \t openmw-iniimporter /path/to/Morrowind.ini ~/.config/openmw/openmw.cfg"
- fi
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- readme.gentoo_print_elog
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
-}