summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGard Spreemann <gspr@nonempty.org>2022-08-16 16:02:30 +0200
committerGard Spreemann <gspr@nonempty.org>2022-08-16 16:02:30 +0200
commit514f24ad38a7f673b06a5b63ff3b91b8c3251fff (patch)
treeb01c76438cd169b48f41327834e9e6747908d78e
parent67a54ebf93b9bd29be995c5397f692fc0b915255 (diff)
CGAL 5.5 compatibilitydebian/3.5.0+dfsg-3
-rw-r--r--debian/changelog7
-rw-r--r--debian/control2
-rw-r--r--debian/patches/0006-CGAL-5.5-compatibility.patch78
-rw-r--r--debian/patches/series1
4 files changed, 87 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog
index 11231979..129ec19a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+gudhi (3.5.0+dfsg-3) unstable; urgency=medium
+
+ * Add patch to fix building with CGAL 5.5. (Closes: #1017138)
+ * Standards-version 4.6.1.1. No changes needed.
+
+ -- Gard Spreemann <gspr@nonempty.org> Tue, 16 Aug 2022 16:01:50 +0200
+
gudhi (3.5.0+dfsg-2) unstable; urgency=medium
* Update d/libgudhi-doc.doc-base to reflect moved docs.
diff --git a/debian/control b/debian/control
index 6ef62958..627bc8dd 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: gudhi
Maintainer: Gard Spreemann <gspr@nonempty.org>
Section: math
Priority: optional
-Standards-Version: 4.6.0.1
+Standards-Version: 4.6.1.1
Build-Depends: cmake (>= 3.5),
cython3,
debhelper-compat (= 13),
diff --git a/debian/patches/0006-CGAL-5.5-compatibility.patch b/debian/patches/0006-CGAL-5.5-compatibility.patch
new file mode 100644
index 00000000..a5d28944
--- /dev/null
+++ b/debian/patches/0006-CGAL-5.5-compatibility.patch
@@ -0,0 +1,78 @@
+From: Vincent Rouvreau <vincent.rouvreau@inria.fr>
+Date: Tue, 9 Aug 2022 16:06:06 +0200
+Subject: CGAL 5.5 compatibility
+
+Based on upstream commits
+
+ dc7a0aed53d7b74580ed5625293e27cacd452c34
+ 71cbf8f35814d247fe7421c079a6ea78da2282f4
+
+with modifications from discussion in
+
+ https://github.com/CGAL/cgal/issues/6799
+---
+ .../include/gudhi/Skeleton_blocker_contractor.h | 21 ++++++++++++++++-----
+ 1 file changed, 16 insertions(+), 5 deletions(-)
+
+diff --git a/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h b/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
+index a0d9f2b..d510043 100644
+--- a/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
++++ b/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
+@@ -171,8 +171,13 @@ typename GeometricSimplifiableComplex::Vertex_handle> {
+ Self const* algorithm_;
+ };
+
++#if CGAL_VERSION_NR < 1050500000
+ typedef CGAL::Modifiable_priority_queue<Edge_handle, Compare_cost, Undirected_edge_id> PQ;
+- typedef typename PQ::handle pq_handle;
++#else
++ typedef CGAL::Modifiable_priority_queue<Edge_handle, Compare_cost, Undirected_edge_id, CGAL::CGAL_BOOST_PAIRING_HEAP> PQ;
++#endif
++
++ typedef bool pq_handle;
+
+
+ // An Edge_data is associated with EVERY edge in the complex (collapsible or not).
+@@ -196,7 +201,7 @@ typename GeometricSimplifiableComplex::Vertex_handle> {
+ }
+
+ bool is_in_PQ() const {
+- return PQHandle_ != PQ::null_handle();
++ return PQHandle_ != false;
+ }
+
+ void set_PQ_handle(pq_handle h) {
+@@ -204,7 +209,7 @@ typename GeometricSimplifiableComplex::Vertex_handle> {
+ }
+
+ void reset_PQ_handle() {
+- PQHandle_ = PQ::null_handle();
++ PQHandle_ = false;
+ }
+
+ private:
+@@ -238,16 +243,22 @@ typename GeometricSimplifiableComplex::Vertex_handle> {
+ }
+
+ void insert_in_PQ(Edge_handle edge, Edge_data& data) {
+- data.set_PQ_handle(heap_PQ_->push(edge));
++ heap_PQ_->push(edge);
++ data.set_PQ_handle(true);
+ ++current_num_edges_heap_;
+ }
+
+ void update_in_PQ(Edge_handle edge, Edge_data& data) {
++#if CGAL_VERSION_NR < 1050500000
+ data.set_PQ_handle(heap_PQ_->update(edge, data.PQ_handle()));
++#else
++ heap_PQ_->update(edge);
++#endif
+ }
+
+ void remove_from_PQ(Edge_handle edge, Edge_data& data) {
+- data.set_PQ_handle(heap_PQ_->erase(edge, data.PQ_handle()));
++ heap_PQ_->erase(edge);
++ data.set_PQ_handle(false);
+ --current_num_edges_heap_;
+ }
+
diff --git a/debian/patches/series b/debian/patches/series
index 4d556076..5c95e702 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
0003-Offline-header-for-docs.patch
0004-Disable-Sphinx.patch
0005-Don-t-process-the-entire-source-tree-with-Doxygen.patch
+0006-CGAL-5.5-compatibility.patch