mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
dev-games/ogre: drop 1.9.0-r4, 1.12.9-r4, 2.1-r2, 13.6.1-r1
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -1,10 +1,4 @@
|
||||
DIST imgui-1.77.tar.gz 1269147 BLAKE2B be0db9b77903664db0fadf1672ec23983dc89292fd261a1e89c1eab88b82e95de7c2af37eb7ef43cc994b889fdf7d7fb2dd1282b93c1f3b1166c7fe0d2dccaf5 SHA512 d5ebf4bb5e1ce83b226f2e68b3afe0f0abaeb55245fedf754e5453afd8d1df4dac8b5c47fc284c2588b40d05a55fc191b5e55c7be279c5e5e23f7c5b70150546
|
||||
DIST imgui-1.87.tar.gz 1460834 BLAKE2B f73b71400311e7c5f82248e242a932add5090670c78077ca2239f349730bab88a00bfe4deca4e854772ef7f6a2cff1fc0f38f7174a026995f93c9e7b55eb2a1d SHA512 3255b06698ab9c8951953e1e0b6d160d64adfa4c011b21a4288547292a7f8fff586875faf9dae0677818bde65bd7e98da92f16f6beb1e6a66aa835edf32e8ce2
|
||||
DIST imgui-1.91.2.tar.gz 1751558 BLAKE2B f5c9b7641424b87564963c878f7ee745a33b4ae9d2f15a170ab75b500fe67f9800955353cf23d782d1ee377a958807f2c1ca36f2985ce977dbbd1139d942d2ef SHA512 c8daeb2738fb0c710bee0ab7e794d9d2c60b8763b16e7b2219d064f7da8e57d410a1055c4efb80f4425ac55df173cf17f5fc06d42a52c74815175473a086c7db
|
||||
DIST imgui-1.91.9b.tar.gz 1846599 BLAKE2B 4e12b099b186ee082da18baeb7b5a0418abba73a3f9d3bf79a720258acc6ed2052e8cea867321235fb5df30536a41b4e467dc55365cd5af781032713a179b8c4 SHA512 5d0b7fd9949242ef818531df298ad206bbd0d1e152cd06e6cd6eaab12a63ef836468d316e96cb3c4b368e29e5079d4f9f5ae204fc901a39d8ff6462d9133a5fa
|
||||
DIST ogre-1.12.9.tar.gz 125955067 BLAKE2B 5676690d2d9db8c4c903b7bf3e7660ddf5c0675eb11e1b34f08a5a50739d6212e986c7b500173ad5edab4835d96c705f86cc0fd37e1ff1e64a161ab1ce8968df SHA512 a80525a4924a430ccac3f01f93a5f36b4b9d2f7671ef0629d7dd21d3651ea7a698d5cc520eb814c6ee4c0ee7efcd3f6a8f16688773300a25537636bb61eba286
|
||||
DIST ogre-1.9.0.tar.bz2 128098305 BLAKE2B 6e67a5b60a6606a910e099f1c7ba736eb525f079f3aba5cfb362329b9130059d303fc9df6f7b8611c0ba75e1e207fa018e543e93c9f5ce39a6621e4c72ed4a83 SHA512 b1ea93d80ac0978a7c228460a6714f8d17797450efd5af6765c9fa4402e9060a8ef3a700d2757593a3016fdc32276722c8f4a5d9889a3e2eb424f16162a52bde
|
||||
DIST ogre-13.6.1.tar.gz 91951783 BLAKE2B a345de5b6cb4e7be3c565f77bf7f541684733b21d862a234687ccffcc2b6c0ecf5b0fdd9fd42ddbee11c0e81388aee21d550a7e33550cd46fb17dbccfb6bb7f6 SHA512 c868a171c75adacf5eee54ee6be70faf8d5f8734dc5f1f01cd475faa78d4f9796860cfb20d486f53f20aaca5ea5306795bb5a2e1c5ded2dcb38612d5ca2550b4
|
||||
DIST ogre-14.3.4.tar.gz 94000790 BLAKE2B dd87af3a18cd4da459104ccdf06f0f035f3dbb68524845e9d778c2186be66272ac4fa5d70188f1960fbe001519c5706d5a9fff1f7e8800ec19424ac5b25abf56 SHA512 92d384daa5221850d89e3367a26a04db093736699664cfdfc3e0539f2bc64ebdfacaa5f24c5229f3a44d1e0e7e9b796d8686c42e7e7133b38fc61947642cbf55
|
||||
DIST ogre-14.4.0.tar.gz 94148698 BLAKE2B 9560629dc0da54e64bd29ced307a63ecb41203f772ed7adef69c19742ab0c4b45e6bb890969da66d51a2ac219df2d51e492143af2f7c4d925ae2a1cddc74faf6 SHA512 2752d2c585aa92c53f8c223d3e06964bea98240ac9536b3d4a943a7459e29b96f62e16a9e71ea72aac0744f180a96748aa7cd4eac91f7d72d11333846b18f33a
|
||||
DIST ogre-2.1.tar.gz 157457252 BLAKE2B 97e83cb93a07de5bd5f4fd778604e6146105e70045a6019f0fcdd7f96fe20f6ad495e19988dcd5e4c4073a0bcdeb5ce2afb06fae6945363c397a882672c80520 SHA512 9802e3bf20ddb09453524d1ddafa7a2083dfd0e609563f478fe31b087dd06d463f69800b9c6485cb3db92d98f282ef67ace3e272c1ef531e982ea9f719617fb5
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
--- a/CMake/Dependencies.cmake 2018-09-04 07:50:49.091120793 +0200
|
||||
+++ b/CMake/Dependencies.cmake 2018-09-04 07:51:55.429118519 +0200
|
||||
@@ -383,6 +383,10 @@
|
||||
find_package(Softimage)
|
||||
macro_log_feature(Softimage_FOUND "Softimage" "Softimage SDK needed for building XSIExporter" FALSE "6.0" "")
|
||||
|
||||
+# Find TinyXML
|
||||
+find_package(TinyXML)
|
||||
+macro_log_feature(TINYXML_FOUND "TinyXML" "TinyXML needed for building OgreXMLConverter" FALSE "" "")
|
||||
+
|
||||
#######################################################################
|
||||
# Tests
|
||||
#######################################################################
|
||||
--- /dev/null 2018-09-03 08:18:52.571907158 +0200
|
||||
+++ b/CMake/Packages/FindTinyXML.cmake 2018-09-04 19:15:06.392129319 +0200
|
||||
@@ -0,0 +1,26 @@
|
||||
+# - Find TinyXML
|
||||
+# Find the native TinyXML includes and library
|
||||
+#
|
||||
+# TINYXML_FOUND - True if TinyXML found.
|
||||
+# TINYXML_INCLUDE_DIR - where to find tinyxml.h, etc.
|
||||
+# TINYXML_LIBRARIES - List of libraries when using TinyXML.
|
||||
+#
|
||||
+
|
||||
+IF( TINYXML_INCLUDE_DIR )
|
||||
+ # Already in cache, be silent
|
||||
+ SET( TinyXML_FIND_QUIETLY TRUE )
|
||||
+ENDIF( TINYXML_INCLUDE_DIR )
|
||||
+
|
||||
+FIND_PATH( TINYXML_INCLUDE_DIR "tinyxml.h"
|
||||
+ PATH_SUFFIXES "tinyxml" )
|
||||
+
|
||||
+FIND_LIBRARY( TINYXML_LIBRARIES
|
||||
+ NAMES "tinyxml"
|
||||
+ PATH_SUFFIXES "tinyxml" )
|
||||
+
|
||||
+# handle the QUIETLY and REQUIRED arguments and set TINYXML_FOUND to TRUE if
|
||||
+# all listed variables are TRUE
|
||||
+INCLUDE( "FindPackageHandleStandardArgs" )
|
||||
+FIND_PACKAGE_HANDLE_STANDARD_ARGS( "TinyXML" DEFAULT_MSG TINYXML_INCLUDE_DIR TINYXML_LIBRARIES )
|
||||
+
|
||||
+MARK_AS_ADVANCED( TINYXML_INCLUDE_DIR TINYXML_LIBRARIES )
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/Samples/Simple/include/SSAO.h 2020-04-26 13:54:31.321908377 +0200
|
||||
+++ b/Samples/Simple/include/SSAO.h 2020-04-26 13:54:47.497909935 +0200
|
||||
@@ -65,7 +65,7 @@
|
||||
SSAOGBufferSchemeHandler()
|
||||
{
|
||||
mGBufRefMat = Ogre::MaterialManager::getSingleton().getByName("SSAO/GBuffer");
|
||||
- RTShader::ShaderGenerator::getSingleton().validateMaterial("GBuffer", "SSAO/GBuffer");
|
||||
+ RTShader::ShaderGenerator::getSingleton().validateMaterial("GBuffer", "SSAO/GBuffer", "OgreAutodetect");
|
||||
mGBufRefMat->load();
|
||||
}
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/Components/Bites/src/OgreGLXConfigDialog.cpp 2020-09-21 15:17:33.783741691 +0200
|
||||
+++ b/Components/Bites/src/OgreGLXConfigDialog.cpp 2020-09-21 15:17:35.948741768 +0200
|
||||
@@ -74,7 +74,7 @@
|
||||
class GLXConfigurator {
|
||||
/* GUI constants */
|
||||
static const int wWidth = 500; // Width of window
|
||||
- static const int wHeight = 380; // Height of window
|
||||
+ static const int wHeight = 340; // Height of window
|
||||
static const int col1x = 20; // Starting x of column 1 (labels)
|
||||
static const int col2x = 230; // Starting x of column 2 (options)
|
||||
static const int col1w = 200; // Width of column 1 (labels)
|
||||
@@ -1,27 +0,0 @@
|
||||
--- a/Components/Overlay/CMakeLists.txt 2020-09-20 16:13:41.280993468 +0200
|
||||
+++ b/Components/Overlay/CMakeLists.txt 2020-09-20 16:14:52.468997571 +0200
|
||||
@@ -19,14 +19,14 @@
|
||||
file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp")
|
||||
|
||||
if(OGRE_BUILD_COMPONENT_OVERLAY_IMGUI)
|
||||
- set(IMGUI_DIR "${PROJECT_BINARY_DIR}/imgui-1.77" CACHE PATH "")
|
||||
+ set(IMGUI_DIR "${PROJECT_SOURCE_DIR}/imgui-1.77" CACHE PATH "")
|
||||
if(NOT EXISTS ${IMGUI_DIR})
|
||||
message(STATUS "Dowloading imgui")
|
||||
file(DOWNLOAD
|
||||
https://github.com/ocornut/imgui/archive/v1.77.tar.gz
|
||||
- ${PROJECT_BINARY_DIR}/imgui.tar.gz)
|
||||
+ ${PROJECT_SOURCE_DIR}/imgui.tar.gz)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND}
|
||||
- -E tar xf imgui.tar.gz WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
+ -E tar xf imgui.tar.gz WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
|
||||
endif()
|
||||
list(APPEND SOURCE_FILES
|
||||
${IMGUI_DIR}/imgui.cpp
|
||||
@@ -80,4 +80,4 @@
|
||||
)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/Media/packs/profiler.zip"
|
||||
DESTINATION "${OGRE_MEDIA_PATH}/packs/"
|
||||
-)
|
||||
\ Kein Zeilenumbruch am Dateiende.
|
||||
+)
|
||||
@@ -1,14 +0,0 @@
|
||||
Media paths are fine already, the removed lines would screw them up.
|
||||
|
||||
--- a/CMake/InstallResources.cmake 2019-11-06 08:09:15.185821495 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2019-11-06 08:10:41.169819050 +0100
|
||||
@@ -145,9 +145,6 @@
|
||||
|
||||
# CREATE CONFIG FILES - BUILD DIR VERSIONS
|
||||
if (NOT (APPLE_IOS OR WINDOWS_STORE OR WINDOWS_PHONE))
|
||||
- set(OGRE_MEDIA_DIR_REL "${PROJECT_SOURCE_DIR}/Samples/Media")
|
||||
- set(OGRE_CORE_MEDIA_DIR "${PROJECT_SOURCE_DIR}/Media")
|
||||
- set(OGRE_TEST_MEDIA_DIR_REL "${PROJECT_SOURCE_DIR}/Tests/Media")
|
||||
else ()
|
||||
# iOS needs to use relative paths in the config files
|
||||
set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
|
||||
@@ -1,13 +0,0 @@
|
||||
These was already configured above, the BINARY paths are wrong!
|
||||
|
||||
--- a/CMake/InstallResources.cmake 2019-11-06 08:12:01.271816772 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2019-11-06 08:13:15.623814658 +0100
|
||||
@@ -163,8 +163,6 @@
|
||||
set(OGRE_PLUGIN_DIR_REL "Contents/Frameworks/")
|
||||
set(OGRE_SAMPLES_DIR_REL "Contents/Plugins/")
|
||||
elseif (UNIX)
|
||||
- set(OGRE_PLUGIN_DIR_REL "${PROJECT_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_REL "${PROJECT_BINARY_DIR}/lib")
|
||||
endif ()
|
||||
|
||||
if (WINDOWS_STORE OR WINDOWS_PHONE OR EMSCRIPTEN)
|
||||
@@ -1,63 +0,0 @@
|
||||
--- a/OgreMain/include/OgreProgressiveMeshGenerator.h
|
||||
+++ b/OgreMain/include/OgreProgressiveMeshGenerator.h
|
||||
@@ -215,7 +215,40 @@
|
||||
void tuneContainerSize();
|
||||
void addVertexData(VertexData* vertexData, bool useSharedVertexLookup);
|
||||
template<typename IndexType>
|
||||
- void addIndexDataImpl(IndexType* iPos, const IndexType* iEnd, VertexLookupList& lookup, unsigned short submeshID);
|
||||
+ void addIndexDataImpl(IndexType* iPos, const IndexType* iEnd, VertexLookupList& lookup, unsigned short submeshID)
|
||||
+ {
|
||||
+
|
||||
+ // Loop through all triangles and connect them to the vertices.
|
||||
+ for (; iPos < iEnd; iPos += 3) {
|
||||
+ // It should never reallocate or every pointer will be invalid.
|
||||
+ OgreAssert(mTriangleList.capacity() > mTriangleList.size(), "");
|
||||
+ mTriangleList.push_back(PMTriangle());
|
||||
+ PMTriangle* tri = &mTriangleList.back();
|
||||
+ tri->isRemoved = false;
|
||||
+ tri->submeshID = submeshID;
|
||||
+ for (int i = 0; i < 3; i++) {
|
||||
+ // Invalid index: Index is bigger then vertex buffer size.
|
||||
+ OgreAssert(iPos[i] < lookup.size(), "");
|
||||
+ tri->vertexID[i] = iPos[i];
|
||||
+ tri->vertex[i] = lookup[iPos[i]];
|
||||
+ }
|
||||
+ if (tri->isMalformed()) {
|
||||
+#if OGRE_DEBUG_MODE
|
||||
+ stringstream str;
|
||||
+ str << "In " << mMeshName << " malformed triangle found with ID: " << getTriangleID(tri) << ". " <<
|
||||
+ std::endl;
|
||||
+ printTriangle(tri, str);
|
||||
+ str << "It will be excluded from LOD level calculations.";
|
||||
+ LogManager::getSingleton().stream() << str.str();
|
||||
+#endif
|
||||
+ tri->isRemoved = true;
|
||||
+ mIndexBufferInfoList[tri->submeshID].indexCount -= 3;
|
||||
+ continue;
|
||||
+ }
|
||||
+ tri->computeNormal();
|
||||
+ addTriangleToEdges(tri);
|
||||
+ }
|
||||
+ }
|
||||
void addIndexData(IndexData* indexData, bool useSharedVertexLookup, unsigned short submeshID);
|
||||
|
||||
void computeCosts();
|
||||
--- a/OgreMain/src/OgreProgressiveMeshGenerator.cpp
|
||||
+++ b/OgreMain/src/OgreProgressiveMeshGenerator.cpp
|
||||
@@ -219,6 +219,8 @@
|
||||
}
|
||||
vbuf->unlock();
|
||||
}
|
||||
+/// Called from OgreQueuedProgressiveMeshGenerator.cpp, so it can not be defined in here.
|
||||
+#if 0
|
||||
template<typename IndexType>
|
||||
void ProgressiveMeshGenerator::addIndexDataImpl(IndexType* iPos, const IndexType* iEnd,
|
||||
VertexLookupList& lookup,
|
||||
@@ -256,6 +258,7 @@
|
||||
addTriangleToEdges(tri);
|
||||
}
|
||||
}
|
||||
+#endif // 0
|
||||
|
||||
void ProgressiveMeshGenerator::addIndexData(IndexData* indexData, bool useSharedVertexLookup, unsigned short submeshID)
|
||||
{
|
||||
@@ -1,13 +0,0 @@
|
||||
--- a/CMake/InstallResources.cmake
|
||||
+++ b/CMake/InstallResources.cmake
|
||||
@@ -178,10 +178,6 @@
|
||||
|
||||
# CREATE CONFIG FILES - BUILD DIR VERSIONS
|
||||
if (NOT OGRE_BUILD_PLATFORM_APPLE_IOS)
|
||||
- set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media")
|
||||
- set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media")
|
||||
- set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Tests/Media")
|
||||
- set(OGRE_TEST_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Tests/Media")
|
||||
else ()
|
||||
# iOS needs to use relative paths in the config files
|
||||
set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
|
||||
@@ -1,14 +0,0 @@
|
||||
--- a/CMake/InstallResources.cmake
|
||||
+++ b/CMake/InstallResources.cmake
|
||||
@@ -201,11 +201,6 @@
|
||||
set(OGRE_PLUGIN_DIR_DBG "")
|
||||
set(OGRE_SAMPLES_DIR_REL "")
|
||||
set(OGRE_SAMPLES_DIR_DBG "")
|
||||
-elseif (UNIX)
|
||||
- set(OGRE_PLUGIN_DIR_REL "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_PLUGIN_DIR_DBG "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_REL "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_DBG "${OGRE_BINARY_DIR}/lib")
|
||||
endif ()
|
||||
|
||||
if (MSVC AND NOT NMAKE)
|
||||
@@ -1,13 +0,0 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -519,7 +519,9 @@
|
||||
endif ()
|
||||
|
||||
# Setup samples
|
||||
-add_subdirectory(Samples)
|
||||
+if (OGRE_BUILD_SAMPLES)
|
||||
+ add_subdirectory(Samples)
|
||||
+endif ()
|
||||
|
||||
#Add android JNI binding
|
||||
if(ANDROID)
|
||||
@@ -1,27 +0,0 @@
|
||||
--- a/Components/Overlay/CMakeLists.txt 2022-12-13 08:16:21.006454596 +0100
|
||||
+++ b/Components/Overlay/CMakeLists.txt 2022-12-13 08:16:41.416455669 +0100
|
||||
@@ -19,14 +19,14 @@
|
||||
file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp")
|
||||
|
||||
if(OGRE_BUILD_COMPONENT_OVERLAY_IMGUI)
|
||||
- set(IMGUI_DIR "${PROJECT_BINARY_DIR}/imgui-1.87" CACHE PATH "")
|
||||
+ set(IMGUI_DIR "${PROJECT_SOURCE_DIR}/imgui-1.87" CACHE PATH "")
|
||||
if(NOT EXISTS ${IMGUI_DIR})
|
||||
message(STATUS "Downloading imgui")
|
||||
file(DOWNLOAD
|
||||
https://github.com/ocornut/imgui/archive/v1.87.tar.gz
|
||||
- ${PROJECT_BINARY_DIR}/imgui.tar.gz)
|
||||
+ ${PROJECT_SOURCE_DIR}/imgui.tar.gz)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND}
|
||||
- -E tar xf imgui.tar.gz WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
+ -E tar xf imgui.tar.gz WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
|
||||
endif()
|
||||
list(APPEND SOURCE_FILES
|
||||
${IMGUI_DIR}/imgui.cpp
|
||||
@@ -103,4 +103,4 @@
|
||||
)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/Media/packs/profiler.zip"
|
||||
DESTINATION "${OGRE_MEDIA_PATH}/packs/"
|
||||
-)
|
||||
\ No newline at end of file
|
||||
+)
|
||||
@@ -1,12 +0,0 @@
|
||||
--- a/CMake/InstallResources.cmake 2022-12-13 07:54:58.845387208 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2022-12-13 07:56:02.083390532 +0100
|
||||
@@ -174,9 +174,6 @@
|
||||
|
||||
# CREATE CONFIG FILES - BUILD DIR VERSIONS
|
||||
if (NOT (APPLE_IOS OR WINDOWS_STORE OR WINDOWS_PHONE))
|
||||
- set(OGRE_MEDIA_DIR_REL "${PROJECT_SOURCE_DIR}/Samples/Media")
|
||||
- set(OGRE_CORE_MEDIA_DIR "${PROJECT_SOURCE_DIR}/Media")
|
||||
- set(OGRE_TEST_MEDIA_DIR_REL "${PROJECT_SOURCE_DIR}/Tests/Media")
|
||||
else ()
|
||||
# iOS needs to use relative paths in the config files
|
||||
set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
|
||||
@@ -1,13 +0,0 @@
|
||||
These was already configured above, the BINARY paths are wrong!
|
||||
|
||||
--- a/CMake/InstallResources.cmake 2019-11-06 08:12:01.271816772 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2019-11-06 08:13:15.623814658 +0100
|
||||
@@ -188,8 +188,6 @@
|
||||
set(OGRE_PLUGIN_DIR_REL "Contents/Frameworks/")
|
||||
set(OGRE_SAMPLES_DIR_REL "Contents/Plugins/")
|
||||
elseif (UNIX)
|
||||
- set(OGRE_PLUGIN_DIR_REL "${PROJECT_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_REL "${PROJECT_BINARY_DIR}/lib")
|
||||
endif ()
|
||||
|
||||
if(OGRE_BUILD_SAMPLES)
|
||||
@@ -1,62 +0,0 @@
|
||||
From d1c1116924ca537c1f061ed5422dd9a5207d989a Mon Sep 17 00:00:00 2001
|
||||
From: "Matias N. Goldberg" <dark_sylinc@yahoo.com.ar>
|
||||
Date: Mon, 24 Feb 2020 17:23:25 -0300
|
||||
Subject: [PATCH] Bugfix: Bone::_getDerivedTransform using uninitialized values
|
||||
causing asserts to trigger Also prefer using Mathlib::LAST_AFFINE_COLUMN in
|
||||
ArrayMatrixAf4x3::store
|
||||
|
||||
---
|
||||
.../include/Math/Array/NEON/Single/OgreArrayMatrixAf4x3.h | 6 +-----
|
||||
.../include/Math/Array/SSE2/Single/OgreArrayMatrixAf4x3.h | 6 +-----
|
||||
OgreMain/src/Animation/OgreBone.cpp | 4 ++--
|
||||
3 files changed, 4 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/OgreMain/include/Math/Array/NEON/Single/OgreArrayMatrixAf4x3.h b/OgreMain/include/Math/Array/NEON/Single/OgreArrayMatrixAf4x3.h
|
||||
index 137b7cb5b2..2e2468149d 100644
|
||||
--- a/OgreMain/include/Math/Array/NEON/Single/OgreArrayMatrixAf4x3.h
|
||||
+++ b/OgreMain/include/Math/Array/NEON/Single/OgreArrayMatrixAf4x3.h
|
||||
@@ -217,11 +217,7 @@ namespace Ogre
|
||||
vst1q_f32( dstPtr, mChunkBase[0] );
|
||||
vst1q_f32( dstPtr + 4, mChunkBase[1] );
|
||||
vst1q_f32( dstPtr + 8, mChunkBase[2] );
|
||||
- dstPtr += 12;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 1;
|
||||
+ vst1q_f32( dstPtr + 12, MathlibNEON::LAST_AFFINE_COLUMN );
|
||||
}
|
||||
|
||||
/// Assumes dst is aligned
|
||||
diff --git a/OgreMain/include/Math/Array/SSE2/Single/OgreArrayMatrixAf4x3.h b/OgreMain/include/Math/Array/SSE2/Single/OgreArrayMatrixAf4x3.h
|
||||
index 01b75b2730..a96d9a11e0 100644
|
||||
--- a/OgreMain/include/Math/Array/SSE2/Single/OgreArrayMatrixAf4x3.h
|
||||
+++ b/OgreMain/include/Math/Array/SSE2/Single/OgreArrayMatrixAf4x3.h
|
||||
@@ -217,11 +217,7 @@ namespace Ogre
|
||||
_mm_store_ps( dstPtr, mChunkBase[0] );
|
||||
_mm_store_ps( dstPtr + 4, mChunkBase[1] );
|
||||
_mm_store_ps( dstPtr + 8, mChunkBase[2] );
|
||||
- dstPtr += 12;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 0;
|
||||
- *dstPtr++ = 1;
|
||||
+ _mm_store_ps( dstPtr + 12, MathlibSSE2::LAST_AFFINE_COLUMN );
|
||||
}
|
||||
|
||||
/// Assumes dst is aligned
|
||||
diff --git a/OgreMain/src/Animation/OgreBone.cpp b/OgreMain/src/Animation/OgreBone.cpp
|
||||
index 588c6cb442..8735ed2a2f 100644
|
||||
--- a/OgreMain/src/Animation/OgreBone.cpp
|
||||
+++ b/OgreMain/src/Animation/OgreBone.cpp
|
||||
@@ -257,8 +257,8 @@ namespace Ogre {
|
||||
OGRE_ALIGNED_DECL( Matrix4, localSpaceBone, OGRE_SIMD_ALIGNMENT );
|
||||
OGRE_ALIGNED_DECL( Matrix4, parentNodeTransform, OGRE_SIMD_ALIGNMENT );
|
||||
|
||||
- mTransform.mDerivedTransform[mTransform.mIndex].store4x3( &localSpaceBone );
|
||||
- mTransform.mParentNodeTransform[mTransform.mIndex]->store4x3( &parentNodeTransform );
|
||||
+ mTransform.mDerivedTransform[mTransform.mIndex].store( &localSpaceBone );
|
||||
+ mTransform.mParentNodeTransform[mTransform.mIndex]->store( &parentNodeTransform );
|
||||
|
||||
parentNodeTransform.concatenateAffine( localSpaceBone );
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
--- a/OgreMain/src/OgreConfigFile.cpp 2018-07-27 07:52:31.121337386 +0200
|
||||
+++ b/OgreMain/src/OgreConfigFile.cpp 2018-07-27 07:59:51.301317661 +0200
|
||||
@@ -62,8 +62,25 @@
|
||||
//-----------------------------------------------------------------------
|
||||
void ConfigFile::load(const String& filename, const String& separators, bool trimWhitespace)
|
||||
{
|
||||
- loadDirect(filename, separators, trimWhitespace);
|
||||
+ // Try automatic loading first
|
||||
+ try {
|
||||
+ loadDirect(filename, separators, trimWhitespace);
|
||||
+ } catch (Exception &e) {
|
||||
+ // Try /etc/OGRE/<file> next
|
||||
+ try {
|
||||
+ loadDirect("/etc/OGRE/" + filename, separators, trimWhitespace);
|
||||
+ return;
|
||||
+ } catch (...) { /* was just a test */ }
|
||||
+ // Try /usr/share/OGRE/<file> last
|
||||
+ try {
|
||||
+ loadDirect("/usr/share/OGRE/" + filename, separators, trimWhitespace);
|
||||
+ return;
|
||||
+ } catch (...) { /* was just a test */ }
|
||||
+ /* dammit... */
|
||||
+ throw e;
|
||||
+ }
|
||||
}
|
||||
+
|
||||
//-----------------------------------------------------------------------
|
||||
void ConfigFile::load(const String& filename, const String& resourceGroup,
|
||||
const String& separators, bool trimWhitespace)
|
||||
@@ -1,67 +0,0 @@
|
||||
--- a/Components/Paging/src/OgreGrid3DPageStrategy.cpp 2020-04-28 09:31:06.301940556 +0200
|
||||
+++ b/Components/Paging/src/OgreGrid3DPageStrategy.cpp 2020-04-28 09:40:51.777904025 +0200
|
||||
@@ -367,9 +367,9 @@
|
||||
{
|
||||
mat = MaterialManager::getSingleton().create(matName, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
|
||||
Pass* pass = mat->getTechnique(0)->getPass(0);
|
||||
- pass->setLightingEnabled(false);
|
||||
+ //pass->setLightingEnabled(false);
|
||||
pass->setVertexColourTracking(TVC_AMBIENT);
|
||||
- pass->setDepthWriteEnabled(false);
|
||||
+ //pass->setDepthWriteEnabled(false);
|
||||
mat->load();
|
||||
}
|
||||
|
||||
@@ -383,7 +383,7 @@
|
||||
else
|
||||
{
|
||||
mo = p->getParentSection()->getSceneManager()->createManualObject();
|
||||
- mo->begin(matName, RenderOperation::OT_LINE_STRIP);
|
||||
+ mo->begin(matName, OperationType::OT_LINE_STRIP);
|
||||
}
|
||||
|
||||
ColourValue vcol = ColourValue::Green;
|
||||
--- a/Components/Paging/src/OgreGrid2DPageStrategy.cpp 2020-04-28 09:43:23.119894582 +0200
|
||||
+++ b/Components/Paging/src/OgreGrid2DPageStrategy.cpp 2020-04-28 09:44:00.844892228 +0200
|
||||
@@ -405,9 +405,9 @@
|
||||
{
|
||||
mat = MaterialManager::getSingleton().create(matName, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
|
||||
Pass* pass = mat->getTechnique(0)->getPass(0);
|
||||
- pass->setLightingEnabled(false);
|
||||
+ //pass->setLightingEnabled(false);
|
||||
pass->setVertexColourTracking(TVC_AMBIENT);
|
||||
- pass->setDepthWriteEnabled(false);
|
||||
+ //pass->setDepthWriteEnabled(false);
|
||||
mat->load();
|
||||
}
|
||||
|
||||
@@ -416,7 +416,7 @@
|
||||
if (sn->numAttachedObjects() == 0)
|
||||
{
|
||||
mo = p->getParentSection()->getSceneManager()->createManualObject();
|
||||
- mo->begin(matName, RenderOperation::OT_LINE_STRIP);
|
||||
+ mo->begin(matName, OperationType::OT_LINE_STRIP);
|
||||
}
|
||||
else
|
||||
{
|
||||
--- a/OgreMain/src/OgrePVRTCCodec.cpp 2020-04-27 20:00:44.816974345 +0200
|
||||
+++ b/OgreMain/src/OgrePVRTCCodec.cpp 2020-04-27 20:03:49.186962841 +0200
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "OgreException.h"
|
||||
#include "OgreLogManager.h"
|
||||
#include "OgreBitwise.h"
|
||||
+#include "OgreDataStream.h"
|
||||
|
||||
#define FOURCC(c0, c1, c2, c3) (c0 | (c1 << 8) | (c2 << 16) | (c3 << 24))
|
||||
#define PVR_TEXTURE_FLAG_TYPE_MASK 0xff
|
||||
--- a/OgreMain/src/OgrePlatformInformation.cpp 2020-08-23 17:39:09.971041355 +0200
|
||||
+++ b/OgreMain/src/OgrePlatformInformation.cpp 2020-08-23 17:40:11.594044907 +0200
|
||||
@@ -42,7 +42,7 @@
|
||||
#if OGRE_PLATFORM != OGRE_PLATFORM_WIN32
|
||||
#if OGRE_PLATFORM == OGRE_PLATFORM_ANDROID
|
||||
#include <linux/sysctl.h>
|
||||
- #else
|
||||
+ #elif OGRE_PLATFORM == OGRE_PLATFORM_APPLE || OGRE_PLATFORM == OGRE_PLATFORM_APPLE_IOS
|
||||
#include <sys/sysctl.h>
|
||||
#endif
|
||||
#endif
|
||||
@@ -1,12 +0,0 @@
|
||||
--- a/CMake/Dependencies.cmake 2020-04-27 15:59:25.005877828 +0200
|
||||
+++ b/CMake/Dependencies.cmake 2020-04-27 15:59:42.572876732 +0200
|
||||
@@ -111,6 +111,9 @@
|
||||
#######################################################################
|
||||
|
||||
# Find OpenGL
|
||||
+if(POLICY CMP0072)
|
||||
+ cmake_policy(SET CMP0072 NEW)
|
||||
+endif()
|
||||
if(NOT ANDROID AND NOT EMSCRIPTEN)
|
||||
find_package(OpenGL)
|
||||
macro_log_feature(OPENGL_FOUND "OpenGL" "Support for the OpenGL render system" "http://www.opengl.org/" FALSE "" "")
|
||||
@@ -1,15 +0,0 @@
|
||||
--- a/Samples/2.0/Tutorials/Tutorial_Terrain/src/Terra/TerrainCell.cpp 2020-04-28 18:10:40.416995414 +0200
|
||||
+++ b/Samples/2.0/Tutorials/Tutorial_Terrain/src/Terra/TerrainCell.cpp 2020-04-28 18:30:46.074920186 +0200
|
||||
@@ -133,7 +133,11 @@
|
||||
gpuPtr[0] = m_verticesPerLine;
|
||||
gpuPtr[1] = m_lodLevel;
|
||||
gpuPtr[2] = vao->getPrimitiveCount() / m_verticesPerLine - 2u;
|
||||
- gpuPtr[3] = *reinterpret_cast<uint32*>( &m_parentTerra->m_skirtSize );
|
||||
+ /* Triggers: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
|
||||
+ * gpuPtr[3] = *reinterpret_cast<uint32*>( &m_parentTerra->m_skirtSize );
|
||||
+ * See: http://zaynar.co.uk/docs/float-aliasing.html
|
||||
+ */
|
||||
+ memcpy(&gpuPtr[3], &m_parentTerra->m_skirtSize, sizeof(gpuPtr[3]));
|
||||
|
||||
//ivec4 xzTexPosBounds
|
||||
((int32*RESTRICT_ALIAS)gpuPtr)[4] = m_gridX;
|
||||
@@ -1,20 +0,0 @@
|
||||
Media paths are fine already, the removed lines would screw them up.
|
||||
|
||||
--- a/CMake/InstallResources.cmake 2018-03-23 10:49:24.620486243 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2018-03-23 10:50:52.089485597 +0100
|
||||
@@ -186,15 +186,6 @@
|
||||
|
||||
# CREATE CONFIG FILES - BUILD DIR VERSIONS
|
||||
if (NOT (OGRE_BUILD_PLATFORM_APPLE_IOS OR WINDOWS_STORE OR WINDOWS_PHONE))
|
||||
- if( NOT APPLE )
|
||||
- set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media")
|
||||
- set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media")
|
||||
- else()
|
||||
- set(OGRE_MEDIA_DIR_REL "Contents/Resources")
|
||||
- set(OGRE_MEDIA_DIR_DBG "Contents/Resources")
|
||||
- endif()
|
||||
- set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Tests/Media")
|
||||
- set(OGRE_TEST_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Tests/Media")
|
||||
else ()
|
||||
# iOS needs to use relative paths in the config files
|
||||
set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
|
||||
@@ -1,15 +0,0 @@
|
||||
These was already configured above, the BINARY paths are wrong!
|
||||
|
||||
--- a/CMake/InstallResources.cmake 2018-03-23 10:48:44.371486540 +0100
|
||||
+++ b/CMake/InstallResources.cmake 2018-03-23 10:49:08.333486363 +0100
|
||||
@@ -226,10 +226,6 @@
|
||||
set(OGRE_SAMPLES_DIR_REL "")
|
||||
set(OGRE_SAMPLES_DIR_DBG "")
|
||||
elseif (UNIX)
|
||||
- set(OGRE_PLUGIN_DIR_REL "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_PLUGIN_DIR_DBG "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_REL "${OGRE_BINARY_DIR}/lib")
|
||||
- set(OGRE_SAMPLES_DIR_DBG "${OGRE_BINARY_DIR}/lib")
|
||||
endif ()
|
||||
|
||||
if (WINDOWS_STORE OR WINDOWS_PHONE)
|
||||
@@ -1,26 +0,0 @@
|
||||
--- a/CMakeLists.txt 2018-03-23 10:48:02.309486850 +0100
|
||||
+++ b/CMakeLists.txt 2018-03-23 10:48:04.157486836 +0100
|
||||
@@ -614,7 +614,9 @@
|
||||
endif ()
|
||||
|
||||
# Setup samples
|
||||
-add_subdirectory(Samples)
|
||||
+if (OGRE_BUILD_SAMPLES2)
|
||||
+ add_subdirectory(Samples)
|
||||
+endif ()
|
||||
|
||||
# Add android JNI binding
|
||||
if(ANDROID AND OGRE_BUILD_ANDROID_JNI_SAMPLE)
|
||||
--- a/CMake/InstallResources.cmake 2018-04-06 19:18:45.095348540 +0200
|
||||
+++ b/CMake/InstallResources.cmake 2018-04-06 19:20:00.342345608 +0200
|
||||
@@ -62,8 +62,8 @@
|
||||
set(OGRE_TEST_MEDIA_DIR_DBG "${CMAKE_INSTALL_PREFIX}/Tests/Media")
|
||||
set(OGRE_PLUGIN_DIR_REL "${CMAKE_INSTALL_PREFIX}/${OGRE_LIB_DIRECTORY}/OGRE")
|
||||
set(OGRE_PLUGIN_DIR_DBG "${CMAKE_INSTALL_PREFIX}/${OGRE_LIB_DIRECTORY}/OGRE")
|
||||
- set(OGRE_SAMPLES_DIR_REL "${CMAKE_INSTALL_PREFIX}/${OGRE_LIB_DIRECTORY}/OGRE/Samples")
|
||||
- set(OGRE_SAMPLES_DIR_DBG "${CMAKE_INSTALL_PREFIX}/${OGRE_LIB_DIRECTORY}/OGRE/Samples")
|
||||
+ set(OGRE_SAMPLES_DIR_REL "${CMAKE_INSTALL_PREFIX}/share/OGRE/Samples")
|
||||
+ set(OGRE_SAMPLES_DIR_DBG "${CMAKE_INSTALL_PREFIX}/share/OGRE/Samples")
|
||||
set(OGRE_CFG_INSTALL_PATH "share/OGRE")
|
||||
endif ()
|
||||
|
||||
@@ -78,39 +78,14 @@ Exporters
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="assimp" restrict=">dev-games/ogre-13">Use <pkg>media-libs/assimp</pkg> to import assets from 3D files</flag>
|
||||
<flag name="boost">Enable boost support</flag>
|
||||
<flag name="bullet" restrict=">dev-games/ogre-13">Use <pkg>sci-physics/bullet</pkg> for physics plugin</flag>
|
||||
<flag name="cache">Enable GL state cache support</flag>
|
||||
<flag name="cg">NVIDIA toolkit plugin</flag>
|
||||
<flag name="dotscene">DotScene (.scene) file format support through <pkg>dev-libs/pugixml</pkg></flag>
|
||||
<flag name="double-precision">More precise calculations at the expense of speed</flag>
|
||||
<flag name="deprecated" restrict=">dev-games/ogre-13">
|
||||
Build deprecated nodeless positioning of Lights and Cameras.
|
||||
</flag>
|
||||
<flag name="egl">Use egl instead of glx</flag>
|
||||
<flag name="egl-only">Use EGL instead of GLX</flag>
|
||||
<flag name="fine-granularity" restrict="~dev-games/ogre-2.1">
|
||||
Enable fine light mask granularity. This impacts on performance and should
|
||||
not be enabled unless an application really needs it.
|
||||
</flag>
|
||||
<flag name="freeimage">Support images via <pkg>media-libs/freeimage</pkg></flag>
|
||||
<flag name="gl3plus">Build OpenGL 3+ RenderSystem</flag>
|
||||
<flag name="gles3" restrict="<dev-games/ogre-13">Enable OpenGL ES 3.x Features</flag>
|
||||
<flag name="glslang">Build Glslang plugin</flag>
|
||||
<flag name="json">Use <pkg>dev-libs/rapidjson</pkg> (needed by Hlms JSON materials)</flag>
|
||||
<flag name="legacy-animations">
|
||||
Use the skeletal animation from 1.x. It's much slower, but the new system
|
||||
is still experimental.
|
||||
</flag>
|
||||
<flag name="ois">Pull in Object-oriented Input System library <pkg>dev-games/ois</pkg> for samples</flag>
|
||||
<flag name="poco">When USE=threads, use poco for threading</flag>
|
||||
<flag name="resman-pedantic">
|
||||
Resource Manager PEDANTIC : require an explicit resource group. Case
|
||||
sensitive lookup. Some demos might not work with this setting.
|
||||
(default: case-insensitive + sensitive lookup in all groups)
|
||||
</flag>
|
||||
<flag name="samples">Build and install Ogre demos</flag>
|
||||
<flag name="tbb">When USE=threads, use tbb for threading</flag>
|
||||
<flag name="tiny">Build Tiny RenderSystem (software-rendering)</flag>
|
||||
<flag name="tools">
|
||||
Build and install AssimpConverter (assimp USE flag is enabled), MeshUpgrader, VRMLConverter and XMLConverter
|
||||
|
||||
@@ -1,207 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
CMAKE_REMOVE_MODULES_LIST="FindFreetype FindDoxygen FindZLIB"
|
||||
inherit cmake
|
||||
|
||||
IMGUI_PN="imgui"
|
||||
IMGUI_PV="1.77"
|
||||
IMGUI_P="${IMGUI_PN}-${IMGUI_PV}"
|
||||
|
||||
DESCRIPTION="Object-oriented Graphics Rendering Engine"
|
||||
HOMEPAGE="https://www.ogre3d.org/"
|
||||
SRC_URI="https://github.com/OGRECave/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://github.com/ocornut/${IMGUI_PN}/archive/v${IMGUI_PV}.tar.gz -> ${IMGUI_P}.tar.gz"
|
||||
|
||||
LICENSE="MIT public-domain"
|
||||
SLOT="0/1.12"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
|
||||
IUSE="assimp +cache cg debug deprecated doc double-precision egl examples +freeimage
|
||||
json +opengl pch profile resman-pedantic tools"
|
||||
|
||||
# Note: gles2 USE flag taken out for now. It seems like the Ogre Devs now rely
|
||||
# on HLSL2GLSL (https://github.com/aras-p/hlsl2glslfork) unconditionally
|
||||
# for GLES2. So unless we have an ebuild for that, gles2/3 are off the
|
||||
# table.
|
||||
# ~~sed 2020-04-26 (yamakuzure@gmx.net)
|
||||
#
|
||||
# Note: Without gles2 USE flag, the opengl USE flag is next to useless. But
|
||||
# there are packages which enforce it, so it has to stay.
|
||||
#
|
||||
# USE="gles2"
|
||||
# REQUIRED_USE="
|
||||
# || ( gles2 opengl )
|
||||
# "
|
||||
REQUIRED_USE="
|
||||
examples? ( opengl )
|
||||
"
|
||||
|
||||
RESTRICT="test" #139905
|
||||
|
||||
RDEPEND="
|
||||
dev-games/ois
|
||||
dev-libs/pugixml
|
||||
dev-libs/zziplib
|
||||
media-libs/freetype:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXt
|
||||
assimp? ( media-libs/assimp:= )
|
||||
cg? ( media-gfx/nvidia-cg-toolkit )
|
||||
egl? ( media-libs/libglvnd )
|
||||
freeimage? ( media-libs/freeimage )
|
||||
json? ( dev-libs/rapidjson )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
tools? ( dev-libs/tinyxml[stl] )
|
||||
"
|
||||
# gles2? ( media-libs/libglvnd )
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-text/doxygen )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-media_path.patch
|
||||
"${FILESDIR}"/${P}-resource_path.patch
|
||||
"${FILESDIR}"/${P}-fix_Simple_demo.patch
|
||||
"${FILESDIR}"/${P}-gentoolize_imgui_inclusion.patch
|
||||
"${FILESDIR}"/${P}-fix_config_window_height.patch
|
||||
"${FILESDIR}"/${PN}-1.10.12-use_system_tinyxml.patch
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
unpack ${P}.tar.gz || die "Unpacking ${P}.zip failed"
|
||||
|
||||
# Ogre 1.12.9 includes imgui, but as a submodule, it is not included
|
||||
# in the release. The build system tries to download it, that may
|
||||
# fail and so we are doing it ourselves.
|
||||
cd "${S}" || die "Unpack incomplete"
|
||||
unpack ${IMGUI_P}.tar.gz || die "Unpacking ${IMGUI_P}.zip failed"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local broken_png=(
|
||||
Icon@2x-72.png
|
||||
Default-Portrait~ipad.png
|
||||
Default-Portrait@2x~ipad.png
|
||||
Default-Landscape@2x~ipad.png
|
||||
)
|
||||
|
||||
sed -i \
|
||||
-e "s:share/doc/OGRE:share/doc/${PF}:" \
|
||||
Docs/CMakeLists.txt || die
|
||||
# In this series, the CMAKE_BUILD_TARGET is hard-wired to the
|
||||
# installation. And only Debug, MinSizeRel and RelWithDebInfo
|
||||
# are supported.
|
||||
sed -i \
|
||||
-e "s/$(usex debug Debug Release)/Gentoo/g" \
|
||||
CMake/InstallResources.cmake \
|
||||
CMake/Utils/OgreConfigTargets.cmake \
|
||||
|| die
|
||||
|
||||
# Fix broken png files
|
||||
einfo "Fixing broken png files."
|
||||
pushd "${S}"/Samples/Common/misc 1>/dev/null 2>&1
|
||||
for png in "${broken_png[@]}"; do
|
||||
pngfix -q --out=out.png ${png}
|
||||
mv -f out.png "${png}" || die
|
||||
done
|
||||
popd 1>/dev/null 2>&1
|
||||
einfo "done ..."
|
||||
|
||||
# Fix some path issues
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_SKIP_INSTALL_RPATH=yes
|
||||
-DOGRE_BUILD_COMPONENT_BITES=yes
|
||||
-DOGRE_BUILD_COMPONENT_CSHARP=no
|
||||
-DOGRE_BUILD_COMPONENT_HLMS=$(usex deprecated)
|
||||
-DOGRE_BUILD_COMPONENT_JAVA=no
|
||||
-DOGRE_BUILD_COMPONENT_OVERLAY=yes
|
||||
-DOGRE_BUILD_COMPONENT_OVERLAY_IMGUI=yes
|
||||
-DOGRE_BUILD_COMPONENT_PAGING=yes
|
||||
-DOGRE_BUILD_COMPONENT_PROPERTY=yes
|
||||
-DOGRE_BUILD_COMPONENT_PYTHON=no
|
||||
-DOGRE_BUILD_COMPONENT_RTSHADERSYSTEM=yes
|
||||
-DOGRE_BUILD_COMPONENT_TERRAIN=yes
|
||||
-DOGRE_BUILD_COMPONENT_VOLUME=yes
|
||||
-DOGRE_BUILD_DEPENDENCIES=no
|
||||
-DOGRE_BUILD_PLUGIN_CG=$(usex cg)
|
||||
-DOGRE_BUILD_PLUGIN_FREEIMAGE=$(usex freeimage)
|
||||
-DOGRE_BUILD_PLUGIN_EXRCODEC=no
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GLES2=no
|
||||
-DOGRE_BUILD_SAMPLES=$(usex examples)
|
||||
-DOGRE_BUILD_TESTS=no
|
||||
-DOGRE_BUILD_TOOLS=$(usex tools)
|
||||
-DOGRE_CONFIG_DOUBLE=$(usex double-precision)
|
||||
-DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=$(usex cache)
|
||||
-DOGRE_CONFIG_ENABLE_GLES2_CG_SUPPORT=no
|
||||
-DOGRE_CONFIG_ENABLE_GLES3_SUPPORT=no
|
||||
-DOGRE_CONFIG_THREADS=3
|
||||
-DOGRE_CONFIG_THREAD_PROVIDER=std
|
||||
-DOGRE_ENABLE_PRECOMPILED_HEADERS=$(usex pch)
|
||||
-DOGRE_INSTALL_DOCS=$(usex doc)
|
||||
-DOGRE_INSTALL_SAMPLES=$(usex examples)
|
||||
-DOGRE_INSTALL_SAMPLES_SOURCE=$(usex examples)
|
||||
-DOGRE_NODELESS_POSITIONING=$(usex deprecated)
|
||||
-DOGRE_PROFILING=$(usex profile)
|
||||
-DOGRE_RESOURCEMANAGER_STRICT=$(usex resman-pedantic 1 2)
|
||||
)
|
||||
# -DOGRE_BUILD_RENDERSYSTEM_GLES2=$(usex gles2)
|
||||
# -DOGRE_CONFIG_ENABLE_GLES2_CG_SUPPORT=$(usex gles2 $(usex cg) no)
|
||||
# -DOGRE_CONFIG_ENABLE_GLES3_SUPPORT=$(usex gles2)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
|
||||
if use doc ; then
|
||||
eninja -C "${BUILD_DIR}" OgreDoc
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
CONFIGDIR=/etc/OGRE
|
||||
SHAREDIR=/usr/share/OGRE
|
||||
|
||||
# plugins and resources are the main configuration
|
||||
insinto "${CONFIGDIR}"
|
||||
doins "${BUILD_DIR}"/bin/plugins.cfg
|
||||
doins "${BUILD_DIR}"/bin/resources.cfg
|
||||
dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg
|
||||
dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg
|
||||
|
||||
# These are only for the sample browser
|
||||
if use examples ; then
|
||||
insinto "${SHAREDIR}"
|
||||
doins "${BUILD_DIR}"/bin/samples.cfg
|
||||
doins "${BUILD_DIR}"/bin/tests.cfg
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "If you experience crashes when starting /usr/bin/SampleBrowser,"
|
||||
elog "remove the cache directory at:"
|
||||
elog " '~/.cache/OGRE Sample Browser'"
|
||||
elog "first, before filing a bug report."
|
||||
}
|
||||
@@ -1,142 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
CMAKE_REMOVE_MODULES_LIST="FindFreetype FindDoxygen FindZLIB"
|
||||
|
||||
inherit cmake flag-o-matic vcs-snapshot
|
||||
|
||||
DESCRIPTION="Object-oriented Graphics Rendering Engine"
|
||||
HOMEPAGE="https://www.ogre3d.org/"
|
||||
SRC_URI="https://bitbucket.org/sinbad/ogre/get/v${PV//./-}.tar.bz2 -> ${P}.tar.bz2"
|
||||
|
||||
LICENSE="MIT public-domain"
|
||||
SLOT="0/1.9.0"
|
||||
KEYWORDS="amd64 ~arm x86"
|
||||
|
||||
# gles1 currently broken wrt bug #418201
|
||||
# gles1 does not even build wrt bug #506058
|
||||
IUSE="+boost cg doc double-precision examples +freeimage gl3plus gles2 gles3 ois +opengl poco profile tbb threads tools +zip"
|
||||
|
||||
REQUIRED_USE="threads? ( ^^ ( boost poco tbb ) )
|
||||
examples? ( ois )
|
||||
poco? ( threads )
|
||||
tbb? ( threads )
|
||||
gl3plus? ( !gles2 !gles3 )
|
||||
gles3? ( gles2 )
|
||||
gl3plus? ( opengl )"
|
||||
|
||||
RESTRICT="test" #139905
|
||||
|
||||
RDEPEND="
|
||||
media-libs/freetype:2
|
||||
virtual/opengl
|
||||
virtual/glu
|
||||
x11-libs/libX11
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXt
|
||||
boost? ( dev-libs/boost:= )
|
||||
cg? ( media-gfx/nvidia-cg-toolkit )
|
||||
freeimage? ( media-libs/freeimage )
|
||||
gles2? ( media-libs/libglvnd )
|
||||
gles3? ( media-libs/libglvnd )
|
||||
gl3plus? ( media-libs/libglvnd )
|
||||
ois? ( dev-games/ois )
|
||||
threads? (
|
||||
poco? ( dev-libs/poco )
|
||||
tbb? ( dev-cpp/tbb:= )
|
||||
)
|
||||
tools? ( dev-libs/tinyxml[stl] )
|
||||
zip? ( sys-libs/zlib dev-libs/zziplib )"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-text/doxygen )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-remove_resource_path_to_bindir.patch"
|
||||
"${FILESDIR}/${P}-remove_media_path_to_bindir.patch"
|
||||
"${FILESDIR}/${P}-gcc52.patch"
|
||||
"${FILESDIR}/${P}-samples.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
sed -i \
|
||||
-e "s:share/OGRE/docs:share/doc/${PF}:" \
|
||||
Docs/CMakeLists.txt || die
|
||||
# Stupid build system hardcodes release names
|
||||
sed -i \
|
||||
-e '/CONFIGURATIONS/s:CONFIGURATIONS Release.*::' \
|
||||
CMake/Utils/OgreConfigTargets.cmake || die
|
||||
|
||||
# make sure we're not using the included tinyxml
|
||||
rm -f Tools/XMLConverter/{include,src}/tiny*.*
|
||||
|
||||
# Fix some path issues
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DOGRE_FULL_RPATH=NO
|
||||
-DOGRE_USE_BOOST=$(usex boost)
|
||||
-DOGRE_BUILD_PLUGIN_CG=$(usex cg)
|
||||
-DOGRE_INSTALL_DOCS=$(usex doc)
|
||||
-DOGRE_CONFIG_DOUBLE=$(usex double-precision)
|
||||
-DOGRE_CONFIG_ENABLE_FREEIMAGE=$(usex freeimage)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex gl3plus)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GLES=FALSE
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GLES2=$(usex gles2)
|
||||
-DOGRE_CONFIG_ENABLE_GLES3_SUPPORT=$(usex gles3)
|
||||
-DOGRE_PROFILING=$(usex profile)
|
||||
-DOGRE_BUILD_SAMPLES=$(usex examples)
|
||||
-DOGRE_INSTALL_SAMPLES=$(usex examples)
|
||||
-DOGRE_INSTALL_SAMPLES_SOURCE=$(usex examples)
|
||||
-DOGRE_BUILD_TESTS=FALSE
|
||||
-DOGRE_CONFIG_THREADS=$(usex threads 2 0)
|
||||
-DOGRE_BUILD_TOOLS=$(usex tools)
|
||||
-DOGRE_CONFIG_ENABLE_ZIP=$(usex zip)
|
||||
)
|
||||
|
||||
if use threads ; then
|
||||
local f
|
||||
for f in boost poco tbb ; do
|
||||
use ${f} || continue
|
||||
mycmakeargs+=( -DOGRE_CONFIG_THREAD_PROVIDER=${f} )
|
||||
break
|
||||
done
|
||||
fi
|
||||
|
||||
if use examples ; then
|
||||
# bug #829253
|
||||
append-cxxflags -std=c++14
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
CONFIGDIR=/etc/OGRE
|
||||
SHAREDIR=/usr/share/OGRE
|
||||
|
||||
# plugins and resources are the main configuration
|
||||
insinto "${CONFIGDIR}"
|
||||
doins "${BUILD_DIR}"/bin/plugins.cfg
|
||||
doins "${BUILD_DIR}"/bin/resources.cfg
|
||||
dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg
|
||||
dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg
|
||||
|
||||
# These are only for the sample browser
|
||||
insinto "${SHAREDIR}"
|
||||
doins "${BUILD_DIR}"/bin/quakemap.cfg
|
||||
doins "${BUILD_DIR}"/bin/samples.cfg
|
||||
}
|
||||
@@ -1,198 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CMAKE_REMOVE_MODULES_LIST=( FindFreetype FindDoxygen FindZLIB )
|
||||
inherit cmake
|
||||
|
||||
IMGUI_PN="imgui"
|
||||
IMGUI_PV="1.87"
|
||||
IMGUI_P="${IMGUI_PN}-${IMGUI_PV}"
|
||||
|
||||
DESCRIPTION="Object-oriented Graphics Rendering Engine"
|
||||
HOMEPAGE="https://www.ogre3d.org/"
|
||||
SRC_URI="https://github.com/OGRECave/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://github.com/ocornut/${IMGUI_PN}/archive/v${IMGUI_PV}.tar.gz -> ${IMGUI_P}.tar.gz"
|
||||
|
||||
LICENSE="MIT public-domain"
|
||||
SLOT="0/13.6"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
|
||||
IUSE="assimp bullet +cache cg debug deprecated doc double-precision egl examples +freeimage
|
||||
json +opengl pch profile resman-pedantic tools"
|
||||
|
||||
# Note: gles2 USE flag taken out for now, as even the configuration seems to be broken
|
||||
# ~~sed 2022-12-13 (sven@eden-worx.com)
|
||||
#
|
||||
# Note: The following dependencies might be considered for new ebuilds
|
||||
# + Vulkan SDK: Vulkan RenderSystem, glslang Plugin. Alternatively use system packages <https://vulkan.lunarg.com/>
|
||||
#
|
||||
# Note: Without gles2 USE flag, the opengl USE flag is next to useless. But
|
||||
# there are packages which enforce it, so it has to stay.
|
||||
#
|
||||
REQUIRED_USE="
|
||||
examples? ( opengl )
|
||||
"
|
||||
|
||||
RESTRICT="test" #139905
|
||||
|
||||
RDEPEND="
|
||||
dev-games/ois
|
||||
dev-libs/pugixml
|
||||
dev-libs/zziplib
|
||||
media-libs/freetype:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXt
|
||||
assimp? ( media-libs/assimp:= )
|
||||
bullet? ( sci-physics/bullet:= )
|
||||
cg? ( media-gfx/nvidia-cg-toolkit )
|
||||
egl? ( media-libs/libglvnd )
|
||||
freeimage? ( media-libs/freeimage )
|
||||
json? ( dev-libs/rapidjson )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
tools? ( dev-libs/tinyxml[stl] )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-text/doxygen )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-13.5.3-media_path.patch
|
||||
"${FILESDIR}"/${PN}-13.5.3-resource_path.patch
|
||||
"${FILESDIR}"/${PN}-13.5.3-gentoolize_imgui_inclusion.patch
|
||||
"${FILESDIR}"/${PN}-1.10.12-use_system_tinyxml.patch
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
unpack ${P}.tar.gz || die "Unpacking ${P}.zip failed"
|
||||
|
||||
# Ogre includes imgui, but as a manual download done by Components/Overlay/CMakeLists.txt
|
||||
# That may fail and so we are doing it ourselves.
|
||||
cd "${S}" || die "Unpack incomplete"
|
||||
unpack ${IMGUI_P}.tar.gz || die "Unpacking ${IMGUI_P}.zip failed"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local broken_png=(
|
||||
Icon@2x-72.png
|
||||
Default-Portrait~ipad.png
|
||||
Default-Portrait@2x~ipad.png
|
||||
Default-Landscape@2x~ipad.png
|
||||
)
|
||||
|
||||
sed -i \
|
||||
-e "s:share/doc/OGRE:share/doc/${PF}:" \
|
||||
Docs/CMakeLists.txt || die
|
||||
# In this series, the CMAKE_BUILD_TARGET is hard-wired to the
|
||||
# installation. And only Debug, MinSizeRel and RelWithDebInfo
|
||||
# are supported.
|
||||
sed -i \
|
||||
-e "s/$(usex debug Debug Release)/Gentoo/g" \
|
||||
CMake/InstallResources.cmake \
|
||||
CMake/Utils/OgreConfigTargets.cmake \
|
||||
|| die
|
||||
|
||||
# Fix broken png files
|
||||
einfo "Fixing broken png files."
|
||||
pushd "${S}"/Samples/Common/misc 1>/dev/null 2>&1
|
||||
for png in "${broken_png[@]}"; do
|
||||
pngfix -q --out=out.png ${png}
|
||||
mv -f out.png "${png}" || die
|
||||
done
|
||||
popd 1>/dev/null 2>&1
|
||||
einfo "done ..."
|
||||
|
||||
# Fix some path issues
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_SKIP_INSTALL_RPATH=yes
|
||||
-DOGRE_ASSERT_MODE=1
|
||||
-DOGRE_BUILD_COMPONENT_BITES=yes
|
||||
-DOGRE_BUILD_COMPONENT_BULLET=$(usex bullet)
|
||||
-DOGRE_BUILD_COMPONENT_CSHARP=no
|
||||
-DOGRE_BUILD_COMPONENT_JAVA=no
|
||||
-DOGRE_BUILD_COMPONENT_OVERLAY=yes
|
||||
-DOGRE_BUILD_COMPONENT_OVERLAY_IMGUI=yes
|
||||
-DOGRE_BUILD_COMPONENT_PAGING=yes
|
||||
-DOGRE_BUILD_COMPONENT_PROPERTY=yes
|
||||
-DOGRE_BUILD_COMPONENT_PYTHON=no
|
||||
-DOGRE_BUILD_COMPONENT_RTSHADERSYSTEM=yes
|
||||
-DOGRE_BUILD_COMPONENT_TERRAIN=yes
|
||||
-DOGRE_BUILD_COMPONENT_VOLUME=yes
|
||||
-DOGRE_BUILD_DEPENDENCIES=no
|
||||
-DOGRE_BUILD_PLUGIN_ASSIMP=$(usex assimp)
|
||||
-DOGRE_BUILD_PLUGIN_CG=$(usex cg)
|
||||
-DOGRE_BUILD_PLUGIN_FREEIMAGE=$(usex freeimage)
|
||||
-DOGRE_BUILD_PLUGIN_EXRCODEC=no
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GLES2=no
|
||||
-DOGRE_BUILD_SAMPLES=$(usex examples)
|
||||
-DOGRE_BUILD_TESTS=no
|
||||
-DOGRE_BUILD_TOOLS=$(usex tools)
|
||||
-DOGRE_CONFIG_DOUBLE=$(usex double-precision)
|
||||
-DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=$(usex cache)
|
||||
-DOGRE_CONFIG_ENABLE_GLES2_CG_SUPPORT=no
|
||||
-DOGRE_CONFIG_ENABLE_GLES3_SUPPORT=no
|
||||
-DOGRE_CONFIG_THREADS=3
|
||||
-DOGRE_CONFIG_THREAD_PROVIDER=std
|
||||
-DOGRE_ENABLE_PRECOMPILED_HEADERS=$(usex pch)
|
||||
-DOGRE_GLSUPPORT_USE_EGL=$(usex egl)
|
||||
-DOGRE_INSTALL_DOCS=$(usex doc)
|
||||
-DOGRE_INSTALL_SAMPLES=$(usex examples)
|
||||
-DOGRE_NODELESS_POSITIONING=$(usex deprecated)
|
||||
-DOGRE_PROFILING=$(usex profile)
|
||||
-DOGRE_RESOURCEMANAGER_STRICT=$(usex resman-pedantic 1 2)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
|
||||
if use doc ; then
|
||||
eninja -C "${BUILD_DIR}" OgreDoc
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
CONFIGDIR=/etc/OGRE
|
||||
SHAREDIR=/usr/share/OGRE
|
||||
|
||||
# plugins and resources are the main configuration
|
||||
insinto "${CONFIGDIR}"
|
||||
doins "${BUILD_DIR}"/bin/plugins.cfg
|
||||
doins "${BUILD_DIR}"/bin/resources.cfg
|
||||
dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg
|
||||
dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg
|
||||
|
||||
# These are only for the sample browser
|
||||
if use examples ; then
|
||||
insinto "${SHAREDIR}"
|
||||
doins "${BUILD_DIR}"/bin/samples.cfg
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "If you experience crashes when starting /usr/bin/SampleBrowser,"
|
||||
elog "remove the cache directory at:"
|
||||
elog " '~/.cache/OGRE Sample Browser'"
|
||||
elog "first, before filing a bug report."
|
||||
}
|
||||
@@ -1,196 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
CMAKE_REMOVE_MODULES_LIST="FindFreetype FindDoxygen FindZLIB"
|
||||
|
||||
inherit cmake flag-o-matic
|
||||
|
||||
MY_PN="${PN}-next"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="Object-oriented Graphics Rendering Engine"
|
||||
HOMEPAGE="https://www.ogre3d.org/"
|
||||
SRC_URI="https://github.com/OGRECave/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT public-domain"
|
||||
SLOT="0/2.1"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="+cache debug doc double-precision egl examples fine-granularity +freeimage json
|
||||
legacy-animations +opengl profile tools"
|
||||
|
||||
# USE flags that do not work, as their options aren't ported, yet.
|
||||
# cg
|
||||
# gles2
|
||||
# mobile
|
||||
|
||||
RESTRICT="test" #139905
|
||||
|
||||
RDEPEND="
|
||||
dev-games/ois
|
||||
dev-libs/zziplib
|
||||
media-libs/freetype:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXt
|
||||
egl? ( media-libs/libglvnd )
|
||||
freeimage? ( media-libs/freeimage )
|
||||
json? ( dev-libs/rapidjson )
|
||||
opengl? (
|
||||
virtual/glu
|
||||
virtual/opengl
|
||||
)
|
||||
tools? ( dev-libs/tinyxml[stl] )
|
||||
"
|
||||
# Dependencies for USE flags that do not work, yet.
|
||||
# cg? ( media-gfx/nvidia-cg-toolkit )
|
||||
# gles2? ( media-libs/libglvnd )
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( app-text/doxygen )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-2.1-samples.patch"
|
||||
"${FILESDIR}/${PN}-2.1-resource_path.patch"
|
||||
"${FILESDIR}/${PN}-2.1-media_path.patch"
|
||||
"${FILESDIR}/${PN}-2.1-enhance_config_loading.patch"
|
||||
"${FILESDIR}/${PN}-2.1-fix_opengl_search.patch"
|
||||
"${FILESDIR}/${PN}-2.1-fix_compilation_issues.patch"
|
||||
"${FILESDIR}/${PN}-2.1-fix_warnings.patch"
|
||||
"${FILESDIR}/${PN}-2.1-d1c1116.patch"
|
||||
)
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
sed -i \
|
||||
-e "s:share/OGRE/docs:share/doc/${PF}:" \
|
||||
Docs/CMakeLists.txt || die
|
||||
|
||||
# In this series, the CMAKE_BUILD_TARGET is hard-wired to the
|
||||
# installation. And only Release, Debug, MinSizeRel and RelWithDebInfo
|
||||
# are supported.
|
||||
sed -i \
|
||||
-e "s/$(usex debug Debug Release)/Gentoo/g" \
|
||||
CMake/InstallResources.cmake \
|
||||
CMake/Utils/OgreConfigTargets.cmake \
|
||||
|| die
|
||||
|
||||
# Fix some path issues
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DOGRE_BUILD_COMPONENT_HLMS_PBS=yes
|
||||
-DOGRE_BUILD_COMPONENT_HLMS_PBS_MOBILE=no
|
||||
-DOGRE_BUILD_COMPONENT_HLMS_UNLIT=yes
|
||||
-DOGRE_BUILD_COMPONENT_HLMS_UNLIT_MOBILE=no
|
||||
-DOGRE_BUILD_COMPONENT_PLANAR_REFLECTIONS=yes
|
||||
-DOGRE_BUILD_COMPONENT_SCENE_FORMAT=yes
|
||||
-DOGRE_BUILD_PLATFORM_NACL=no
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex opengl)
|
||||
-DOGRE_BUILD_RENDERSYSTEM_GLES2=no
|
||||
-DOGRE_BUILD_SAMPLES2=$(usex examples)
|
||||
-DOGRE_BUILD_TESTS=$(usex debug)
|
||||
-DOGRE_BUILD_TOOLS=$(usex tools)
|
||||
-DOGRE_CONFIG_ALLOCATOR=$(usex debug 5 1)
|
||||
-DOGRE_CONFIG_ENABLE_FINE_LIGHT_MASK_GRANULARITY=$(usex fine-granularity)
|
||||
-DOGRE_CONFIG_ENABLE_FREEIMAGE=$(usex freeimage)
|
||||
-DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=$(usex cache)
|
||||
-DOGRE_CONFIG_ENABLE_JSON=$(usex json)
|
||||
-DOGRE_CONFIG_MEMTRACK_DEBUG=$(usex debug)
|
||||
-DOGRE_CONFIG_MEMTRACK_RELEASE=no
|
||||
-DOGRE_CONFIG_THREADS=0
|
||||
-DOGRE_CONFIG_THREAD_PROVIDER=std
|
||||
-DOGRE_FULL_RPATH=no
|
||||
-DOGRE_INSTALL_DOCS=$(usex doc)
|
||||
-DOGRE_INSTALL_SAMPLES=$(usex examples)
|
||||
-DOGRE_INSTALL_SAMPLES_SOURCE=$(usex examples)
|
||||
-DOGRE_LEGACY_ANIMATIONS=$(usex legacy-animations)
|
||||
-DOGRE_PROFILING_PROVIDER=$(usex profile none internal)
|
||||
-DOGRE_USE_BOOST=no
|
||||
-DOGRE_CONFIG_DOUBLE=$(usex double-precision)
|
||||
-DOGRE_SIMD_NEON=$(usex double-precision no yes)
|
||||
-DOGRE_SIMD_SSE2=$(usex double-precision no yes)
|
||||
)
|
||||
|
||||
# GLES2 is not supported, yet
|
||||
# -DOGRE_BUILD_COMPONENT_HLMS_PBS=$( usex mobile no yes)
|
||||
# -DOGRE_BUILD_COMPONENT_HLMS_PBS_MOBILE=$( usex mobile)
|
||||
# -DOGRE_BUILD_COMPONENT_HLMS_UNLIT=$( usex mobile no yes)
|
||||
# -DOGRE_BUILD_COMPONENT_HLMS_UNLIT_MOBILE=$(usex mobile)
|
||||
# -DOGRE_BUILD_RENDERSYSTEM_GLES2=$(usex gles2)
|
||||
|
||||
# The CgFxScriptLoader doesn't seem to be completely ported, yet.
|
||||
# USE flag disabled.
|
||||
mycmakeargs+=(
|
||||
-DOGRE_BUILD_PLUGIN_CG=no
|
||||
)
|
||||
|
||||
# These components are off by default, as they might not be ported, yet.
|
||||
# When advancing to a newer commit, try whether any of the disabled
|
||||
# components can be activated now.
|
||||
mycmakeargs+=(
|
||||
-DOGRE_BUILD_COMPONENT_PAGING=no
|
||||
-DOGRE_BUILD_COMPONENT_PROPERTY=no
|
||||
-DOGRE_BUILD_COMPONENT_RTSHADERSYSTEM=no
|
||||
-DOGRE_BUILD_RTSHADERSYSTEM_CORE_SHADERS=no
|
||||
-DOGRE_BUILD_RTSHADERSYSTEM_EXT_SHADERS=no
|
||||
-DOGRE_BUILD_COMPONENT_TERRAIN=no
|
||||
-DOGRE_BUILD_COMPONENT_VOLUME=no
|
||||
)
|
||||
|
||||
# In Release builds the system moans about unknown flags. Lets help!
|
||||
if use debug; then
|
||||
append-flags -DOGRE_DEBUG_MODE=1 -DDEBUG=1 -D_DEBUG=1
|
||||
else
|
||||
append-flags -DOGRE_DEBUG_MODE=0
|
||||
fi
|
||||
|
||||
# Take out the warning about deprecated copy, as Ogre emits thousands of
|
||||
# those. But using a deprecated way of doing things isn't an error and
|
||||
# mainly of interest for developers.
|
||||
# (The warning is part of -Wextra and only effects C++ compilation.)
|
||||
append-cxxflags $(test-flags-CXX -Wno-deprecated-copy)
|
||||
|
||||
# The same with the old ways of using memset(0...) on objects. It is
|
||||
# no longer assumed to be a good idea, but a warning about it isn't
|
||||
# of any value to the user. (And it happens many times in Ogre.)
|
||||
append-cxxflags $(test-flags-CXX -Wno-class-memaccess)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
CONFIGDIR=/etc/OGRE
|
||||
SHAREDIR=/usr/share/OGRE
|
||||
|
||||
# plugins and resources are the main configuration
|
||||
insinto "${CONFIGDIR}"
|
||||
doins "${BUILD_DIR}"/bin/plugins.cfg
|
||||
doins "${BUILD_DIR}"/bin/plugins_tools.cfg
|
||||
doins "${BUILD_DIR}"/bin/resources.cfg
|
||||
doins "${BUILD_DIR}"/bin/resources2.cfg
|
||||
dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg
|
||||
dosym "${CONFIGDIR}"/plugins_tools.cfg "${SHAREDIR}"/plugins_tools.cfg
|
||||
dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg
|
||||
dosym "${CONFIGDIR}"/resources2.cfg "${SHAREDIR}"/resources2.cfg
|
||||
|
||||
# These are only for the Samples
|
||||
if use examples ; then
|
||||
insinto "${SHAREDIR}"
|
||||
doins "${BUILD_DIR}"/bin/samples.cfg
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user