1 |
commit: 7d9a09fdbbac2bcaaeb79ce9cc4d852f7f656101 |
2 |
Author: Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org> |
3 |
AuthorDate: Mon Dec 6 10:40:28 2021 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Dec 6 10:40:28 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d9a09fd |
7 |
|
8 |
games-engines/openmw: drop old |
9 |
|
10 |
Closes: https://github.com/gentoo/gentoo/pull/23194 |
11 |
Closes: https://bugs.gentoo.org/794538 |
12 |
Package-Manager: Portage-3.0.28, Repoman-3.0.3 |
13 |
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org> |
14 |
Signed-off-by: David Seifert <soap <AT> gentoo.org> |
15 |
|
16 |
games-engines/openmw/Manifest | 2 - |
17 |
.../openmw/files/openmw-0.46.0-boost-1.77.patch | 10 - |
18 |
.../openmw/files/openmw-0.46.0-fix-cast.patch | 214 ------------- |
19 |
.../openmw/files/openmw-0.46.0-floattest2.patch | 139 --------- |
20 |
.../openmw/files/openmw-0.46.0-gcc11.patch | 36 --- |
21 |
.../files/openmw-0.46.0-missing-include.patch | 19 -- |
22 |
.../openmw/files/openmw-0.46.0-mygui-license.patch | 16 - |
23 |
.../files/openmw-0.46.0-nifbullet-test.patch | 335 --------------------- |
24 |
.../files/openmw-0.46.0-recastnavigation.patch | 24 -- |
25 |
games-engines/openmw/openmw-0.46.0-r2.ebuild | 163 ---------- |
26 |
10 files changed, 958 deletions(-) |
27 |
|
28 |
diff --git a/games-engines/openmw/Manifest b/games-engines/openmw/Manifest |
29 |
index 088a9b8fd26c..607fa30988f1 100644 |
30 |
--- a/games-engines/openmw/Manifest |
31 |
+++ b/games-engines/openmw/Manifest |
32 |
@@ -1,3 +1 @@ |
33 |
-DIST openmw-0.46.0-floattest.patch 43168 BLAKE2B 060b529fd4cd01f0fc723bb5a00a256b9c1ae4413c7b22581467cce75416e01041c3af22f0215ad9b1c475965a988065e0860c01c1e71d97454b022eec4779ea SHA512 0e165417e9ae047231fdc27b62251b33867f3782c1753f81705c886d6d3a433c8bbc3b4653a2555bc644bad11db9769d4bc2abcc84ca3ab23fabb6b80347bc32 |
34 |
-DIST openmw-0.46.0.tar.gz 5155004 BLAKE2B 8ad94a7fffe5a0739c56c778efe2ec17ef66c312a7fe5caf015cf3cad2bc17d2abe8cdc3f4134049a32fe55c4f4b3f72678d2d0ce1037fd02f6ac753b9d89b2c SHA512 da384aead300552817c0d0ce03515a5ccc95dcab4e02d4c1dd0d6c5f1b01ee01209bbaea74e2d12021e3465e49b051823bb018de39675c5a22c6892893624486 |
35 |
DIST openmw-0.47.0.tar.gz 5156857 BLAKE2B 40e8b9670423259fa0cc03ef000c17ebe06d1d58c2527b51b25cea3b54978b8a698984371eac14ff212f9550253ab17d41b83d37426371f12f5ce2d30b240d3d SHA512 517e650d0054cdba8d38de05ed3975b0fcf8de32fda59c8df7c34b973e5390efa0dd9ec79babdfdaa79dee7aa8a75009776f62fad91b9aa9aa28016c5032652b |
36 |
|
37 |
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 |
38 |
deleted file mode 100644 |
39 |
index 708fd9e9f52f..000000000000 |
40 |
--- a/games-engines/openmw/files/openmw-0.46.0-boost-1.77.patch |
41 |
+++ /dev/null |
42 |
@@ -1,10 +0,0 @@ |
43 |
-https://bugs.gentoo.org/808763 |
44 |
- |
45 |
---- a/components/vfs/filesystemarchive.cpp |
46 |
-+++ b/components/vfs/filesystemarchive.cpp |
47 |
-@@ -1,4 +1,5 @@ |
48 |
- #include "filesystemarchive.hpp" |
49 |
- |
50 |
-+#include <algorithm> |
51 |
- #include <boost/filesystem.hpp> |
52 |
- |
53 |
|
54 |
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 |
55 |
deleted file mode 100644 |
56 |
index f6e82cb3a2c9..000000000000 |
57 |
--- a/games-engines/openmw/files/openmw-0.46.0-fix-cast.patch |
58 |
+++ /dev/null |
59 |
@@ -1,214 +0,0 @@ |
60 |
-Fixes build on ~arch system, patch from upstream, to be dropped for 0.47 |
61 |
- |
62 |
-From 208a50340db5506dded60c05272ce9692773baa9 Mon Sep 17 00:00:00 2001 |
63 |
-From: elsid <elsid.mail@×××××.com> |
64 |
-Date: Mon, 13 Apr 2020 20:45:07 +0200 |
65 |
-Subject: [PATCH] Specialize DetourNavigator::ObjectId ctor for pointers |
66 |
- |
67 |
-To fix msvc error: |
68 |
-components\detournavigator\objectid.hpp(14,13): error C2440: 'reinterpret_cast': cannot convert from 'const T' to 'size_t' |
69 |
- with |
70 |
- [ |
71 |
- T=unsigned long |
72 |
- ] |
73 |
-diff --git a/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp b/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp |
74 |
-index 5275d9119e..e44ae48786 100644 |
75 |
---- a/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp |
76 |
-+++ b/apps/openmw_test_suite/detournavigator/tilecachedrecastmeshmanager.cpp |
77 |
-@@ -61,15 +61,15 @@ namespace |
78 |
- { |
79 |
- TileCachedRecastMeshManager manager(mSettings); |
80 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
81 |
-- EXPECT_TRUE(manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground)); |
82 |
-+ EXPECT_TRUE(manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground)); |
83 |
- } |
84 |
- |
85 |
- TEST_F(DetourNavigatorTileCachedRecastMeshManagerTest, add_object_for_existing_object_should_return_false) |
86 |
- { |
87 |
- TileCachedRecastMeshManager manager(mSettings); |
88 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
89 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
90 |
-- EXPECT_FALSE(manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground)); |
91 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
92 |
-+ EXPECT_FALSE(manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground)); |
93 |
- } |
94 |
- |
95 |
- TEST_F(DetourNavigatorTileCachedRecastMeshManagerTest, update_object_for_changed_object_should_return_changed_tiles) |
96 |
-@@ -77,9 +77,9 @@ namespace |
97 |
- TileCachedRecastMeshManager manager(mSettings); |
98 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
99 |
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0)); |
100 |
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground); |
101 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground); |
102 |
- EXPECT_THAT( |
103 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground), |
104 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground), |
105 |
- ElementsAre(TilePosition(-1, -1), TilePosition(-1, 0), TilePosition(0, -1), TilePosition(0, 0), |
106 |
- TilePosition(1, -1), TilePosition(1, 0)) |
107 |
- ); |
108 |
-@@ -89,9 +89,9 @@ namespace |
109 |
- { |
110 |
- TileCachedRecastMeshManager manager(mSettings); |
111 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
112 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
113 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
114 |
- EXPECT_EQ( |
115 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground), |
116 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground), |
117 |
- std::vector<TilePosition>() |
118 |
- ); |
119 |
- } |
120 |
-@@ -100,7 +100,7 @@ namespace |
121 |
- { |
122 |
- TileCachedRecastMeshManager manager(mSettings); |
123 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
124 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
125 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
126 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr); |
127 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr); |
128 |
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr); |
129 |
-@@ -111,7 +111,7 @@ namespace |
130 |
- { |
131 |
- TileCachedRecastMeshManager manager(mSettings); |
132 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
133 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
134 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
135 |
- EXPECT_EQ(manager.getMesh(TilePosition(1, 0)), nullptr); |
136 |
- } |
137 |
- |
138 |
-@@ -121,13 +121,13 @@ namespace |
139 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
140 |
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0)); |
141 |
- |
142 |
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground); |
143 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground); |
144 |
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr); |
145 |
- EXPECT_NE(manager.getMesh(TilePosition(0, 0)), nullptr); |
146 |
- EXPECT_NE(manager.getMesh(TilePosition(1, 0)), nullptr); |
147 |
- EXPECT_NE(manager.getMesh(TilePosition(1, -1)), nullptr); |
148 |
- |
149 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
150 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
151 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr); |
152 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr); |
153 |
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr); |
154 |
-@@ -140,11 +140,11 @@ namespace |
155 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
156 |
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0)); |
157 |
- |
158 |
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground); |
159 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground); |
160 |
- EXPECT_EQ(manager.getMesh(TilePosition(-1, -1)), nullptr); |
161 |
- EXPECT_EQ(manager.getMesh(TilePosition(-1, 0)), nullptr); |
162 |
- |
163 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
164 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
165 |
- EXPECT_EQ(manager.getMesh(TilePosition(1, 0)), nullptr); |
166 |
- EXPECT_EQ(manager.getMesh(TilePosition(1, -1)), nullptr); |
167 |
- } |
168 |
-@@ -153,8 +153,8 @@ namespace |
169 |
- { |
170 |
- TileCachedRecastMeshManager manager(mSettings); |
171 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
172 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
173 |
-- manager.removeObject(ObjectId(1ul)); |
174 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
175 |
-+ manager.removeObject(ObjectId(&boxShape)); |
176 |
- EXPECT_EQ(manager.getMesh(TilePosition(-1, -1)), nullptr); |
177 |
- EXPECT_EQ(manager.getMesh(TilePosition(-1, 0)), nullptr); |
178 |
- EXPECT_EQ(manager.getMesh(TilePosition(0, -1)), nullptr); |
179 |
-@@ -166,13 +166,13 @@ namespace |
180 |
- TileCachedRecastMeshManager manager(mSettings); |
181 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
182 |
- |
183 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
184 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
185 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr); |
186 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr); |
187 |
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr); |
188 |
- EXPECT_NE(manager.getMesh(TilePosition(0, 0)), nullptr); |
189 |
- |
190 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
191 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
192 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, -1)), nullptr); |
193 |
- EXPECT_NE(manager.getMesh(TilePosition(-1, 0)), nullptr); |
194 |
- EXPECT_NE(manager.getMesh(TilePosition(0, -1)), nullptr); |
195 |
-@@ -184,7 +184,7 @@ namespace |
196 |
- TileCachedRecastMeshManager manager(mSettings); |
197 |
- const auto initialRevision = manager.getRevision(); |
198 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
199 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
200 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
201 |
- EXPECT_EQ(manager.getRevision(), initialRevision + 1); |
202 |
- } |
203 |
- |
204 |
-@@ -192,9 +192,9 @@ namespace |
205 |
- { |
206 |
- TileCachedRecastMeshManager manager(mSettings); |
207 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
208 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
209 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
210 |
- const auto beforeAddRevision = manager.getRevision(); |
211 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
212 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
213 |
- EXPECT_EQ(manager.getRevision(), beforeAddRevision); |
214 |
- } |
215 |
- |
216 |
-@@ -203,9 +203,9 @@ namespace |
217 |
- TileCachedRecastMeshManager manager(mSettings); |
218 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
219 |
- const btTransform transform(btMatrix3x3::getIdentity(), btVector3(getTileSize(mSettings) / mSettings.mRecastScaleFactor, 0, 0)); |
220 |
-- manager.addObject(ObjectId(1ul), boxShape, transform, AreaType::AreaType_ground); |
221 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, transform, AreaType::AreaType_ground); |
222 |
- const auto beforeUpdateRevision = manager.getRevision(); |
223 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
224 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
225 |
- EXPECT_EQ(manager.getRevision(), beforeUpdateRevision + 1); |
226 |
- } |
227 |
- |
228 |
-@@ -213,9 +213,9 @@ namespace |
229 |
- { |
230 |
- TileCachedRecastMeshManager manager(mSettings); |
231 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
232 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
233 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
234 |
- const auto beforeUpdateRevision = manager.getRevision(); |
235 |
-- manager.updateObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
236 |
-+ manager.updateObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
237 |
- EXPECT_EQ(manager.getRevision(), beforeUpdateRevision); |
238 |
- } |
239 |
- |
240 |
-@@ -223,9 +223,9 @@ namespace |
241 |
- { |
242 |
- TileCachedRecastMeshManager manager(mSettings); |
243 |
- const btBoxShape boxShape(btVector3(20, 20, 100)); |
244 |
-- manager.addObject(ObjectId(1ul), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
245 |
-+ manager.addObject(ObjectId(&boxShape), boxShape, btTransform::getIdentity(), AreaType::AreaType_ground); |
246 |
- const auto beforeRemoveRevision = manager.getRevision(); |
247 |
-- manager.removeObject(ObjectId(1ul)); |
248 |
-+ manager.removeObject(ObjectId(&boxShape)); |
249 |
- EXPECT_EQ(manager.getRevision(), beforeRemoveRevision + 1); |
250 |
- } |
251 |
- |
252 |
-@@ -233,7 +233,7 @@ namespace |
253 |
- { |
254 |
- TileCachedRecastMeshManager manager(mSettings); |
255 |
- const auto beforeRemoveRevision = manager.getRevision(); |
256 |
-- manager.removeObject(ObjectId(1ul)); |
257 |
-+ manager.removeObject(ObjectId(&manager)); |
258 |
- EXPECT_EQ(manager.getRevision(), beforeRemoveRevision); |
259 |
- } |
260 |
- } |
261 |
-diff --git a/components/detournavigator/objectid.hpp b/components/detournavigator/objectid.hpp |
262 |
-index 3b56924b13..6ddcc9169d 100644 |
263 |
---- a/components/detournavigator/objectid.hpp |
264 |
-+++ b/components/detournavigator/objectid.hpp |
265 |
-@@ -10,7 +10,7 @@ namespace DetourNavigator |
266 |
- { |
267 |
- public: |
268 |
- template <class T> |
269 |
-- explicit ObjectId(const T value) throw() |
270 |
-+ explicit ObjectId(T* value) throw() |
271 |
- : mValue(reinterpret_cast<std::size_t>(value)) |
272 |
- { |
273 |
- } |
274 |
|
275 |
diff --git a/games-engines/openmw/files/openmw-0.46.0-floattest2.patch b/games-engines/openmw/files/openmw-0.46.0-floattest2.patch |
276 |
deleted file mode 100644 |
277 |
index ca6e355eab7d..000000000000 |
278 |
--- a/games-engines/openmw/files/openmw-0.46.0-floattest2.patch |
279 |
+++ /dev/null |
280 |
@@ -1,139 +0,0 @@ |
281 |
-https://gitlab.com/OpenMW/openmw/-/merge_requests/253 |
282 |
- |
283 |
---- a/apps/openmw_test_suite/detournavigator/navigator.cpp 2020-06-30 16:07:31.544410916 +0100 |
284 |
-+++ b/apps/openmw_test_suite/detournavigator/navigator.cpp 2020-06-30 16:08:50.405698937 +0100 |
285 |
-@@ -458,25 +458,25 @@ |
286 |
- |
287 |
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim, mAreaCosts, mOut), Status::Success); |
288 |
- |
289 |
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({ |
290 |
-- osg::Vec3f(0, 215, 185.33331298828125), |
291 |
-- osg::Vec3f(0, 186.6666717529296875, 185.33331298828125), |
292 |
-- osg::Vec3f(0, 158.333343505859375, 185.33331298828125), |
293 |
-- osg::Vec3f(0, 130.0000152587890625, 185.33331298828125), |
294 |
-- osg::Vec3f(0, 101.66667938232421875, 185.33331298828125), |
295 |
-- osg::Vec3f(0, 73.333343505859375, 185.33331298828125), |
296 |
-- osg::Vec3f(0, 45.0000152587890625, 185.33331298828125), |
297 |
-- osg::Vec3f(0, 16.6666812896728515625, 185.33331298828125), |
298 |
-- osg::Vec3f(0, -11.66664981842041015625, 185.33331298828125), |
299 |
-- osg::Vec3f(0, -39.999980926513671875, 185.33331298828125), |
300 |
-- osg::Vec3f(0, -68.33331298828125, 185.33331298828125), |
301 |
-- osg::Vec3f(0, -96.66664886474609375, 185.33331298828125), |
302 |
-- osg::Vec3f(0, -124.99997711181640625, 185.33331298828125), |
303 |
-- osg::Vec3f(0, -153.33331298828125, 185.33331298828125), |
304 |
-- osg::Vec3f(0, -181.6666412353515625, 185.33331298828125), |
305 |
-- osg::Vec3f(0, -209.999969482421875, 185.33331298828125), |
306 |
-- osg::Vec3f(0, -215, 185.33331298828125), |
307 |
-- })) << mPath; |
308 |
-+ EXPECT_THAT(mPath, ElementsAre( |
309 |
-+ Vec3fEq(0, 215, 185.33331298828125), |
310 |
-+ Vec3fEq(0, 186.6666717529296875, 185.33331298828125), |
311 |
-+ Vec3fEq(0, 158.333343505859375, 185.33331298828125), |
312 |
-+ Vec3fEq(0, 130.0000152587890625, 185.33331298828125), |
313 |
-+ Vec3fEq(0, 101.66667938232421875, 185.33331298828125), |
314 |
-+ Vec3fEq(0, 73.333343505859375, 185.33331298828125), |
315 |
-+ Vec3fEq(0, 45.0000152587890625, 185.33331298828125), |
316 |
-+ Vec3fEq(0, 16.6666812896728515625, 185.33331298828125), |
317 |
-+ Vec3fEq(0, -11.66664981842041015625, 185.33331298828125), |
318 |
-+ Vec3fEq(0, -39.999980926513671875, 185.33331298828125), |
319 |
-+ Vec3fEq(0, -68.33331298828125, 185.33331298828125), |
320 |
-+ Vec3fEq(0, -96.66664886474609375, 185.33331298828125), |
321 |
-+ Vec3fEq(0, -124.99997711181640625, 185.33331298828125), |
322 |
-+ Vec3fEq(0, -153.33331298828125, 185.33331298828125), |
323 |
-+ Vec3fEq(0, -181.6666412353515625, 185.33331298828125), |
324 |
-+ Vec3fEq(0, -209.999969482421875, 185.33331298828125), |
325 |
-+ Vec3fEq(0, -215, 185.33331298828125) |
326 |
-+ )); |
327 |
- } |
328 |
- |
329 |
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_water_when_ground_cross_water_with_swim_and_walk_flags) |
330 |
-@@ -505,25 +505,25 @@ |
331 |
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim | Flag_walk, mAreaCosts, mOut), |
332 |
- Status::Success); |
333 |
- |
334 |
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({ |
335 |
-- osg::Vec3f(0, 215, -94.75363922119140625), |
336 |
-- osg::Vec3f(0, 186.6666717529296875, -106.0000152587890625), |
337 |
-- osg::Vec3f(0, 158.333343505859375, -115.85507965087890625), |
338 |
-- osg::Vec3f(0, 130.0000152587890625, -125.71016693115234375), |
339 |
-- osg::Vec3f(0, 101.66667938232421875, -135.5652313232421875), |
340 |
-- osg::Vec3f(0, 73.333343505859375, -143.3333587646484375), |
341 |
-- osg::Vec3f(0, 45.0000152587890625, -143.3333587646484375), |
342 |
-- osg::Vec3f(0, 16.6666812896728515625, -143.3333587646484375), |
343 |
-- osg::Vec3f(0, -11.66664981842041015625, -143.3333587646484375), |
344 |
-- osg::Vec3f(0, -39.999980926513671875, -143.3333587646484375), |
345 |
-- osg::Vec3f(0, -68.33331298828125, -143.3333587646484375), |
346 |
-- osg::Vec3f(0, -96.66664886474609375, -137.3043670654296875), |
347 |
-- osg::Vec3f(0, -124.99997711181640625, -127.44930267333984375), |
348 |
-- osg::Vec3f(0, -153.33331298828125, -117.59423065185546875), |
349 |
-- osg::Vec3f(0, -181.6666412353515625, -107.73915863037109375), |
350 |
-- osg::Vec3f(0, -209.999969482421875, -97.7971343994140625), |
351 |
-- osg::Vec3f(0, -215, -94.75363922119140625), |
352 |
-- })) << mPath; |
353 |
-+ EXPECT_THAT(mPath, ElementsAre( |
354 |
-+ Vec3fEq(0, 215, -94.75363922119140625), |
355 |
-+ Vec3fEq(0, 186.6666717529296875, -106.0000152587890625), |
356 |
-+ Vec3fEq(0, 158.333343505859375, -115.85507965087890625), |
357 |
-+ Vec3fEq(0, 130.0000152587890625, -125.71016693115234375), |
358 |
-+ Vec3fEq(0, 101.66667938232421875, -135.5652313232421875), |
359 |
-+ Vec3fEq(0, 73.333343505859375, -143.3333587646484375), |
360 |
-+ Vec3fEq(0, 45.0000152587890625, -143.3333587646484375), |
361 |
-+ Vec3fEq(0, 16.6666812896728515625, -143.3333587646484375), |
362 |
-+ Vec3fEq(0, -11.66664981842041015625, -143.3333587646484375), |
363 |
-+ Vec3fEq(0, -39.999980926513671875, -143.3333587646484375), |
364 |
-+ Vec3fEq(0, -68.33331298828125, -143.3333587646484375), |
365 |
-+ Vec3fEq(0, -96.66664886474609375, -137.3043670654296875), |
366 |
-+ Vec3fEq(0, -124.99997711181640625, -127.44930267333984375), |
367 |
-+ Vec3fEq(0, -153.33331298828125, -117.59423065185546875), |
368 |
-+ Vec3fEq(0, -181.6666412353515625, -107.73915863037109375), |
369 |
-+ Vec3fEq(0, -209.999969482421875, -97.7971343994140625), |
370 |
-+ Vec3fEq(0, -215, -94.75363922119140625) |
371 |
-+ )); |
372 |
- } |
373 |
- |
374 |
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_water_when_ground_cross_water_with_max_int_cells_size_and_swim_and_walk_flags) |
375 |
-@@ -552,25 +552,25 @@ |
376 |
- EXPECT_EQ(mNavigator->findPath(mAgentHalfExtents, mStepSize, mStart, mEnd, Flag_swim | Flag_walk, mAreaCosts, mOut), |
377 |
- Status::Success); |
378 |
- |
379 |
-- EXPECT_EQ(mPath, std::deque<osg::Vec3f>({ |
380 |
-- osg::Vec3f(0, 215, -94.75363922119140625), |
381 |
-- osg::Vec3f(0, 186.6666717529296875, -106.0000152587890625), |
382 |
-- osg::Vec3f(0, 158.333343505859375, -115.85507965087890625), |
383 |
-- osg::Vec3f(0, 130.0000152587890625, -125.71016693115234375), |
384 |
-- osg::Vec3f(0, 101.66667938232421875, -135.5652313232421875), |
385 |
-- osg::Vec3f(0, 73.333343505859375, -143.3333587646484375), |
386 |
-- osg::Vec3f(0, 45.0000152587890625, -143.3333587646484375), |
387 |
-- osg::Vec3f(0, 16.6666812896728515625, -143.3333587646484375), |
388 |
-- osg::Vec3f(0, -11.66664981842041015625, -143.3333587646484375), |
389 |
-- osg::Vec3f(0, -39.999980926513671875, -143.3333587646484375), |
390 |
-- osg::Vec3f(0, -68.33331298828125, -143.3333587646484375), |
391 |
-- osg::Vec3f(0, -96.66664886474609375, -137.3043670654296875), |
392 |
-- osg::Vec3f(0, -124.99997711181640625, -127.44930267333984375), |
393 |
-- osg::Vec3f(0, -153.33331298828125, -117.59423065185546875), |
394 |
-- osg::Vec3f(0, -181.6666412353515625, -107.73915863037109375), |
395 |
-- osg::Vec3f(0, -209.999969482421875, -97.7971343994140625), |
396 |
-- osg::Vec3f(0, -215, -94.75363922119140625), |
397 |
-- })) << mPath; |
398 |
-+ EXPECT_THAT(mPath, ElementsAre( |
399 |
-+ Vec3fEq(0, 215, -94.75363922119140625), |
400 |
-+ Vec3fEq(0, 186.6666717529296875, -106.0000152587890625), |
401 |
-+ Vec3fEq(0, 158.333343505859375, -115.85507965087890625), |
402 |
-+ Vec3fEq(0, 130.0000152587890625, -125.71016693115234375), |
403 |
-+ Vec3fEq(0, 101.66667938232421875, -135.5652313232421875), |
404 |
-+ Vec3fEq(0, 73.333343505859375, -143.3333587646484375), |
405 |
-+ Vec3fEq(0, 45.0000152587890625, -143.3333587646484375), |
406 |
-+ Vec3fEq(0, 16.6666812896728515625, -143.3333587646484375), |
407 |
-+ Vec3fEq(0, -11.66664981842041015625, -143.3333587646484375), |
408 |
-+ Vec3fEq(0, -39.999980926513671875, -143.3333587646484375), |
409 |
-+ Vec3fEq(0, -68.33331298828125, -143.3333587646484375), |
410 |
-+ Vec3fEq(0, -96.66664886474609375, -137.3043670654296875), |
411 |
-+ Vec3fEq(0, -124.99997711181640625, -127.44930267333984375), |
412 |
-+ Vec3fEq(0, -153.33331298828125, -117.59423065185546875), |
413 |
-+ Vec3fEq(0, -181.6666412353515625, -107.73915863037109375), |
414 |
-+ Vec3fEq(0, -209.999969482421875, -97.7971343994140625), |
415 |
-+ Vec3fEq(0, -215, -94.75363922119140625) |
416 |
-+ )); |
417 |
- } |
418 |
- |
419 |
- TEST_F(DetourNavigatorNavigatorTest, path_should_be_over_ground_when_ground_cross_water_with_only_walk_flag) |
420 |
|
421 |
diff --git a/games-engines/openmw/files/openmw-0.46.0-gcc11.patch b/games-engines/openmw/files/openmw-0.46.0-gcc11.patch |
422 |
deleted file mode 100644 |
423 |
index 0dc3106fb3bf..000000000000 |
424 |
--- a/games-engines/openmw/files/openmw-0.46.0-gcc11.patch |
425 |
+++ /dev/null |
426 |
@@ -1,36 +0,0 @@ |
427 |
-diff --git a/components/sceneutil/mwshadowtechnique.cpp b/components/sceneutil/mwshadowtechnique.cpp |
428 |
-index cb3a1b2..62cfeec 100644 |
429 |
---- a/components/sceneutil/mwshadowtechnique.cpp |
430 |
-+++ b/components/sceneutil/mwshadowtechnique.cpp |
431 |
-@@ -24,6 +24,7 @@ |
432 |
- #include <osg/io_utils> |
433 |
- |
434 |
- #include <sstream> |
435 |
-+#include <limits> |
436 |
- |
437 |
- namespace { |
438 |
- |
439 |
-diff --git a/components/sceneutil/shadow.cpp b/components/sceneutil/shadow.cpp |
440 |
-index 035c19a..aba1b81 100644 |
441 |
---- a/components/sceneutil/shadow.cpp |
442 |
-+++ b/components/sceneutil/shadow.cpp |
443 |
-@@ -4,6 +4,7 @@ |
444 |
- |
445 |
- #include <components/sceneutil/vismask.hpp> |
446 |
- #include <components/settings/settings.hpp> |
447 |
-+#include <limits> |
448 |
- |
449 |
- namespace SceneUtil |
450 |
- { |
451 |
-diff --git a/components/terrain/quadtreeworld.cpp b/components/terrain/quadtreeworld.cpp |
452 |
-index f998b78..e0e47dd 100644 |
453 |
---- a/components/terrain/quadtreeworld.cpp |
454 |
-+++ b/components/terrain/quadtreeworld.cpp |
455 |
-@@ -3,6 +3,7 @@ |
456 |
- #include <osgUtil/CullVisitor> |
457 |
- |
458 |
- #include <sstream> |
459 |
-+#include <limits> |
460 |
- |
461 |
- #include <components/misc/constants.hpp> |
462 |
- #include <components/sceneutil/mwshadowtechnique.hpp> |
463 |
|
464 |
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 |
465 |
deleted file mode 100644 |
466 |
index 803707498e43..000000000000 |
467 |
--- a/games-engines/openmw/files/openmw-0.46.0-missing-include.patch |
468 |
+++ /dev/null |
469 |
@@ -1,19 +0,0 @@ |
470 |
-Fixes build on ~arch system, patch from upstream, to be dropped for 0.47 |
471 |
- |
472 |
-From 10daadefbea1f62a818c339dc7f3d69a858bc8a6 Mon Sep 17 00:00:00 2001 |
473 |
-From: elsid <elsid.mail@×××××.com> |
474 |
-Date: Thu, 30 Apr 2020 21:57:22 +0200 |
475 |
-Subject: [PATCH] Add missing include |
476 |
- |
477 |
-diff --git a/components/detournavigator/offmeshconnectionsmanager.hpp b/components/detournavigator/offmeshconnectionsmanager.hpp |
478 |
-index 30d7976aec..155ce32963 100644 |
479 |
---- a/components/detournavigator/offmeshconnectionsmanager.hpp |
480 |
-+++ b/components/detournavigator/offmeshconnectionsmanager.hpp |
481 |
-@@ -13,6 +13,7 @@ |
482 |
- |
483 |
- #include <boost/optional.hpp> |
484 |
- |
485 |
-+#include <algorithm> |
486 |
- #include <map> |
487 |
- #include <mutex> |
488 |
- #include <unordered_map> |
489 |
|
490 |
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 |
491 |
deleted file mode 100644 |
492 |
index a14f58bc9e79..000000000000 |
493 |
--- a/games-engines/openmw/files/openmw-0.46.0-mygui-license.patch |
494 |
+++ /dev/null |
495 |
@@ -1,16 +0,0 @@ |
496 |
-We don't install license files |
497 |
- |
498 |
-diff --git a/CMakeLists.txt b/CMakeLists.txt |
499 |
-index d69352c94..5f97c86e9 100644 |
500 |
---- a/CMakeLists.txt |
501 |
-+++ b/CMakeLists.txt |
502 |
-@@ -470,9 +470,6 @@ IF(NOT WIN32 AND NOT APPLE) |
503 |
- # INSTALL(PROGRAMS "${OpenMW_BINARY_DIR}/Plugin_MyGUI_OpenMW_Resources.so" DESTINATION "${LIBDIR}" ) |
504 |
- #ENDIF(BUILD_MYGUI_PLUGIN) |
505 |
- |
506 |
-- # Install licenses |
507 |
-- INSTALL(FILES "files/mygui/DejaVu Font License.txt" DESTINATION "${LICDIR}" ) |
508 |
-- |
509 |
- # Install icon and desktop file |
510 |
- INSTALL(FILES "${OpenMW_BINARY_DIR}/org.openmw.launcher.desktop" DESTINATION "${DATAROOTDIR}/applications" COMPONENT "openmw") |
511 |
- INSTALL(FILES "${OpenMW_SOURCE_DIR}/files/launcher/images/openmw.png" DESTINATION "${ICONDIR}" COMPONENT "openmw") |
512 |
|
513 |
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 |
514 |
deleted file mode 100644 |
515 |
index 315b0753589d..000000000000 |
516 |
--- a/games-engines/openmw/files/openmw-0.46.0-nifbullet-test.patch |
517 |
+++ /dev/null |
518 |
@@ -1,335 +0,0 @@ |
519 |
-Fixes test on i686 system, patch from upstream, to be dropped for 0.47 |
520 |
- |
521 |
-From 14d0ca4cd3e9aa9e329590913d5f8fb55077587d Mon Sep 17 00:00:00 2001 |
522 |
-From: elsid <elsid.mail@×××××.com> |
523 |
-Date: Sun, 25 Nov 2018 11:42:26 +0300 |
524 |
-Subject: [PATCH 1/4] Cast float to btScalar |
525 |
- |
526 |
---- |
527 |
- .../detournavigator/recastmeshbuilder.cpp | 18 +++++++++--------- |
528 |
- 1 file changed, 9 insertions(+), 9 deletions(-) |
529 |
- |
530 |
-diff --git a/components/detournavigator/recastmeshbuilder.cpp b/components/detournavigator/recastmeshbuilder.cpp |
531 |
-index d96ba2f29c..f613683571 100644 |
532 |
---- a/components/detournavigator/recastmeshbuilder.cpp |
533 |
-+++ b/components/detournavigator/recastmeshbuilder.cpp |
534 |
-@@ -163,15 +163,15 @@ namespace DetourNavigator |
535 |
- |
536 |
- transformBoundingBox(transform, aabbMin, aabbMax); |
537 |
- |
538 |
-- aabbMin.setX(std::max(mBounds.mMin.x(), aabbMin.x())); |
539 |
-- aabbMin.setX(std::min(mBounds.mMax.x(), aabbMin.x())); |
540 |
-- aabbMin.setY(std::max(mBounds.mMin.y(), aabbMin.y())); |
541 |
-- aabbMin.setY(std::min(mBounds.mMax.y(), aabbMin.y())); |
542 |
-- |
543 |
-- aabbMax.setX(std::max(mBounds.mMin.x(), aabbMax.x())); |
544 |
-- aabbMax.setX(std::min(mBounds.mMax.x(), aabbMax.x())); |
545 |
-- aabbMax.setY(std::max(mBounds.mMin.y(), aabbMax.y())); |
546 |
-- aabbMax.setY(std::min(mBounds.mMax.y(), aabbMax.y())); |
547 |
-+ aabbMin.setX(std::max(static_cast<btScalar>(mBounds.mMin.x()), aabbMin.x())); |
548 |
-+ aabbMin.setX(std::min(static_cast<btScalar>(mBounds.mMax.x()), aabbMin.x())); |
549 |
-+ aabbMin.setY(std::max(static_cast<btScalar>(mBounds.mMin.y()), aabbMin.y())); |
550 |
-+ aabbMin.setY(std::min(static_cast<btScalar>(mBounds.mMax.y()), aabbMin.y())); |
551 |
-+ |
552 |
-+ aabbMax.setX(std::max(static_cast<btScalar>(mBounds.mMin.x()), aabbMax.x())); |
553 |
-+ aabbMax.setX(std::min(static_cast<btScalar>(mBounds.mMax.x()), aabbMax.x())); |
554 |
-+ aabbMax.setY(std::max(static_cast<btScalar>(mBounds.mMin.y()), aabbMax.y())); |
555 |
-+ aabbMax.setY(std::min(static_cast<btScalar>(mBounds.mMax.y()), aabbMax.y())); |
556 |
- |
557 |
- transformBoundingBox(transform.inverse(), aabbMin, aabbMax); |
558 |
- |
559 |
- |
560 |
-From ef5a5ef43f9a91795339ef3ea97c505c1e9dc28d Mon Sep 17 00:00:00 2001 |
561 |
-From: elsid <elsid.mail@×××××.com> |
562 |
-Date: Sun, 25 Nov 2018 14:03:28 +0300 |
563 |
-Subject: [PATCH 2/4] Print not matched values with full precision |
564 |
- |
565 |
---- |
566 |
- .../detournavigator/operators.hpp | 62 +++++++++++++++---- |
567 |
- 1 file changed, 51 insertions(+), 11 deletions(-) |
568 |
- |
569 |
-diff --git a/apps/openmw_test_suite/detournavigator/operators.hpp b/apps/openmw_test_suite/detournavigator/operators.hpp |
570 |
-index a473632bab..e34d6278a7 100644 |
571 |
---- a/apps/openmw_test_suite/detournavigator/operators.hpp |
572 |
-+++ b/apps/openmw_test_suite/detournavigator/operators.hpp |
573 |
-@@ -20,22 +20,62 @@ namespace DetourNavigator |
574 |
- } |
575 |
- } |
576 |
- |
577 |
-+namespace |
578 |
-+{ |
579 |
-+ template <class T> |
580 |
-+ struct Wrapper { |
581 |
-+ const T& mValue; |
582 |
-+ }; |
583 |
-+ |
584 |
-+ template <class Range> |
585 |
-+ inline testing::Message& writeRange(testing::Message& message, const Range& range) |
586 |
-+ { |
587 |
-+ message << "{\n"; |
588 |
-+ for (const auto& v : range) |
589 |
-+ message << Wrapper<typename std::decay<decltype(v)>::type> {v} << ",\n"; |
590 |
-+ return message << "}"; |
591 |
-+ } |
592 |
-+} |
593 |
-+ |
594 |
- namespace testing |
595 |
- { |
596 |
-+ template <> |
597 |
-+ inline testing::Message& Message::operator <<(const osg::Vec3f& value) |
598 |
-+ { |
599 |
-+ return (*this) << "osg::Vec3f(" << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.x() |
600 |
-+ << ", " << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.y() |
601 |
-+ << ", " << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.z() |
602 |
-+ << ')'; |
603 |
-+ } |
604 |
-+ |
605 |
-+ template <> |
606 |
-+ inline testing::Message& Message::operator <<(const Wrapper<osg::Vec3f>& value) |
607 |
-+ { |
608 |
-+ return (*this) << value.mValue; |
609 |
-+ } |
610 |
-+ |
611 |
-+ template <> |
612 |
-+ inline testing::Message& Message::operator <<(const Wrapper<float>& value) |
613 |
-+ { |
614 |
-+ return (*this) << std::setprecision(std::numeric_limits<float>::max_exponent10) << value.mValue; |
615 |
-+ } |
616 |
-+ |
617 |
- template <> |
618 |
- inline testing::Message& Message::operator <<(const std::deque<osg::Vec3f>& value) |
619 |
- { |
620 |
-- (*this) << "{\n"; |
621 |
-- for (const auto& v : value) |
622 |
-- { |
623 |
-- std::ostringstream stream; |
624 |
-- stream << "osg::Vec3f(" |
625 |
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.x() << ", " |
626 |
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.y() << ", " |
627 |
-- << std::setprecision(std::numeric_limits<float>::max_exponent10) << v.z() << ")"; |
628 |
-- (*this) << stream.str() << ",\n"; |
629 |
-- } |
630 |
-- return (*this) << "}"; |
631 |
-+ return writeRange(*this, value); |
632 |
-+ } |
633 |
-+ |
634 |
-+ template <> |
635 |
-+ inline testing::Message& Message::operator <<(const std::vector<osg::Vec3f>& value) |
636 |
-+ { |
637 |
-+ return writeRange(*this, value); |
638 |
-+ } |
639 |
-+ |
640 |
-+ template <> |
641 |
-+ inline testing::Message& Message::operator <<(const std::vector<float>& value) |
642 |
-+ { |
643 |
-+ return writeRange(*this, value); |
644 |
- } |
645 |
- } |
646 |
- |
647 |
- |
648 |
-From 2d7c3bae6127fc3717d5e3a8e8830215450fb47f Mon Sep 17 00:00:00 2001 |
649 |
-From: elsid <elsid.mail@×××××.com> |
650 |
-Date: Sun, 25 Nov 2018 11:46:09 +0300 |
651 |
-Subject: [PATCH 3/4] Support bullet with double precision |
652 |
- |
653 |
---- |
654 |
- apps/openmw/mwphysics/heightfield.cpp | 38 ++++++++++++++++++- |
655 |
- apps/openmw/mwphysics/heightfield.hpp | 5 +++ |
656 |
- .../detournavigator/recastmeshbuilder.cpp | 4 +- |
657 |
- .../nifloader/testbulletnifloader.cpp | 36 ++++++++++++++++-- |
658 |
- 4 files changed, 77 insertions(+), 6 deletions(-) |
659 |
- |
660 |
-diff --git a/apps/openmw/mwphysics/heightfield.cpp b/apps/openmw/mwphysics/heightfield.cpp |
661 |
-index 52aed9c072..e1448116bf 100644 |
662 |
---- a/apps/openmw/mwphysics/heightfield.cpp |
663 |
-+++ b/apps/openmw/mwphysics/heightfield.cpp |
664 |
-@@ -7,12 +7,48 @@ |
665 |
- |
666 |
- #include <LinearMath/btTransform.h> |
667 |
- |
668 |
-+#include <type_traits> |
669 |
-+ |
670 |
-+namespace |
671 |
-+{ |
672 |
-+ template <class T> |
673 |
-+ auto makeHeights(const T* heights, float sqrtVerts) |
674 |
-+ -> std::enable_if_t<std::is_same<btScalar, T>::value, std::vector<btScalar>> |
675 |
-+ { |
676 |
-+ return {}; |
677 |
-+ } |
678 |
-+ |
679 |
-+ template <class T> |
680 |
-+ auto makeHeights(const T* heights, float sqrtVerts) |
681 |
-+ -> std::enable_if_t<!std::is_same<btScalar, T>::value, std::vector<btScalar>> |
682 |
-+ { |
683 |
-+ return std::vector<btScalar>(heights, heights + static_cast<std::ptrdiff_t>(sqrtVerts * sqrtVerts)); |
684 |
-+ } |
685 |
-+ |
686 |
-+ template <class T> |
687 |
-+ auto getHeights(const T* floatHeights, const std::vector<btScalar>&) |
688 |
-+ -> std::enable_if_t<std::is_same<btScalar, T>::value, const btScalar*> |
689 |
-+ { |
690 |
-+ return floatHeights; |
691 |
-+ } |
692 |
-+ |
693 |
-+ template <class T> |
694 |
-+ auto getHeights(const T*, const std::vector<btScalar>& btScalarHeights) |
695 |
-+ -> std::enable_if_t<!std::is_same<btScalar, T>::value, const btScalar*> |
696 |
-+ { |
697 |
-+ return btScalarHeights.data(); |
698 |
-+ } |
699 |
-+} |
700 |
-+ |
701 |
- namespace MWPhysics |
702 |
- { |
703 |
- HeightField::HeightField(const float* heights, int x, int y, float triSize, float sqrtVerts, float minH, float maxH, const osg::Object* holdObject) |
704 |
-+ : mHeights(makeHeights(heights, sqrtVerts)) |
705 |
- { |
706 |
- mShape = new btHeightfieldTerrainShape( |
707 |
-- sqrtVerts, sqrtVerts, heights, 1, |
708 |
-+ sqrtVerts, sqrtVerts, |
709 |
-+ getHeights(heights, mHeights), |
710 |
-+ 1, |
711 |
- minH, maxH, 2, |
712 |
- PHY_FLOAT, false |
713 |
- ); |
714 |
-diff --git a/apps/openmw/mwphysics/heightfield.hpp b/apps/openmw/mwphysics/heightfield.hpp |
715 |
-index f248186db3..2ba58afff8 100644 |
716 |
---- a/apps/openmw/mwphysics/heightfield.hpp |
717 |
-+++ b/apps/openmw/mwphysics/heightfield.hpp |
718 |
-@@ -3,6 +3,10 @@ |
719 |
- |
720 |
- #include <osg/ref_ptr> |
721 |
- |
722 |
-+#include <LinearMath/btScalar.h> |
723 |
-+ |
724 |
-+#include <vector> |
725 |
-+ |
726 |
- class btCollisionObject; |
727 |
- class btHeightfieldTerrainShape; |
728 |
- |
729 |
-@@ -27,6 +31,7 @@ namespace MWPhysics |
730 |
- btHeightfieldTerrainShape* mShape; |
731 |
- btCollisionObject* mCollisionObject; |
732 |
- osg::ref_ptr<const osg::Object> mHoldObject; |
733 |
-+ std::vector<btScalar> mHeights; |
734 |
- |
735 |
- void operator=(const HeightField&); |
736 |
- HeightField(const HeightField&); |
737 |
-diff --git a/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp b/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp |
738 |
-index 6c474765de..c86dee6e55 100644 |
739 |
---- a/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp |
740 |
-+++ b/apps/openmw_test_suite/detournavigator/recastmeshbuilder.cpp |
741 |
-@@ -363,11 +363,11 @@ namespace |
742 |
- AreaType_ground |
743 |
- ); |
744 |
- const auto recastMesh = builder.create(mGeneration, mRevision); |
745 |
-- EXPECT_EQ(recastMesh->getVertices(), std::vector<float>({ |
746 |
-+ EXPECT_THAT(recastMesh->getVertices(), Pointwise(FloatNear(1e-5), std::vector<float>({ |
747 |
- 1.41421353816986083984375, 0, 1.1920928955078125e-07, |
748 |
- -1.41421353816986083984375, 0, -1.1920928955078125e-07, |
749 |
- 1.1920928955078125e-07, 0, -1.41421353816986083984375, |
750 |
-- })); |
751 |
-+ }))); |
752 |
- EXPECT_EQ(recastMesh->getIndices(), std::vector<int>({0, 1, 2})); |
753 |
- EXPECT_EQ(recastMesh->getAreaTypes(), std::vector<AreaType>({AreaType_ground})); |
754 |
- } |
755 |
-diff --git a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp |
756 |
-index 36f2512462..6ec94fd68f 100644 |
757 |
---- a/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp |
758 |
-+++ b/apps/openmw_test_suite/nifloader/testbulletnifloader.cpp |
759 |
-@@ -9,6 +9,8 @@ |
760 |
- #include <gtest/gtest.h> |
761 |
- #include <gmock/gmock.h> |
762 |
- |
763 |
-+#include <algorithm> |
764 |
-+ |
765 |
- namespace |
766 |
- { |
767 |
- template <class T> |
768 |
-@@ -30,6 +32,34 @@ namespace |
769 |
- shape.processAllTriangles(&callback, aabbMin, aabbMax); |
770 |
- return result; |
771 |
- } |
772 |
-+ |
773 |
-+ bool isNear(btScalar lhs, btScalar rhs) |
774 |
-+ { |
775 |
-+ return std::abs(lhs - rhs) <= 1e-5; |
776 |
-+ } |
777 |
-+ |
778 |
-+ bool isNear(const btVector3& lhs, const btVector3& rhs) |
779 |
-+ { |
780 |
-+ return std::equal( |
781 |
-+ static_cast<const btScalar*>(lhs), |
782 |
-+ static_cast<const btScalar*>(lhs) + 3, |
783 |
-+ static_cast<const btScalar*>(rhs), |
784 |
-+ [] (btScalar lhs, btScalar rhs) { return isNear(lhs, rhs); } |
785 |
-+ ); |
786 |
-+ } |
787 |
-+ |
788 |
-+ bool isNear(const btMatrix3x3& lhs, const btMatrix3x3& rhs) |
789 |
-+ { |
790 |
-+ for (int i = 0; i < 3; ++i) |
791 |
-+ if (!isNear(lhs[i], rhs[i])) |
792 |
-+ return false; |
793 |
-+ return true; |
794 |
-+ } |
795 |
-+ |
796 |
-+ bool isNear(const btTransform& lhs, const btTransform& rhs) |
797 |
-+ { |
798 |
-+ return isNear(lhs.getOrigin(), rhs.getOrigin()) && isNear(lhs.getBasis(), rhs.getBasis()); |
799 |
-+ } |
800 |
- } |
801 |
- |
802 |
- static std::ostream& operator <<(std::ostream& stream, const btVector3& value) |
803 |
-@@ -157,7 +187,7 @@ static bool operator ==(const btCompoundShape& lhs, const btCompoundShape& rhs) |
804 |
- for (int i = 0; i < lhs.getNumChildShapes(); ++i) |
805 |
- { |
806 |
- if (!compareObjects(lhs.getChildShape(i), rhs.getChildShape(i)) |
807 |
-- || !(lhs.getChildTransform(i) == rhs.getChildTransform(i))) |
808 |
-+ || !isNear(lhs.getChildTransform(i), rhs.getChildTransform(i))) |
809 |
- return false; |
810 |
- } |
811 |
- return true; |
812 |
-@@ -165,13 +195,13 @@ static bool operator ==(const btCompoundShape& lhs, const btCompoundShape& rhs) |
813 |
- |
814 |
- static bool operator ==(const btBoxShape& lhs, const btBoxShape& rhs) |
815 |
- { |
816 |
-- return lhs.getLocalScaling() == rhs.getLocalScaling() |
817 |
-+ return isNear(lhs.getLocalScaling(), rhs.getLocalScaling()) |
818 |
- && lhs.getHalfExtentsWithoutMargin() == rhs.getHalfExtentsWithoutMargin(); |
819 |
- } |
820 |
- |
821 |
- static bool operator ==(const btBvhTriangleMeshShape& lhs, const btBvhTriangleMeshShape& rhs) |
822 |
- { |
823 |
-- return lhs.getLocalScaling() == rhs.getLocalScaling() |
824 |
-+ return isNear(lhs.getLocalScaling(), rhs.getLocalScaling()) |
825 |
- && lhs.usesQuantizedAabbCompression() == rhs.usesQuantizedAabbCompression() |
826 |
- && lhs.getOwnsBvh() == rhs.getOwnsBvh() |
827 |
- && getTriangles(lhs) == getTriangles(rhs); |
828 |
- |
829 |
-From 66da72048a5893bc8c9b20f6f7210fd45b6a74bf Mon Sep 17 00:00:00 2001 |
830 |
-From: elsid <elsid.mail@×××××.com> |
831 |
-Date: Wed, 20 Feb 2019 23:41:16 +0300 |
832 |
-Subject: [PATCH 4/4] Update bullet for windows up to 2.87 |
833 |
- |
834 |
---- |
835 |
- CI/before_script.msvc.sh | 12 ++++++------ |
836 |
- appveyor.yml | 4 ++-- |
837 |
- 2 files changed, 8 insertions(+), 8 deletions(-) |
838 |
- |
839 |
-diff --git a/appveyor.yml b/appveyor.yml |
840 |
-index 3057cc7257..e2c13ed948 100644 |
841 |
---- a/appveyor.yml |
842 |
-+++ b/appveyor.yml |
843 |
-@@ -30,8 +30,8 @@ configuration: |
844 |
- clone_depth: 1 |
845 |
- |
846 |
- cache: |
847 |
-- - C:\projects\openmw\deps\Bullet-2.86-msvc2015-win32.7z |
848 |
-- - C:\projects\openmw\deps\Bullet-2.86-msvc2015-win64.7z |
849 |
-+ - C:\projects\openmw\deps\Bullet-2.87-msvc2015-win32.7z |
850 |
-+ - C:\projects\openmw\deps\Bullet-2.87-msvc2015-win64.7z |
851 |
- - C:\projects\openmw\deps\MyGUI-3.2.2-msvc2015-win32.7z |
852 |
- - C:\projects\openmw\deps\MyGUI-3.2.2-msvc2015-win64.7z |
853 |
- - C:\projects\openmw\deps\OSG-3.4.1-scrawl-msvc2015-win32.7z |
854 |
|
855 |
diff --git a/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch b/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch |
856 |
deleted file mode 100644 |
857 |
index ea3242d73ca8..000000000000 |
858 |
--- a/games-engines/openmw/files/openmw-0.46.0-recastnavigation.patch |
859 |
+++ /dev/null |
860 |
@@ -1,24 +0,0 @@ |
861 |
-Use system recastnavigation instead of bundled one |
862 |
- |
863 |
-diff --git a/CMakeLists.txt b/CMakeLists.txt |
864 |
-index d69352c94..cfb53dc5b 100644 |
865 |
---- a/CMakeLists.txt |
866 |
-+++ b/CMakeLists.txt |
867 |
-@@ -596,7 +596,16 @@ endif(WIN32) |
868 |
- # Extern |
869 |
- set(RECASTNAVIGATION_STATIC ON CACHE BOOL "Build recastnavigation static libraries") |
870 |
- |
871 |
--add_subdirectory (extern/recastnavigation EXCLUDE_FROM_ALL) |
872 |
-+add_library(RecastNavigation::DebugUtils SHARED IMPORTED) |
873 |
-+add_library(RecastNavigation::Detour SHARED IMPORTED) |
874 |
-+add_library(RecastNavigation::Recast SHARED IMPORTED) |
875 |
-+set_target_properties(RecastNavigation::DebugUtils PROPERTIES |
876 |
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libDebugUtils.so) |
877 |
-+set_target_properties(RecastNavigation::Detour PROPERTIES |
878 |
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libDetour.so) |
879 |
-+set_target_properties(RecastNavigation::Recast PROPERTIES |
880 |
-+ IMPORTED_LOCATION GENTOO_RECAST_LIBDIR/libRecast.so) |
881 |
-+ |
882 |
- add_subdirectory (extern/osg-ffmpeg-videoplayer) |
883 |
- add_subdirectory (extern/oics) |
884 |
- if (BUILD_OPENCS) |
885 |
|
886 |
diff --git a/games-engines/openmw/openmw-0.46.0-r2.ebuild b/games-engines/openmw/openmw-0.46.0-r2.ebuild |
887 |
deleted file mode 100644 |
888 |
index 24532e11f3da..000000000000 |
889 |
--- a/games-engines/openmw/openmw-0.46.0-r2.ebuild |
890 |
+++ /dev/null |
891 |
@@ -1,163 +0,0 @@ |
892 |
-# Copyright 1999-2021 Gentoo Authors |
893 |
-# Distributed under the terms of the GNU General Public License v2 |
894 |
- |
895 |
-EAPI=7 |
896 |
- |
897 |
-inherit cmake flag-o-matic xdg-utils readme.gentoo-r1 |
898 |
- |
899 |
-DESCRIPTION="Open source reimplementation of TES III: Morrowind" |
900 |
-HOMEPAGE="https://openmw.org/ https://gitlab.com/OpenMW/openmw" |
901 |
- |
902 |
-if [[ ${PV} == *9999* ]]; then |
903 |
- inherit git-r3 |
904 |
- EGIT_REPO_URI="https://github.com/OpenMW/openmw.git" |
905 |
-else |
906 |
- SRC_URI=" |
907 |
- https://github.com/OpenMW/openmw/archive/${P}.tar.gz |
908 |
- https://gitlab.com/OpenMW/openmw/-/merge_requests/163.patch -> ${P}-floattest.patch |
909 |
- " |
910 |
- KEYWORDS="~amd64 ~x86" |
911 |
- S="${WORKDIR}/${PN}-${P}" |
912 |
-fi |
913 |
- |
914 |
-LICENSE="GPL-3 MIT BitstreamVera ZLIB" |
915 |
-SLOT="0" |
916 |
-IUSE="doc devtools +osg-fork test +qt5" |
917 |
-RESTRICT="!test? ( test )" |
918 |
- |
919 |
-# FIXME: Unbundle dev-games/openscenegraph-qt in extern/osgQt directory, |
920 |
-# used when BUILD_OPENCS flag is enabled. See bug #676266. |
921 |
- |
922 |
-RDEPEND=" |
923 |
- dev-games/mygui |
924 |
- dev-games/recastnavigation |
925 |
- dev-libs/boost:=[threads(+),zlib] |
926 |
- dev-libs/tinyxml:=[stl] |
927 |
- media-libs/libsdl2[joystick,opengl,video] |
928 |
- media-libs/openal |
929 |
- media-video/ffmpeg:= |
930 |
- >=sci-physics/bullet-2.86:=[-double-precision] |
931 |
- virtual/opengl |
932 |
- osg-fork? ( =dev-games/openscenegraph-openmw-3.4*:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) |
933 |
- !osg-fork? ( >=dev-games/openscenegraph-3.5.5:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) |
934 |
- qt5? ( |
935 |
- app-arch/unshield |
936 |
- dev-qt/qtcore:5 |
937 |
- dev-qt/qtgui:5 |
938 |
- dev-qt/qtnetwork:5 |
939 |
- dev-qt/qtopengl:5 |
940 |
- dev-qt/qtwidgets:5 |
941 |
- ) |
942 |
-" |
943 |
- |
944 |
-DEPEND="${RDEPEND}" |
945 |
- |
946 |
-BDEPEND=" |
947 |
- virtual/pkgconfig |
948 |
- doc? ( |
949 |
- app-doc/doxygen[doc] |
950 |
- dev-python/sphinx |
951 |
- ) |
952 |
- test? ( |
953 |
- dev-cpp/gtest |
954 |
- ) |
955 |
-" |
956 |
- |
957 |
-PATCHES=( |
958 |
- "${FILESDIR}"/openmw-0.46.0-mygui-license.patch |
959 |
- "${FILESDIR}"/openmw-0.46.0-recastnavigation.patch |
960 |
- "${FILESDIR}"/openmw-0.46.0-missing-include.patch |
961 |
- "${FILESDIR}"/openmw-0.46.0-fix-cast.patch |
962 |
- "${FILESDIR}"/openmw-0.46.0-nifbullet-test.patch |
963 |
- # https://gitlab.com/OpenMW/openmw/-/merge_requests/163 |
964 |
- "${DISTDIR}"/openmw-0.46.0-floattest.patch |
965 |
- "${FILESDIR}"/openmw-0.46.0-floattest2.patch |
966 |
- "${FILESDIR}"/openmw-0.46.0-gcc11.patch |
967 |
- "${FILESDIR}"/openmw-0.46.0-boost-1.77.patch |
968 |
-) |
969 |
- |
970 |
-src_prepare() { |
971 |
- cmake_src_prepare |
972 |
- |
973 |
- # Use the system tinyxml headers |
974 |
- rm -v extern/oics/tiny{str,xml}* || die |
975 |
- |
976 |
- # Unbundle recastnavigation |
977 |
- rm -vr extern/recastnavigation || die |
978 |
- sed -i "s#GENTOO_RECAST_LIBDIR#${EPREFIX}/usr/$(get_libdir)#" CMakeLists.txt || die |
979 |
-} |
980 |
- |
981 |
-src_configure() { |
982 |
- use devtools && ! use qt5 && \ |
983 |
- elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed" |
984 |
- |
985 |
- append-cxxflags "-I${EPREFIX}/usr/include/recastnavigation" |
986 |
- |
987 |
- local mycmakeargs=( |
988 |
- -DBUILD_BSATOOL=$(usex devtools) |
989 |
- -DBUILD_DOCS=$(usex doc) |
990 |
- -DBUILD_ESMTOOL=$(usex devtools) |
991 |
- -DBUILD_LAUNCHER=$(usex qt5) |
992 |
- -DBUILD_NIFTEST=$(usex devtools) |
993 |
- -DBUILD_OPENCS=$(usex devtools $(usex qt5)) |
994 |
- -DBUILD_WIZARD=$(usex qt5) |
995 |
- -DBUILD_UNITTESTS=$(usex test) |
996 |
- -DGLOBAL_DATA_PATH="${EPREFIX}/usr/share" |
997 |
- -DICONDIR="${EPREFIX}/usr/share/icons/hicolor/256x256/apps" |
998 |
- -DMORROWIND_DATA_FILES="${EPREFIX}/usr/share/morrowind-data" |
999 |
- -DUSE_SYSTEM_TINYXML=ON |
1000 |
- -DDESIRED_QT_VERSION=5 |
1001 |
- ) |
1002 |
- |
1003 |
- cmake_src_configure |
1004 |
-} |
1005 |
- |
1006 |
-src_compile() { |
1007 |
- cmake_src_compile |
1008 |
- |
1009 |
- if use doc ; then |
1010 |
- cmake_src_compile doc |
1011 |
- find "${CMAKE_BUILD_DIR}"/docs/Doxygen/html \ |
1012 |
- -name '*.md5' -type f -delete || die |
1013 |
- HTML_DOCS=( "${CMAKE_BUILD_DIR}"/docs/Doxygen/html/. ) |
1014 |
- fi |
1015 |
-} |
1016 |
- |
1017 |
-src_test() { |
1018 |
- "${BUILD_DIR}/openmw_test_suite" || die |
1019 |
-} |
1020 |
- |
1021 |
-src_install() { |
1022 |
- cmake_src_install |
1023 |
- |
1024 |
- local DOC_CONTENTS=" |
1025 |
- You need the original Morrowind data files. If you haven't |
1026 |
- installed them yet, you can install them straight via the |
1027 |
- installation wizard which is the officially supported method |
1028 |
- (either by using the launcher or by calling 'openmw-wizard' |
1029 |
- directly).\n" |
1030 |
- |
1031 |
- if ! use qt5; then |
1032 |
- local DOC_CONTENTS+="\n\n |
1033 |
- USE flag 'qt5' is disabled, 'openmw-launcher' and |
1034 |
- 'openmw-wizard' are not available. You are on your own for |
1035 |
- making the Morrowind data files available and pointing |
1036 |
- openmw at them.\n\n |
1037 |
- Additionally; you must import the Morrowind.ini file before |
1038 |
- running openmw with the Morrowind data files for the first |
1039 |
- time. Typically this can be done like so:\n\n |
1040 |
- \t mkdir -p ~/.config/openmw\n |
1041 |
- \t openmw-iniimporter /path/to/Morrowind.ini ~/.config/openmw/openmw.cfg" |
1042 |
- fi |
1043 |
- |
1044 |
- readme.gentoo_create_doc |
1045 |
-} |
1046 |
- |
1047 |
-pkg_postinst() { |
1048 |
- xdg_icon_cache_update |
1049 |
- readme.gentoo_print_elog |
1050 |
-} |
1051 |
- |
1052 |
-pkg_postrm() { |
1053 |
- xdg_icon_cache_update |
1054 |
-} |