summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/TODO.Debian8
-rw-r--r--debian/changelog52
-rw-r--r--debian/clean2
-rw-r--r--debian/compat1
-rw-r--r--debian/control150
-rw-r--r--debian/copyright131
-rw-r--r--debian/gudhi-utils.install1
-rw-r--r--debian/gudhui.112
-rw-r--r--debian/gudhui.install1
-rw-r--r--debian/gudhui.manpages1
-rw-r--r--debian/libgudhi-dev.docs1
-rw-r--r--debian/libgudhi-dev.install2
-rw-r--r--debian/libgudhi-doc.doc-base8
-rw-r--r--debian/libgudhi-doc.install1
-rw-r--r--debian/libgudhi-examples.docs1
-rw-r--r--debian/patches/0002-Disable-Sphinx-test-since-we-re-not-currently-using.patch23
-rw-r--r--debian/patches/0003-Disable-tests-that-use-DFSG-deleted-data-files.patch79
-rw-r--r--debian/patches/0004-Use-system-MathJax.patch21
-rw-r--r--debian/patches/0005-Don-t-set-runtime-library-dirs-for-Python-extensions.patch21
-rw-r--r--debian/patches/0006-Force-linking-of-Python-module-with-CGAL.patch21
-rw-r--r--debian/patches/0007-Force-linking-against-libatomic-for-parts-that-use-T.patch21
-rw-r--r--debian/patches/0008-Offline-header-to-avoid-loading-remote-resources-in-.patch21
-rw-r--r--debian/patches/series7
-rw-r--r--debian/python3-gudhi.install1
-rwxr-xr-xdebian/rules100
-rw-r--r--debian/source/format1
-rw-r--r--debian/tests/control3
-rw-r--r--debian/tests/python-upstream.py17
-rwxr-xr-xdebian/tests/python-upstream.sh9
-rw-r--r--debian/watch5
30 files changed, 722 insertions, 0 deletions
diff --git a/debian/TODO.Debian b/debian/TODO.Debian
new file mode 100644
index 00000000..630425b6
--- /dev/null
+++ b/debian/TODO.Debian
@@ -0,0 +1,8 @@
+- Man pages for gudhi-utilities, preferably from upstream.
+
+- Upstream more patches.
+
+- Integrate upstream's extensive tests, adapting them to test
+ installed code.
+
+- Generate Sphinx documentation for the Python package. \ No newline at end of file
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 00000000..b9d3ebd5
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,52 @@
+gudhi (2.2.0+dfsg-3) unstable; urgency=medium
+
+ * Fix build of bindings for multiple Python versions when building just
+ binary-arch.
+ * Test all supported Python (3) versions.
+
+ -- Gard Spreemann <gspreemann@gmail.com> Tue, 14 Aug 2018 13:45:43 +0200
+
+gudhi (2.2.0+dfsg-2) unstable; urgency=medium
+
+ * Build Python bindings for all supported Python (3) versions.
+ * Drop patch forcing Python 3 detection. Upstream has cmake option for
+ selecting Python version.
+ * Standards-version 4.2.0. No changes needed.
+
+ -- Gard Spreemann <gspreemann@gmail.com> Tue, 07 Aug 2018 13:47:38 +0200
+
+gudhi (2.2.0+dfsg-1) unstable; urgency=medium
+
+ * New upstream release.
+ - Čech complex.
+ - New functionality for the Rips complex.
+ * Refresh patches:
+ - Drop floating point precision workaround patch (fixed upstream).
+ - Drop CGAL 4.12 compatibility patch (fixed upstream).
+ * Streamline the copyright information a bit.
+ * Bump CMake build-dep to 3.1.
+ * New upstream utilities in gudhi-utils.
+
+ -- Gard Spreemann <gspreemann@gmail.com> Fri, 22 Jun 2018 10:12:19 +0200
+
+gudhi (2.1.0+dfsg-3) unstable; urgency=medium
+
+ * Add patch for floating point rounding problem on some architectures.
+ * Add patch that forces linking against libatomic. This hopefully fixes
+ building on MIPS et al.
+ * Install utilities (gudhi-utils).
+
+ -- Gard Spreemann <gspreemann@gmail.com> Thu, 14 Jun 2018 20:07:51 +0200
+
+gudhi (2.1.0+dfsg-2) unstable; urgency=medium
+
+ * Add patches for CGAL 4.12 compatibility.
+ * Bump standards-version to 4.1.4. No changes needed.
+
+ -- Gard Spreemann <gspreemann@gmail.com> Thu, 24 May 2018 11:46:12 +0200
+
+gudhi (2.1.0+dfsg-1) unstable; urgency=medium
+
+ * Initial packaging. (Closes: #840686)
+
+ -- Gard Spreemann <gspreemann@gmail.com> Sun, 25 Mar 2018 23:52:14 +0200 \ No newline at end of file
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 00000000..1258531f
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1,2 @@
+GUDHIVersion.cmake
+doc/html/
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 00000000..b4de3947
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+11
diff --git a/debian/control b/debian/control
new file mode 100644
index 00000000..c2a02e8c
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,150 @@
+Source: gudhi
+Maintainer: Gard Spreemann <gspreemann@gmail.com>
+Section: math
+Priority: optional
+Standards-Version: 4.2.0
+Build-Depends: cmake (>= 3.1),
+ cython3,
+ debhelper (>= 11),
+ dh-python,
+ libboost-chrono-dev,
+ libboost-filesystem-dev,
+ libboost-program-options-dev,
+ libboost-system-dev,
+ libboost-test-dev,
+ libboost-timer-dev,
+ libcgal-dev (>> 4.11.0),
+ libcgal-qt5-dev (>> 4.11.0),
+ libeigen3-dev,
+ libgmp-dev,
+ libqglviewer-dev-qt5,
+ libtbb-dev,
+ python3-all-dev,
+ python3-matplotlib,
+ python3-pytest,
+ python3-tk,
+ qtbase5-dev
+Build-Depends-Indep: doxygen,
+ graphviz
+Homepage: http://gudhi.gforge.inria.fr/
+Vcs-Browser: https://git.nonempty.org/debian-gudhi
+Vcs-Git: https://git.nonempty.org/debian-gudhi -b debian/sid
+
+Package: libgudhi-dev
+Section: libdevel
+Architecture: all
+Multi-Arch: foreign
+Depends: libboost-chrono-dev (>= 1.48),
+ libboost-filesystem-dev (>= 1.48),
+ libboost-program-options-dev (>= 1.48),
+ libboost-system-dev (>= 1.48),
+ libboost-test-dev (>= 1.48),
+ libboost-timer-dev (>= 1.48),
+ libcgal-dev (>> 4.11.0),
+ libeigen3-dev (>= 3.1.0),
+ libgmp-dev (>= 4.2),
+ libtbb-dev,
+ ${misc:Depends}
+Suggests: libgudhi-doc, libgudhi-examples
+Description: Generic open source C++ library for topological data analysis
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains the header files. See the libgudhi-examples
+ package for example programs using the library.
+
+Package: libgudhi-examples
+Section: misc
+Architecture: all
+Multi-Arch: foreign
+Depends: ${misc:Depends}
+Suggests: libgudhi-dev, libgudhi-doc
+Description: Example programs for the GUDHI library
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains some source code examples.
+
+Package: libgudhi-doc
+Section: doc
+Architecture: all
+Multi-Arch: foreign
+Depends: libjs-mathjax, ${misc:Depends}
+Description: Documentation for the GUDHI library
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains documentation.
+
+Package: python3-gudhi
+Section: python
+Architecture: any
+Multi-Arch: same
+Depends: python3-matplotlib,
+ python3-tk,
+ ${misc:Depends},
+ ${python3:Depends},
+ ${shlibs:Depends}
+Description: Python 3 interface to the GUDHI library
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains GUDHI's Python (3) interface.
+
+Package: gudhui
+Section: math
+Architecture: any
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: GUI for some of the functionality of the GUDHI library
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains GudhUI, a graphical interface to a few of GUDHI's
+ features. Be aware that it is quite rough around the edges.
+
+Package: gudhi-utils
+Section: math
+Architecture: any
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Utilities from the GUDHI library
+ The GUDHI library is a generic open source C++ library for
+ Topological Data Analysis (TDA) and Higher Dimensional Geometry
+ Understanding. The library offers state-of-the-art data structures
+ and algorithms to construct simplicial complexes and compute
+ persistent homology.
+ .
+ The GUDHI library is developed as part of the GUDHI project supported
+ by the European Research Council.
+ .
+ This package contains some utilities built with the GUDHI library.
+ \ No newline at end of file
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 00000000..9619ce4a
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,131 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: gudhi
+Files-Excluded: GudhUI/utils/homsimpl data/filtered_simplicial_complex/bunny_5000_complex.fsc data/points/COIL_database data/points/SO3* data/points/bunny* doc/common/MathJax.* include/gudhi_patches/CGAL/*
+Source: http://gudhi.gforge.inria.fr
+ Deleted unnecessary precompiled binary and upstream data files of unclear licensing status. Deleted also bundled MathJax.
+
+Files: *
+Copyright: 2014-2018 Inria
+License: GPL-3+
+
+Files: include/gudhi/Miniball*
+Copyright: 1999-2013 Bernd Gärtner
+License: GPL-3+
+
+Files: cmake/modules/FindEigen3.cmake
+Copyright: 2006, 2007 Montel Laurent <montel@kde.org>
+ 2008, 2009 Gael Guennebaud <g.gael@free.fr>
+ 2009 Benoit Jacob <jacob.benoit.1@gmail.com>
+License: BSD-2-clause
+
+Files: cmake/modules/FindTBB.cmake
+Copyright: Hannes Hofmann
+License: MIT
+
+Files: cmake/modules/FindCython.cmake
+Copyright: 2011 Kitware, Inc.
+License: Apache-2.0
+
+Files: utilities/Nerve_GIC/km.py*
+Copyright: 2015 Triskelion - HJ van Veen <info@mlwave.com>
+License: MIT
+
+Files: include/gudhi/Contraction/CGAL_queue/Modifiable_priority_queue.h
+Copyright: 2006-2011 GeometryFactory
+License: LGPL-3+
+ This file is part of CGAL (www.cgal.org); you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 3 of the License,
+ or (at your option) any later version.
+ .
+ Licensees holding a valid commercial license may use this file in
+ accordance with the commercial license agreement provided with the software.
+ .
+ This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+ WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 3 can be found in "/usr/share/common-licenses/LGPL-3".
+
+Files: debian/*
+Copyright: 2016-2018 Gard Spreemann <gspreemann@gmail.com>
+License: GPL-3+
+
+License: GPL-3+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
+
+License: BSD-2-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ .
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
+ WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ .
+ http://www.apache.org/licenses/LICENSE-2.0
+ .
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ .
+ On Debian systems, the complete text of the Apache License version 2.0
+ can be found in "/usr/share/common-licenses/Apache-2.0".
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
diff --git a/debian/gudhi-utils.install b/debian/gudhi-utils.install
new file mode 100644
index 00000000..71e8eb9f
--- /dev/null
+++ b/debian/gudhi-utils.install
@@ -0,0 +1 @@
+debian/tmp/usr/bin/gudhi-* usr/bin/
diff --git a/debian/gudhui.1 b/debian/gudhui.1
new file mode 100644
index 00000000..53ce0867
--- /dev/null
+++ b/debian/gudhui.1
@@ -0,0 +1,12 @@
+.TH GUDHUI 1 "" "" ""
+.SH NAME
+GudhUI \- graphical interface for some of the GUDHI library's features
+.SH SYNOPSIS
+.B gudhui
+[\fIQt options\fR]
+.SH DESCRIPTION
+.B gudhui
+is a graphical interface for some of the GUDHI library's features. It
+can aid the exploratory steps of topological data analysis.
+.SH OPTIONS
+The program accepts only standard Qt options.
diff --git a/debian/gudhui.install b/debian/gudhui.install
new file mode 100644
index 00000000..9f140378
--- /dev/null
+++ b/debian/gudhui.install
@@ -0,0 +1 @@
+debian/tmp/usr/bin/gudhui
diff --git a/debian/gudhui.manpages b/debian/gudhui.manpages
new file mode 100644
index 00000000..4ffbdc9f
--- /dev/null
+++ b/debian/gudhui.manpages
@@ -0,0 +1 @@
+debian/gudhui.1 \ No newline at end of file
diff --git a/debian/libgudhi-dev.docs b/debian/libgudhi-dev.docs
new file mode 100644
index 00000000..3d523db3
--- /dev/null
+++ b/debian/libgudhi-dev.docs
@@ -0,0 +1 @@
+biblio
diff --git a/debian/libgudhi-dev.install b/debian/libgudhi-dev.install
new file mode 100644
index 00000000..3035131d
--- /dev/null
+++ b/debian/libgudhi-dev.install
@@ -0,0 +1,2 @@
+debian/tmp/usr/include/gudhi/ usr/include/
+debian/tmp/usr/share/gudhi/*.cmake usr/lib/cmake/gudhi/
diff --git a/debian/libgudhi-doc.doc-base b/debian/libgudhi-doc.doc-base
new file mode 100644
index 00000000..f8175ee1
--- /dev/null
+++ b/debian/libgudhi-doc.doc-base
@@ -0,0 +1,8 @@
+Document: libgudhi-doc
+Title: GUDHI C++ library manual
+Abstract: This Doxygen manual describes the GUDHI C++ API
+Section: Science/Mathematics
+
+Format: HTML
+Index: /usr/share/doc/libgudhi/html/index.html
+Files: /usr/share/doc/libgudhi/html/*.html
diff --git a/debian/libgudhi-doc.install b/debian/libgudhi-doc.install
new file mode 100644
index 00000000..ceccbc47
--- /dev/null
+++ b/debian/libgudhi-doc.install
@@ -0,0 +1 @@
+doc/html/* usr/share/doc/libgudhi/html/
diff --git a/debian/libgudhi-examples.docs b/debian/libgudhi-examples.docs
new file mode 100644
index 00000000..253d5377
--- /dev/null
+++ b/debian/libgudhi-examples.docs
@@ -0,0 +1 @@
+debian/tmp/usr/share/doc/libgudhi-examples/*
diff --git a/debian/patches/0002-Disable-Sphinx-test-since-we-re-not-currently-using.patch b/debian/patches/0002-Disable-Sphinx-test-since-we-re-not-currently-using.patch
new file mode 100644
index 00000000..abf2a450
--- /dev/null
+++ b/debian/patches/0002-Disable-Sphinx-test-since-we-re-not-currently-using.patch
@@ -0,0 +1,23 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:18:26 +0200
+Subject: Disable Sphinx test since we're not currently using.
+
+---
+ cython/CMakeLists.txt | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/cython/CMakeLists.txt b/cython/CMakeLists.txt
+index 17d440e..9194e45 100644
+--- a/cython/CMakeLists.txt
++++ b/cython/CMakeLists.txt
+@@ -280,10 +280,5 @@ if(CYTHON_FOUND)
+ DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/gudhi.so"
+ COMMENT "${GUDHI_SPHINX_MESSAGE}" VERBATIM)
+
+- add_test(NAME sphinx_py_test
+- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+- COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}"
+- ${SPHINX_PATH} -b doctest ${CMAKE_CURRENT_SOURCE_DIR}/doc ${CMAKE_CURRENT_BINARY_DIR}/doctest)
+-
+ endif(SPHINX_PATH AND NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.8.1)
+ endif(CYTHON_FOUND)
diff --git a/debian/patches/0003-Disable-tests-that-use-DFSG-deleted-data-files.patch b/debian/patches/0003-Disable-tests-that-use-DFSG-deleted-data-files.patch
new file mode 100644
index 00000000..d58b56a9
--- /dev/null
+++ b/debian/patches/0003-Disable-tests-that-use-DFSG-deleted-data-files.patch
@@ -0,0 +1,79 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:19:42 +0200
+Subject: Disable tests that use DFSG-deleted data files.
+
+---
+ example/Nerve_GIC/CMakeLists.txt | 6 ------
+ example/Persistent_cohomology/CMakeLists.txt | 4 ----
+ example/Simplex_tree/CMakeLists.txt | 2 --
+ utilities/Nerve_GIC/CMakeLists.txt | 8 --------
+ 4 files changed, 20 deletions(-)
+
+diff --git a/example/Nerve_GIC/CMakeLists.txt b/example/Nerve_GIC/CMakeLists.txt
+index fdecf86..f63e08e 100644
+--- a/example/Nerve_GIC/CMakeLists.txt
++++ b/example/Nerve_GIC/CMakeLists.txt
+@@ -12,16 +12,10 @@ if (NOT CGAL_VERSION VERSION_LESS 4.8.1)
+
+ # Copy files for not to pollute sources when testing
+ file(COPY "${CMAKE_SOURCE_DIR}/data/points/tore3D_1307.off" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
+- file(COPY "${CMAKE_SOURCE_DIR}/data/points/COIL_database/lucky_cat.off" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
+- file(COPY "${CMAKE_SOURCE_DIR}/data/points/COIL_database/lucky_cat_PCA1" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
+
+ add_test(NAME Nerve_GIC_example_CoordGIC COMMAND $<TARGET_FILE:CoordGIC>
+ "${CMAKE_CURRENT_BINARY_DIR}/tore3D_1307.off" "0")
+
+- add_test(NAME Nerve_GIC_example_FuncGIC COMMAND $<TARGET_FILE:FuncGIC>
+- "${CMAKE_CURRENT_BINARY_DIR}/lucky_cat.off"
+- "${CMAKE_CURRENT_BINARY_DIR}/lucky_cat_PCA1")
+-
+ install(TARGETS CoordGIC DESTINATION bin)
+ install(TARGETS FuncGIC DESTINATION bin)
+
+diff --git a/example/Persistent_cohomology/CMakeLists.txt b/example/Persistent_cohomology/CMakeLists.txt
+index 0f73151..4cac586 100644
+--- a/example/Persistent_cohomology/CMakeLists.txt
++++ b/example/Persistent_cohomology/CMakeLists.txt
+@@ -28,10 +28,6 @@ add_test(NAME Persistent_cohomology_example_from_rips_step_by_step_on_tore_3D CO
+ "${CMAKE_SOURCE_DIR}/data/points/tore3D_1307.off" "-r" "0.25" "-m" "0.5" "-d" "3" "-p" "3")
+ add_test(NAME Persistent_cohomology_example_via_boundary_matrix COMMAND $<TARGET_FILE:rips_persistence_via_boundary_matrix>
+ "${CMAKE_SOURCE_DIR}/data/points/Kl.off" "-r" "0.16" "-d" "3" "-p" "3" "-m" "100")
+-add_test(NAME Persistent_cohomology_example_from_file_3_2_0 COMMAND $<TARGET_FILE:persistence_from_file>
+- "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "2" "-m" "0")
+-add_test(NAME Persistent_cohomology_example_from_file_3_3_100 COMMAND $<TARGET_FILE:persistence_from_file>
+- "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "3" "-m" "100")
+
+ install(TARGETS plain_homology DESTINATION bin)
+ install(TARGETS persistence_from_simple_simplex_tree DESTINATION bin)
+diff --git a/example/Simplex_tree/CMakeLists.txt b/example/Simplex_tree/CMakeLists.txt
+index 857e851..48bb069 100644
+--- a/example/Simplex_tree/CMakeLists.txt
++++ b/example/Simplex_tree/CMakeLists.txt
+@@ -29,8 +29,6 @@ if(GMP_FOUND AND CGAL_FOUND)
+ if (TBB_FOUND)
+ target_link_libraries(Simplex_tree_example_alpha_shapes_3_from_off ${TBB_LIBRARIES})
+ endif()
+- add_test(NAME Simplex_tree_example_alpha_shapes_3_from_off COMMAND $<TARGET_FILE:Simplex_tree_example_alpha_shapes_3_from_off>
+- "${CMAKE_SOURCE_DIR}/data/points/bunny_5000.off")
+
+ install(TARGETS Simplex_tree_example_alpha_shapes_3_from_off DESTINATION bin)
+
+diff --git a/utilities/Nerve_GIC/CMakeLists.txt b/utilities/Nerve_GIC/CMakeLists.txt
+index 215f9df..20aeb8e 100644
+--- a/utilities/Nerve_GIC/CMakeLists.txt
++++ b/utilities/Nerve_GIC/CMakeLists.txt
+@@ -11,14 +11,6 @@ if (NOT CGAL_VERSION VERSION_LESS 4.8.1)
+ endif()
+
+ file(COPY KeplerMapperVisuFromTxtFile.py km.py DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
+- # Copy files for not to pollute sources when testing
+- file(COPY "${CMAKE_SOURCE_DIR}/data/points/human.off" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
+-
+- add_test(NAME Nerve_GIC_utilities_nerve COMMAND $<TARGET_FILE:Nerve>
+- "human.off" "2" "10" "0.3")
+-
+- add_test(NAME Nerve_GIC_utilities_VoronoiGIC COMMAND $<TARGET_FILE:VoronoiGIC>
+- "human.off" "100")
+
+ install(TARGETS Nerve DESTINATION bin)
+ install(TARGETS VoronoiGIC DESTINATION bin)
diff --git a/debian/patches/0004-Use-system-MathJax.patch b/debian/patches/0004-Use-system-MathJax.patch
new file mode 100644
index 00000000..ecd7b0d3
--- /dev/null
+++ b/debian/patches/0004-Use-system-MathJax.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:20:33 +0200
+Subject: Use system MathJax.
+
+---
+ Doxyfile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Doxyfile b/Doxyfile
+index 020667e..88ce932 100644
+--- a/Doxyfile
++++ b/Doxyfile
+@@ -1454,7 +1454,7 @@ MATHJAX_FORMAT = HTML-CSS
+ # The default value is: http://cdn.mathjax.org/mathjax/latest.
+ # This tag requires that the tag USE_MATHJAX is set to YES.
+
+-MATHJAX_RELPATH = ../common
++MATHJAX_RELPATH = /usr/share/javascript/mathjax
+
+ # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+ # extension names that should be enabled during MathJax rendering. For example
diff --git a/debian/patches/0005-Don-t-set-runtime-library-dirs-for-Python-extensions.patch b/debian/patches/0005-Don-t-set-runtime-library-dirs-for-Python-extensions.patch
new file mode 100644
index 00000000..5ab944f7
--- /dev/null
+++ b/debian/patches/0005-Don-t-set-runtime-library-dirs-for-Python-extensions.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:21:25 +0200
+Subject: Don't set runtime library dirs for Python extensions.
+
+---
+ cython/setup.py.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cython/setup.py.in b/cython/setup.py.in
+index ee381a1..3c8e0c4 100644
+--- a/cython/setup.py.in
++++ b/cython/setup.py.in
+@@ -36,7 +36,7 @@ gudhi = Extension(
+ libraries=[@GUDHI_CYTHON_LIBRARIES@],
+ library_dirs=[@GUDHI_CYTHON_LIBRARY_DIRS@],
+ include_dirs = [@GUDHI_CYTHON_INCLUDE_DIRS@],
+- runtime_library_dirs=[@GUDHI_CYTHON_RUNTIME_LIBRARY_DIRS@],
++ runtime_library_dirs=[],
+ )
+
+ setup(
diff --git a/debian/patches/0006-Force-linking-of-Python-module-with-CGAL.patch b/debian/patches/0006-Force-linking-of-Python-module-with-CGAL.patch
new file mode 100644
index 00000000..cea5de9d
--- /dev/null
+++ b/debian/patches/0006-Force-linking-of-Python-module-with-CGAL.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:23:55 +0200
+Subject: Force linking of Python module with CGAL.
+
+---
+ cython/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cython/CMakeLists.txt b/cython/CMakeLists.txt
+index 9194e45..90ca2b7 100644
+--- a/cython/CMakeLists.txt
++++ b/cython/CMakeLists.txt
+@@ -78,7 +78,7 @@ if(CYTHON_FOUND)
+ if(CGAL_HEADER_ONLY)
+ set(GUDHI_CYTHON_EXTRA_COMPILE_ARGS "${GUDHI_CYTHON_EXTRA_COMPILE_ARGS}'-DCGAL_HEADER_ONLY', ")
+ else(CGAL_HEADER_ONLY)
+- add_gudhi_cython_lib(${CGAL_LIBRARY})
++ add_gudhi_cython_lib("${CGAL_LIBRARIES_DIR}/libCGAL.so")
+ set(GUDHI_CYTHON_LIBRARY_DIRS "${GUDHI_CYTHON_LIBRARY_DIRS}'${CGAL_LIBRARIES_DIR}', ")
+ # If CGAL is not header only, CGAL library may link with boost system,
+ add_gudhi_cython_lib(${Boost_SYSTEM_LIBRARY})
diff --git a/debian/patches/0007-Force-linking-against-libatomic-for-parts-that-use-T.patch b/debian/patches/0007-Force-linking-against-libatomic-for-parts-that-use-T.patch
new file mode 100644
index 00000000..7d69e5ce
--- /dev/null
+++ b/debian/patches/0007-Force-linking-against-libatomic-for-parts-that-use-T.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:25:37 +0200
+Subject: Force linking against libatomic for parts that use TBB.
+
+---
+ cmake/modules/FindTBB.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cmake/modules/FindTBB.cmake b/cmake/modules/FindTBB.cmake
+index 13f4d92..6baa8d7 100644
+--- a/cmake/modules/FindTBB.cmake
++++ b/cmake/modules/FindTBB.cmake
+@@ -375,6 +375,8 @@ if (TBB_INCLUDE_DIR)
+ endif(NOT TBB_without_pthread)
+ endif(UNIX AND NOT APPLE)
+
++ list(APPEND ALL_TBB_LIBRARIES atomic)
++
+ set (TBB_LIBRARIES ${ALL_TBB_LIBRARIES}
+ CACHE PATH "TBB libraries" FORCE)
+
diff --git a/debian/patches/0008-Offline-header-to-avoid-loading-remote-resources-in-.patch b/debian/patches/0008-Offline-header-to-avoid-loading-remote-resources-in-.patch
new file mode 100644
index 00000000..3c93cecd
--- /dev/null
+++ b/debian/patches/0008-Offline-header-to-avoid-loading-remote-resources-in-.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 15 Jun 2018 13:42:45 +0200
+Subject: Offline header to avoid loading remote resources in HTML docs.
+
+---
+ Doxyfile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Doxyfile b/Doxyfile
+index 88ce932..eb565bc 100644
+--- a/Doxyfile
++++ b/Doxyfile
+@@ -1059,7 +1059,7 @@ HTML_FILE_EXTENSION = .html
+ # of the possible markers and block names see the documentation.
+ # This tag requires that the tag GENERATE_HTML is set to YES.
+
+-HTML_HEADER = doc/common/header.html
++HTML_HEADER = doc/common/offline_header.html
+
+ # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+ # generated HTML page. If the tag is left blank doxygen will generate a standard
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 00000000..81114a30
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,7 @@
+0002-Disable-Sphinx-test-since-we-re-not-currently-using.patch
+0003-Disable-tests-that-use-DFSG-deleted-data-files.patch
+0004-Use-system-MathJax.patch
+0005-Don-t-set-runtime-library-dirs-for-Python-extensions.patch
+0006-Force-linking-of-Python-module-with-CGAL.patch
+0007-Force-linking-against-libatomic-for-parts-that-use-T.patch
+0008-Offline-header-to-avoid-loading-remote-resources-in-.patch
diff --git a/debian/python3-gudhi.install b/debian/python3-gudhi.install
new file mode 100644
index 00000000..be9e3f27
--- /dev/null
+++ b/debian/python3-gudhi.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/python3/dist-packages/cython/gudhi.cpython*.so usr/lib/python3/dist-packages/ \ No newline at end of file
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..3cd05121
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,100 @@
+#!/usr/bin/make -f
+
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
+CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS)
+LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
+
+TMPBIN:=debian/tmp/usr/bin
+
+PY3VERS:=$(shell py3versions -vs)
+DEFAULT_PY3VER=$(shell py3versions -vd)
+REMAINING_PY3VERS:=$(filter-out $(DEFAULT_PY3VER), $(PY3VERS))
+
+%:
+# The --buildirectory=build is there so that we can easily get a hold
+# of documentation and examples, which are not installed by upstream.
+ dh $@ --with=python3 --builddirectory=build
+ for py3ver in $(REMAINING_PY3VERS) ; do \
+ dh $@ --with=python3 --builddirectory=build$$py3ver ; \
+ done
+
+override_dh_auto_configure:
+ dh_auto_configure -- -DWITH_GUDHI_BENCHMARK=true -DWITH_GUDHI_EXAMPLE=true -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=true -DPython_ADDITIONAL_VERSIONS=$(DEFAULT_PY3VER)
+ for py3ver in $(REMAINING_PY3VERS) ; do \
+ dh_auto_configure --builddirectory=build$$py3ver -- -DWITH_GUDHI_BENCHMARK=false -DWITH_GUDHI_EXAMPLE=false -DWITH_GUDHI_PYTHON=true -DWITH_GUDHI_TEST=true -DWITH_GUDHI_UTILITIES=false -DPython_ADDITIONAL_VERSIONS=$$py3ver ; \
+ done
+
+override_dh_auto_build-arch:
+ dh_auto_build --builddirectory=build
+ for py3ver in $(REMAINING_PY3VERS) ; do \
+ dh_auto_build --builddirectory=build$$py3ver ; \
+ done
+
+override_dh_auto_build-indep:
+ make -C build doxygen
+ dh_auto_build --builddirectory=build
+
+override_dh_auto_test-indep:
+
+override_dh_auto_test-arch:
+ dh_auto_test --no-parallel --builddirectory=build
+ for py3ver in $(REMAINING_PY3VERS) ; do \
+ dh_auto_test --no-parallel --builddirectory=build$$py3ver ; \
+ done
+
+override_dh_auto_install:
+ find example -type f \( -name '*.cpp' -o \( -name '*.txt' -a ! -iname 'cmake*' \) \) -exec sh -c 'install -D -m 644 $$0 debian/tmp/usr/share/doc/libgudhi-examples/$$0' {} \;
+
+ dh_auto_install --builddirectory=build
+ for py3ver in $(REMAINING_PY3VERS) ; do \
+ dh_auto_install --builddirectory=build$$py3ver ; \
+ done
+
+ # Remove installed information about Miniball header.
+ rm debian/tmp/usr/include/gudhi/Miniball.COPYRIGHT
+ rm debian/tmp/usr/include/gudhi/Miniball.README
+
+ mv $(TMPBIN)/Nerve \
+ $(TMPBIN)/gudhi-nerve
+ mv $(TMPBIN)/VoronoiGIC \
+ $(TMPBIN)/gudhi-voronoi-gic
+ mv $(TMPBIN)/Witness_complex_strong_witness_persistence \
+ $(TMPBIN)/gudhi-witness-complex-strong-witness-persistence
+ mv $(TMPBIN)/Witness_complex_weak_witness_persistence \
+ $(TMPBIN)/gudhi-witness-complex-weak-witness-persistence
+ mv $(TMPBIN)/alpha_complex_3d_persistence \
+ $(TMPBIN)/gudhi-alpha-complex-3d-persistence
+ mv $(TMPBIN)/alpha_complex_persistence \
+ $(TMPBIN)/gudhi-alpha-complex-persistence
+ mv $(TMPBIN)/bottleneck_distance \
+ $(TMPBIN)/gudhi-bottleneck-distance
+ mv $(TMPBIN)/cech_persistence \
+ $(TMPBIN)/gudhi-cech-persistence
+ mv $(TMPBIN)/cubical_complex_persistence \
+ $(TMPBIN)/gudhi-cubical-complex-persistence
+ mv $(TMPBIN)/exact_alpha_complex_3d_persistence \
+ $(TMPBIN)/gudhi-exact-alpha-complex-3d-persistence
+ mv $(TMPBIN)/off_file_from_shape_generator \
+ $(TMPBIN)/gudhi-off-file-from-shape-generator
+ mv $(TMPBIN)/periodic_alpha_complex_3d_persistence \
+ $(TMPBIN)/gudhi-periodic-alpha-complex-3d-persistence
+ mv $(TMPBIN)/periodic_cubical_complex_persistence \
+ $(TMPBIN)/gudhi-periodic-cubical-complex-persistence
+ mv $(TMPBIN)/rips_correlation_matrix_persistence \
+ $(TMPBIN)/gudhi-rips-correlation-matrix-persistence
+ mv $(TMPBIN)/rips_distance_matrix_persistence \
+ $(TMPBIN)/gudhi-rips-distance-matrix-persistence
+ mv $(TMPBIN)/rips_persistence \
+ $(TMPBIN)/gudhi-rips-persistence
+ mv $(TMPBIN)/sparse_rips_persistence \
+ $(TMPBIN)/gudhi-sparse-rips-persistence
+ mv $(TMPBIN)/weighted_alpha_complex_3d_persistence \
+ $(TMPBIN)/gudhi-weighted-alpha-complex-3d-persistence
+ mv $(TMPBIN)/weighted_periodic_alpha_complex_3d_persistence \
+ $(TMPBIN)/gudhi-weighted-periodic-alpha-complex-3d-persistence
+
+ install -D build/GudhUI/GudhUI $(TMPBIN)/gudhui
+
+override_dh_compress:
+ dh_compress -X.cpp
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 00000000..163aaf8d
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 00000000..65510cef
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,3 @@
+Tests: python-upstream.sh
+Depends: python3-all, python3-gudhi, python3-pytest
+
diff --git a/debian/tests/python-upstream.py b/debian/tests/python-upstream.py
new file mode 100644
index 00000000..098701aa
--- /dev/null
+++ b/debian/tests/python-upstream.py
@@ -0,0 +1,17 @@
+import pytest
+import os
+
+tmpdir = os.getenv("AUTOPKGTEST_TMP")
+
+if tmpdir is None:
+ print("Need the environment variable AUTOPKGTEST_TMP.")
+ exit(1)
+
+cwd = os.getcwd()
+test_path = cwd + "/cython/test"
+
+os.chdir(tmpdir)
+
+print("Running tests from %s with cwd %s." %(test_path, os.getcwd()))
+
+exit(pytest.main([test_path]))
diff --git a/debian/tests/python-upstream.sh b/debian/tests/python-upstream.sh
new file mode 100755
index 00000000..e292ab76
--- /dev/null
+++ b/debian/tests/python-upstream.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+set -e
+
+for py3ver in $(py3versions -vs)
+do
+ echo "Running tests with Python ${py3ver}."
+ /usr/bin/python${py3ver} -B debian/tests/python-upstream.py
+done
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 00000000..d518384a
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,5 @@
+version=3
+
+opts="dversionmangle=s/\+dfsg(\.\d+)?$//,filenamemangle=s/\S+\/v?(\S+)\.tar\.gz/gudhi-$1\.tar\.gz/" \
+ https://gforge.inria.fr/frs/?group_id=3865 \
+ .*\/.*GUDHI_(\d[\d.-]*)\.tar\.gz