diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/netgen/occ-78.patch | |
Diffstat (limited to 'vcpkg/ports/netgen/occ-78.patch')
| -rw-r--r-- | vcpkg/ports/netgen/occ-78.patch | 160 |
1 files changed, 160 insertions, 0 deletions
diff --git a/vcpkg/ports/netgen/occ-78.patch b/vcpkg/ports/netgen/occ-78.patch new file mode 100644 index 0000000..ba67919 --- /dev/null +++ b/vcpkg/ports/netgen/occ-78.patch @@ -0,0 +1,160 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0846f39bd..f7516afa4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -372,25 +372,20 @@ if (USE_OCC) + TKGeomAlgo + TKGeomBase + TKHLR +- TKIGES + TKLCAF + TKMath + TKMesh + TKOffset + TKPrim +- TKSTEP +- TKSTEP209 +- TKSTEPAttr +- TKSTEPBase +- TKSTL ++ TKDESTL + TKService + TKShHealing + TKTopAlgo + TKV3d + TKVCAF + TKXCAF +- TKXDEIGES +- TKXDESTEP ++ TKDEIGES ++ TKDESTEP + TKXSBase + TKernel + ) +diff --git a/libsrc/occ/Partition_Loop3d.hxx b/libsrc/occ/Partition_Loop3d.hxx +index e1716691c..e8a434911 100644 +--- a/libsrc/occ/Partition_Loop3d.hxx ++++ b/libsrc/occ/Partition_Loop3d.hxx +@@ -10,27 +10,16 @@ + #ifndef _Partition_Loop3d_HeaderFile + #define _Partition_Loop3d_HeaderFile + +-#ifndef _TopTools_ListOfShape_HeaderFile +-#include <TopTools_ListOfShape.hxx> +-#endif +-#ifndef _TopTools_IndexedDataMapOfShapeListOfShape_HeaderFile +-#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx> +-#endif +-#ifndef _Standard_Boolean_HeaderFile ++#include <Standard_Version.hxx> + #include <Standard_Boolean.hxx> +-#endif +-#ifndef _Standard_Real_HeaderFile + #include <Standard_Real.hxx> +-#endif +-#ifndef _Standard_Version_HeaderFile +-#include <Standard_Version.hxx> +-#endif ++#include <TopTools_ListOfShape.hxx> ++#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx> + +-#if OCC_VERSION_HEX < 0x070000 ++#if OCC_VERSION_HEX < 0x070000 || OCC_VERSION_HEX > 0x070799 + #else + #include <TopTools_ShapeMapHasher.hxx> + #include <TopTools_OrientedShapeMapHasher.hxx> +- #include <TopTools_MapOfOrientedShape.hxx> + #endif + + class TopoDS_Shape; +@@ -38,6 +27,8 @@ class TopoDS_Shape; + #if OCC_VERSION_HEX < 0x070000 + class TopTools_ListOfShape; + class TopTools_MapOfOrientedShape; ++#else ++#include <TopTools_MapOfOrientedShape.hxx> + #endif + + class TopoDS_Edge; +diff --git a/libsrc/occ/occ_edge.cpp b/libsrc/occ/occ_edge.cpp +index 0c907d78b..fd64c9a42 100644 +--- a/libsrc/occ/occ_edge.cpp ++++ b/libsrc/occ/occ_edge.cpp +@@ -55,7 +55,11 @@ namespace netgen + + size_t OCCEdge::GetHash() const + { ++#if OCC_VERSION_HEX < 0x070800 + return edge.HashCode(std::numeric_limits<Standard_Integer>::max()); ++#else ++ return std::hash<TopoDS_Shape>{}(edge); ++#endif + } + + void OCCEdge::ProjectPoint(Point<3>& p, EdgePointGeomInfo* gi) const +diff --git a/libsrc/occ/occ_face.cpp b/libsrc/occ/occ_face.cpp +index 239982aa8..ea4dd15b4 100644 +--- a/libsrc/occ/occ_face.cpp ++++ b/libsrc/occ/occ_face.cpp +@@ -32,7 +32,11 @@ namespace netgen + + size_t OCCFace::GetHash() const + { ++#if OCC_VERSION_HEX < 0x070800 + return face.HashCode(std::numeric_limits<Standard_Integer>::max()); ++#else ++ return std::hash<TopoDS_Shape>{}(face); ++#endif + } + + Point<3> OCCFace::GetCenter() const +diff --git a/libsrc/occ/occ_solid.hpp b/libsrc/occ/occ_solid.hpp +index d598de4a2..66f28d73a 100644 +--- a/libsrc/occ/occ_solid.hpp ++++ b/libsrc/occ/occ_solid.hpp +@@ -16,8 +16,11 @@ namespace netgen + OCCSolid(TopoDS_Shape dshape) + : solid(TopoDS::Solid(dshape)) + { } +- ++#if OCC_VERSION_HEX < 0x070800 + size_t GetHash() const override { return solid.HashCode(std::numeric_limits<Standard_Integer>::max()); } ++#else ++ size_t GetHash() const override { return std::hash<TopoDS_Solid>{}(solid); } ++#endif + }; + } + +diff --git a/libsrc/occ/occ_vertex.cpp b/libsrc/occ/occ_vertex.cpp +index 6e83c8944..be8e38732 100644 +--- a/libsrc/occ/occ_vertex.cpp ++++ b/libsrc/occ/occ_vertex.cpp +@@ -19,6 +19,10 @@ namespace netgen + + size_t OCCVertex::GetHash() const + { ++#if OCC_VERSION_HEX < 0x070800 + return vertex.HashCode(std::numeric_limits<Standard_Integer>::max()); ++#else ++ return std::hash<TopoDS_Shape>{}(vertex); ++#endif + } + } +diff --git a/libsrc/occ/occgeom.cpp b/libsrc/occ/occgeom.cpp +index bc0383f99..826134ba0 100644 +--- a/libsrc/occ/occgeom.cpp ++++ b/libsrc/occ/occgeom.cpp +@@ -1716,9 +1716,13 @@ namespace netgen + /*
+ // enumerate shapes and archive only integers
+ auto my_hash = [](const TopoDS_Shape & key) {
++#if OCC_VERSION_HEX < 0x070800
+ auto occ_hash = key.HashCode(1<<31UL);
+ return std::hash<decltype(occ_hash)>()(occ_hash);
++#else
++ return std::hash<TopoDS_Shape>{}(key);
++#endif
+ }; + */
+ TopTools_IndexedMapOfShape shape_map;
+ Array<TopoDS_Shape> shape_list;
|