summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog5
-rw-r--r--debian/compat1
-rw-r--r--debian/control70
-rw-r--r--debian/copyright86
-rw-r--r--debian/libgudhi-dev.docs1
-rw-r--r--debian/libgudhi-dev.install2
-rw-r--r--debian/libgudhi-doc.install1
-rw-r--r--debian/libgudhi-examples.docs1
-rw-r--r--debian/libgudhi-examples.install1
-rw-r--r--debian/patches/0001-Stash-flags.patch32
-rw-r--r--debian/patches/0002-Don-t-use-static-boost.patch21
-rw-r--r--debian/patches/0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch32
-rw-r--r--debian/patches/series3
-rwxr-xr-xdebian/rules26
-rw-r--r--debian/source/format1
-rw-r--r--debian/watch5
16 files changed, 288 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 00000000..6179c9c7
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,5 @@
+gudhi (1.3.1+ds-1) unstable; urgency=medium
+
+ * Initial packaging. (Closes: #840686)
+
+ -- Gard Spreemann <gspreemann@gmail.com> Thu, 13 Oct 2016 21:35:28 +0200
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 00000000..f599e28b
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+10
diff --git a/debian/control b/debian/control
new file mode 100644
index 00000000..7416573b
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,70 @@
+Source: gudhi
+Maintainer: Gard Spreemann <gspreemann@gmail.com>
+Section: math
+Priority: optional
+Standards-Version: 3.9.8.0
+Build-Depends: cmake (>= 2.6), debhelper (>= 10), doxygen, graphviz,
+ libboost-chrono-dev (>= 1.48), libboost-filesystem-dev (>= 1.48),
+ libboost-program-options-dev (>= 1.48), libboost-system-dev (>= 1.48),
+ libboost-timer-dev (>= 1.48), libcgal-dev (>= 4.7), libeigen3-dev (>= 3.1.0),
+ libgmp-dev (>= 4.2), libtbb-dev, texlive-science
+Homepage: http://gudhi.gforge.inria.fr/
+Vcs-Browser: https://git.nonempty.org/debian-gudhi
+Vcs-Git: http://git.nonempty.org/debian-gudhi -b debian/sid
+
+Package: libgudhi-dev
+Section: libdevel
+Architecture: all
+Multi-Arch: foreign
+Depends: ${misc:Depends}, libboost-chrono-dev (>= 1.48),
+ libboost-filesystem-dev (>= 1.48), libboost-program-options-dev (>= 1.48),
+ libboost-system-dev (>= 1.48), libboost-timer-dev (>= 1.48),
+ libcgal-dev (>= 4.7), libeigen3-dev (>= 3.1.0), libgmp-dev (>= 4.2), libtbb-dev
+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.
+ .
+ See the libgudhi-examples package for example programs using the
+ library.
+
+Package: libgudhi-examples
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: libgudhi-doc
+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 some upstream example programs and their source
+ code.
+
+Package: libgudhi-doc
+Section: doc
+Architecture: all
+Multi-Arch: foreign
+Depends: ${misc:Depends}
+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 documentation for the package.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 00000000..9ade90d8
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,86 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: gudhi
+Files-Excluded: debian include/gudhi/Alpha_complex.h~ doc/common/main_page.h~ GudhUI/utils/homsimpl
+Source: http://gudhi.gforge.inria.fr
+ Upstream debian directory, some backup files removed, and unnecessary binary with no source deleted.
+
+Files: *
+Copyright: 2014-2016 Inria Sophia Antipolis - Méditerranée
+ 2014-2016 Inria Saclay - Île-de-France
+ 2014-2016 Université Nice Sophia Antipolis
+License: GPL-3.0+
+
+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
+ 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.
+
+Files: debian/*
+Copyright: 2016 Gard Spreemann <gspreemann@gmail.com>
+License: GPL-3.0+
+
+License: GPL-3.0+
+ 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. \ No newline at end of file
diff --git a/debian/libgudhi-dev.docs b/debian/libgudhi-dev.docs
new file mode 100644
index 00000000..e9849ee8
--- /dev/null
+++ b/debian/libgudhi-dev.docs
@@ -0,0 +1 @@
+biblio \ No newline at end of file
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.install b/debian/libgudhi-doc.install
new file mode 100644
index 00000000..e3362a5f
--- /dev/null
+++ b/debian/libgudhi-doc.install
@@ -0,0 +1 @@
+doc/html/* usr/share/doc/libgudhi/html/ \ No newline at end of file
diff --git a/debian/libgudhi-examples.docs b/debian/libgudhi-examples.docs
new file mode 100644
index 00000000..dbf60533
--- /dev/null
+++ b/debian/libgudhi-examples.docs
@@ -0,0 +1 @@
+debian/tmp/usr/share/doc/libgudhi-examples/* \ No newline at end of file
diff --git a/debian/libgudhi-examples.install b/debian/libgudhi-examples.install
new file mode 100644
index 00000000..dba26b58
--- /dev/null
+++ b/debian/libgudhi-examples.install
@@ -0,0 +1 @@
+debian/tmp/usr/bin/* \ No newline at end of file
diff --git a/debian/patches/0001-Stash-flags.patch b/debian/patches/0001-Stash-flags.patch
new file mode 100644
index 00000000..db45a7e6
--- /dev/null
+++ b/debian/patches/0001-Stash-flags.patch
@@ -0,0 +1,32 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Thu, 13 Oct 2016 15:43:54 +0200
+Subject: Stash flags.
+
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cde949e..a1b39c3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -36,6 +36,8 @@ else()
+ # A fix would be to use https://cmake.org/cmake/help/v3.1/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html
+ # or even better https://cmake.org/cmake/help/v3.1/variable/CMAKE_CXX_STANDARD.html
+ # but it implies to use cmake version 3.1 at least.
++ set(STASH_CXXFLAGS "${CMAKE_CXX_FLAGS}")
++ set(STASH_LDFLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
+
+ # find CGAL in QUIET mode for cmake to be less verbose when CGAL is not found.
+ find_package(CGAL QUIET)
+@@ -53,8 +55,9 @@ else()
+ # Turn off some VC++ warnings
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267 /wd4668 /wd4311 /wd4800 /wd4820 /wd4503 /wd4244 /wd4345 /wd4996 /wd4396 /wd4018")
+ else()
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wpedantic -Wsign-compare")
++ set(CMAKE_CXX_FLAGS "-std=c++11 ${STASH_CXXFLAGS}")
+ endif()
++ set(CMAKE_SHARED_LINKER_FLAGS "${STASH_LDFLAGS}")
+
+ if(CMAKE_BUILD_TYPE MATCHES Debug)
+ message("++ Debug compilation flags are: ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}")
diff --git a/debian/patches/0002-Don-t-use-static-boost.patch b/debian/patches/0002-Don-t-use-static-boost.patch
new file mode 100644
index 00000000..44ca1ac3
--- /dev/null
+++ b/debian/patches/0002-Don-t-use-static-boost.patch
@@ -0,0 +1,21 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 14 Oct 2016 10:31:08 +0200
+Subject: Don't use static boost.
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a1b39c3..0f349f8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -65,7 +65,7 @@ else()
+ message("++ Release compilation flags are: ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}")
+ endif()
+
+- set(Boost_USE_STATIC_LIBS ON)
++ set(Boost_USE_STATIC_LIBS OFF)
+ set(Boost_USE_MULTITHREADED ON)
+ set(Boost_USE_STATIC_RUNTIME OFF)
+
diff --git a/debian/patches/0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch b/debian/patches/0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch
new file mode 100644
index 00000000..75a4420c
--- /dev/null
+++ b/debian/patches/0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch
@@ -0,0 +1,32 @@
+From: Gard Spreemann <gspreemann@gmail.com>
+Date: Fri, 14 Oct 2016 11:04:19 +0200
+Subject: Disable some tests that uncleanly write outside the build directory.
+
+---
+ example/Bitmap_cubical_complex/CMakeLists.txt | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/example/Bitmap_cubical_complex/CMakeLists.txt b/example/Bitmap_cubical_complex/CMakeLists.txt
+index 2fddc51..eb9990b 100644
+--- a/example/Bitmap_cubical_complex/CMakeLists.txt
++++ b/example/Bitmap_cubical_complex/CMakeLists.txt
+@@ -6,8 +6,8 @@ target_link_libraries(Bitmap_cubical_complex ${Boost_SYSTEM_LIBRARY})
+ if (TBB_FOUND)
+ target_link_libraries(Bitmap_cubical_complex ${TBB_LIBRARIES})
+ endif()
+-add_test(Bitmap_cubical_complex_one_sphere ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex ${CMAKE_SOURCE_DIR}/data/bitmap/CubicalOneSphere.txt)
+-add_test(Bitmap_cubical_complex_two_sphere ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex ${CMAKE_SOURCE_DIR}/data/bitmap/CubicalTwoSphere.txt)
++#add_test(Bitmap_cubical_complex_one_sphere ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex ${CMAKE_SOURCE_DIR}/data/bitmap/CubicalOneSphere.txt)
++#add_test(Bitmap_cubical_complex_two_sphere ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex ${CMAKE_SOURCE_DIR}/data/bitmap/CubicalTwoSphere.txt)
+
+ add_executable ( Random_bitmap_cubical_complex Random_bitmap_cubical_complex.cpp )
+ target_link_libraries(Random_bitmap_cubical_complex ${Boost_SYSTEM_LIBRARY})
+@@ -21,6 +21,6 @@ target_link_libraries(Bitmap_cubical_complex_periodic_boundary_conditions ${Boos
+ if (TBB_FOUND)
+ target_link_libraries(Bitmap_cubical_complex_periodic_boundary_conditions ${TBB_LIBRARIES})
+ endif()
+-add_test(Bitmap_cubical_complex_periodic_2d_torus ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex_periodic_boundary_conditions ${CMAKE_SOURCE_DIR}/data/bitmap/2d_torus.txt)
+-add_test(Bitmap_cubical_complex_periodic_3d_torus ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex_periodic_boundary_conditions ${CMAKE_SOURCE_DIR}/data/bitmap/3d_torus.txt)
++#add_test(Bitmap_cubical_complex_periodic_2d_torus ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex_periodic_boundary_conditions ${CMAKE_SOURCE_DIR}/data/bitmap/2d_torus.txt)
++#add_test(Bitmap_cubical_complex_periodic_3d_torus ${CMAKE_CURRENT_BINARY_DIR}/Bitmap_cubical_complex_periodic_boundary_conditions ${CMAKE_SOURCE_DIR}/data/bitmap/3d_torus.txt)
+
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 00000000..093461ad
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,3 @@
+0001-Stash-flags.patch
+0002-Don-t-use-static-boost.patch
+0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..52551d70
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,26 @@
+#!/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)
+
+%:
+# The --buildirectory=build is there so that we can easily get a hold
+# of documentation and examples, which are not installed by upstream.
+ dh $@ --builddirectory=build
+
+override_dh_auto_clean:
+ rm -f GUDHIVersion.cmake
+ rm -rf doc/html
+ dh_auto_clean
+
+override_dh_auto_build:
+ make -C build doxygen
+ dh_auto_build
+
+override_dh_auto_install:
+ find build/example -executable -type f -exec sh -c 'install -D $$0 debian/tmp/usr/bin/libgudhi-example-$$(basename $$0)' {} \;
+ 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
+
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/watch b/debian/watch
new file mode 100644
index 00000000..4b90f13d
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,5 @@
+version=3
+
+opts="dversionmangle=s/\+ds(\.\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