summaryrefslogtreecommitdiff
path: root/sci-libs/opencascade
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/opencascade')
-rw-r--r--sci-libs/opencascade/Manifest3
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-fix-AllValues-name-collision-with-vtk-9.0.patch172
-rw-r--r--sci-libs/opencascade/opencascade-7.5.1-r1.ebuild1
3 files changed, 175 insertions, 1 deletions
diff --git a/sci-libs/opencascade/Manifest b/sci-libs/opencascade/Manifest
index d38e10a1da6d..80186a92bc6f 100644
--- a/sci-libs/opencascade/Manifest
+++ b/sci-libs/opencascade/Manifest
@@ -10,9 +10,10 @@ AUX opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch 841 BLAKE2B 61894
AUX opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch 2207 BLAKE2B f00d3137ff9046019f0e4dbad09d79141a65c0b68da0e5c613aa234fddfd651e2b61fb00129ae7a84f521ca3e00858d76ce46cc2f62521c22402f4b664e94274 SHA512 8a4206854a96fb4c45450ad1081cd28ede0171f32392d9f0876b7e41789a0ba2e07ca82011503bd562541367a6b39b8df15aba843f6bb6eef6c473db6ee788a4
AUX opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch 2453 BLAKE2B 01b0ec99fb9ad032d6a90cceabb50900528abd0528b53e976484bf02f04eac9bc02b063bce5c221ae88782a126103e8077db9e90aa7f64f4f187dad00354d4d2 SHA512 fb3c374fe8aff8d2bac039a0eef754f2e823a97bfd7860bdd7e047c1b357202abfca0e37b46afc32220c7e354b5edb54805fbbbffde015bb4be2d7f4ded4a8da
AUX opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch 1245 BLAKE2B 1972c41e264a86761f8b3a3a649e67211776d0a4791b7e0f3adc859833e1d62e3a1d964484b2c53a516f5a33680ab2f32ad2010bf3fd531fca36373435307b68 SHA512 a2ffef88cb87acbc8215a7d1d7fe69ee17210392d39a64535d1538b2c08e43f5918c5b5e4a7540e8d636b1ba0df51670013e9d49f205bfc93a1e0d10a04388a7
+AUX opencascade-7.5.1-fix-AllValues-name-collision-with-vtk-9.0.patch 5749 BLAKE2B 9176a738ec6b39a1cd5da61f2d72d096b09f6019f63a5b7733c5aa00796529f2cc5e3becdf5c24cfa01e4ff5b9da5ae9cd359372e6974eeaae7bcdf87e8c03c8 SHA512 5f7970e1461652966c34b1adb6e2580cfd7e3e230abbf108193027f67afbd5e78fc7451b50bf632fa3889174626384e4a0044d693e4f49ab9ece84a2ec6bd04a
AUX opencascade-7.5.env.in 4643 BLAKE2B f3492a12e0e0fd31bed8c65e8aa7af68f84a9e752922c62ca2307c96f2d1070fdbc10e09c266114060b0f81951109bc9827853e3eba486d4f9c0eba6984c69e4 SHA512 c10151744b5656e7bafbc291729a5c0e4022e44aa5015e4fff616cb2a34409a67c4ae7433eede2563ab265fa4eb6a455d36ed99469a2579979ff374fc6588adf
DIST opencascade-7.4.0.tar.gz 49210449 BLAKE2B c92afe7551e9a066ad0940dcf49278b556a726f0534131706b3a11cb0986ba32818e162df3982283f6815eb9d67d7e91f909485d78f2b8d638da1934ffbc2f7f SHA512 eb0d47848d48f42a159ae5d7a4144483ba1f59f634844bd2053e48e04af30a30ba7056112cd38a1730d193a8d736b898f9608dd574cbe6829dbe7257a002772a
DIST opencascade-7.5.1.tar.gz 47807222 BLAKE2B b5ef30ea7c373250db3e0863f3c7fde84256b37957a482f10a462a4c4ed1a21cffbbeb10e9fc140325022d7582efbd292ed6d1016d14cb67ccf5c84d14060d5a SHA512 ebb937254ac165041ef7e1a80df8f9d2ac1d518f01b3d4b0fd6d203fe0d80bd474b85a462cccc1c74a513bd257c0b0ab7002632573f38bf72170363c7e42ed2f
EBUILD opencascade-7.4.0-r4.ebuild 3957 BLAKE2B 4118554fff8ff80f64ce581dd5f233211d4a77d4366ada96ae646e819ad03adebfa8561ff9c4b9f9fcfed6cc2bad65fe6db0373d434768fcf5cc8a1808fe34e6 SHA512 a7783c641793480726433be75fd5c7260d9f62e32347aa1ee4e68b97adc5e18d829984f05e84e42c120a1c027c0ad15ee73e646c708466e0eeb2a9440b9726ac
-EBUILD opencascade-7.5.1-r1.ebuild 4784 BLAKE2B 824ba3dc6e3a314ae80d7cbc0e9b359b1444679318d8dd478ed0bb259b7dd867a53cf59e8b32b7aa9c9a905256618537058c85cc9af7a350e76ef58aee448903 SHA512 fc2478a817e26724bb4dd80d270b9788a3b13a1250c1a7e88779b457518cb5a4c58eae3acb85fa5a12f691a0f467e683b312026cca570a537ca8efcc33299b63
+EBUILD opencascade-7.5.1-r1.ebuild 4852 BLAKE2B b5738e865f13b49d8a1916c9cb04bd6a6208956f53134ad9513c7a2bfa8428738bf6645a4b6d0fc0c9a9928735ce51feb740bc3138090acc08fa24bcde283403 SHA512 94b96dbc86489e1647d0e1dad5398eb81151039ea2b0124a5b2947397a3a21dde936d1a8fedb798800f54b38fc47b272922ffc5089c3983939e57db3bff36684
MISC metadata.xml 1074 BLAKE2B 88bba4427a254f02a0ca70936c0931ceb72a5d752c6664502cd20dbd6cc294080222d9ef143334c147b77667a342f7912384b8af92a1b90868d243294f72215f SHA512 b42f338af31848be031702bbee6cfe105db4c6ffa5970e7229b5a63841097af1b60eb886f4513ec86f0b27fd0c7ad090b635061c737714ae43b7b45db02172f9
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-fix-AllValues-name-collision-with-vtk-9.0.patch b/sci-libs/opencascade/files/opencascade-7.5.1-fix-AllValues-name-collision-with-vtk-9.0.patch
new file mode 100644
index 000000000000..e2725ebb2c64
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-fix-AllValues-name-collision-with-vtk-9.0.patch
@@ -0,0 +1,172 @@
+From f624c55d7b75ccbe3fdfef0db141fdbe1f6b383a Mon Sep 17 00:00:00 2001
+From: anv <anv@opencascade.com>
+Date: Tue, 27 Apr 2021 21:33:54 +0300
+Subject: [PATCH 1/2] 0032331: Visualization - Exception when trying to display
+ some surfaces using iVtk with VTK 9
+
+Updated memory allocation for vtkPolyData to use more suited method for VTK versions after 9.0
+---
+ src/IVtkDraw/IVtkDraw_Interactor.cxx | 7 +++
+ src/IVtkTools/IVtkTools_SubPolyDataFilter.cxx | 50 ++++++++++++++++++-
+ 2 files changed, 56 insertions(+), 1 deletion(-)
+
+diff --git a/src/IVtkDraw/IVtkDraw_Interactor.cxx b/src/IVtkDraw/IVtkDraw_Interactor.cxx
+index f9f68c37b6..1b68c959f5 100644
+--- a/src/IVtkDraw/IVtkDraw_Interactor.cxx
++++ b/src/IVtkDraw/IVtkDraw_Interactor.cxx
+@@ -20,6 +20,13 @@
+ #include <vtkWin32OpenGLRenderWindow.h>
+ #else
+ #include <GL/glx.h>
++
++// Preventing naming collisions between
++// GLX and VTK versions 9.0 and above
++#ifdef AllValues
++#undef AllValues
++#endif
++
+ #include <vtkXRenderWindowInteractor.h>
+ #include <vtkXOpenGLRenderWindow.h>
+ #endif
+diff --git a/src/IVtkTools/IVtkTools_SubPolyDataFilter.cxx b/src/IVtkTools/IVtkTools_SubPolyDataFilter.cxx
+index 26ded68af5..bd289d2b51 100644
+--- a/src/IVtkTools/IVtkTools_SubPolyDataFilter.cxx
++++ b/src/IVtkTools/IVtkTools_SubPolyDataFilter.cxx
+@@ -87,6 +87,11 @@ int IVtkTools_SubPolyDataFilter::RequestData (vtkInformation *vtkNotUsed(theRequ
+
+ // Prepare the list of ids from the set of ids.
+ // Iterate on input cells.
++#if (VTK_MAJOR_VERSION >= 9)
++ // Count number of different cells.
++ int aNbVerts = 0, aNbLines = 0, aNbPolys = 0, aNbStrips = 0;
++ int aNbVertPts = 0, aNbLinePts = 0, aNbPolyPts = 0, aNbStripPts = 0;
++#endif
+ if (!myIdsSet.IsEmpty())
+ {
+ for (vtkIdType anI = 0; anI < aSize; anI++)
+@@ -95,13 +100,56 @@ int IVtkTools_SubPolyDataFilter::RequestData (vtkInformation *vtkNotUsed(theRequ
+ {
+ // Add a cell id to output if it's value is in the set.
+ anIdList->InsertNextId (anI);
++#if (VTK_MAJOR_VERSION >= 9)
++ switch (anInput->GetCellType(anI))
++ {
++ case VTK_VERTEX:
++ aNbVerts++;
++ aNbVertPts++;
++ break;
++ case VTK_POLY_VERTEX:
++ aNbVerts++;
++ aNbVertPts += anInput->GetCell(anI)->GetNumberOfPoints();
++ break;
++ case VTK_LINE:
++ aNbLines++;
++ aNbLinePts += 2;
++ break;
++ case VTK_POLY_LINE:
++ aNbLines++;
++ aNbLinePts += anInput->GetCell(anI)->GetNumberOfPoints();
++ break;
++ case VTK_TRIANGLE:
++ aNbPolys++;
++ aNbPolyPts += 3;
++ break;
++ case VTK_QUAD:
++ aNbPolys++;
++ aNbPolyPts += 4;
++ break;
++ case VTK_POLYGON:
++ aNbPolys++;
++ aNbPolyPts += anInput->GetCell(anI)->GetNumberOfPoints();
++ break;
++ case VTK_TRIANGLE_STRIP:
++ aNbStrips++;
++ aNbStripPts += anInput->GetCell(anI)->GetNumberOfPoints();
++ break;
++ }
++#endif
+ }
+ }
+ }
+
+ // Copy cells with their points according to the prepared list of cell ids.
+ anOutput->GetCellData()->AllocateArrays(anInput->GetCellData()->GetNumberOfArrays());
+- anOutput->Allocate(anInput, anIdList->GetNumberOfIds()); // Allocate output cells
++ // Allocate output cells
++#if (VTK_MAJOR_VERSION >= 9)
++ anOutput->AllocateExact (aNbVerts, aNbVertPts, aNbLines, aNbLinePts, aNbPolys, aNbPolyPts, aNbStrips, aNbStripPts);
++#else
++ anOutput->Allocate (anInput, anIdList->GetNumberOfIds());
++#endif
++
+ // Pass data arrays.
+ // Create new arrays for output data
+ vtkSmartPointer<vtkCellData> anInData = anInput->GetCellData();
+--
+2.31.1
+
+
+From 3a0d59614378af258b285c7a3cab66c4bb7cecd3 Mon Sep 17 00:00:00 2001
+From: Roman Beranek <roman.beranek@prusa3d.com>
+Date: Thu, 3 Jun 2021 15:41:45 +0200
+Subject: [PATCH 2/2] undef AllValues after inclusion of GL/glx.h
+
+Replicate the measure from 0032331 also for IVtkDraw.cxx and InterfaceGraphic.hxx
+---
+ src/IVtkDraw/IVtkDraw.cxx | 17 +++++++++++------
+ src/InterfaceGraphic/InterfaceGraphic.hxx | 4 +++-
+ 2 files changed, 14 insertions(+), 7 deletions(-)
+
+diff --git a/src/IVtkDraw/IVtkDraw.cxx b/src/IVtkDraw/IVtkDraw.cxx
+index 93d4a2fd1a..84bacdc55a 100644
+--- a/src/IVtkDraw/IVtkDraw.cxx
++++ b/src/IVtkDraw/IVtkDraw.cxx
+@@ -52,6 +52,17 @@
+
+ // prevent disabling some MSVC warning messages by VTK headers
+ #include <Standard_WarningsDisable.hxx>
++#ifndef _WIN32
++ #include <X11/X.h>
++ #include <X11/Shell.h>
++ #include <X11/Xlib.h>
++ #include <X11/Xutil.h>
++ #include <GL/glx.h>
++ #include <Xw_Window.hxx>
++ #ifdef AllValues
++ #undef AllValues
++ #endif
++#endif
+ #include <vtkAlgorithmOutput.h>
+ #include <vtkAppendPolyData.h>
+ #include <vtkBMPWriter.h>
+@@ -75,12 +86,6 @@
+ #include <vtkTIFFWriter.h>
+ #include <vtkWindowToImageFilter.h>
+ #ifndef _WIN32
+- #include <X11/X.h>
+- #include <X11/Shell.h>
+- #include <X11/Xlib.h>
+- #include <X11/Xutil.h>
+- #include <GL/glx.h>
+- #include <Xw_Window.hxx>
+ #include <vtkXRenderWindowInteractor.h>
+ #include <vtkXOpenGLRenderWindow.h>
+ #include <tk.h>
+diff --git a/src/InterfaceGraphic/InterfaceGraphic.hxx b/src/InterfaceGraphic/InterfaceGraphic.hxx
+index c533f68cd5..bf02b3f397 100644
+--- a/src/InterfaceGraphic/InterfaceGraphic.hxx
++++ b/src/InterfaceGraphic/InterfaceGraphic.hxx
+@@ -39,7 +39,9 @@
+ #include <X11/Xutil.h>
+ #include <X11/Xatom.h>
+ #include <GL/glx.h>
+-
++#ifdef AllValues
++#undef AllValues
++#endif
+ #endif
+
+ #endif // __INTERFACE_GRAPHIC_HXX
+--
+2.31.1
+
diff --git a/sci-libs/opencascade/opencascade-7.5.1-r1.ebuild b/sci-libs/opencascade/opencascade-7.5.1-r1.ebuild
index ffa4d80678e2..666120a0cd97 100644
--- a/sci-libs/opencascade/opencascade-7.5.1-r1.ebuild
+++ b/sci-libs/opencascade/opencascade-7.5.1-r1.ebuild
@@ -68,6 +68,7 @@ PATCHES=(
"${FILESDIR}"/${P}-0004-fix-installation-of-cmake-config-files.patch
"${FILESDIR}"/${P}-0005-fix-write-permissions-on-scripts.patch
"${FILESDIR}"/${P}-0006-fix-creation-of-custom.sh-script.patch
+ "${FILESDIR}"/${P}-fix-AllValues-name-collision-with-vtk-9.0.patch
)
src_prepare() {