From b2ef701685b7d19fbaac1529a0bc553da9e29308 Mon Sep 17 00:00:00 2001 From: Gard Spreemann Date: Tue, 7 Feb 2017 17:39:51 +0100 Subject: Initial Debian packaging as uploaded to mentors.debian.net. --- debian/TODO | 5 ++++ debian/changelog | 5 ++++ debian/compat | 1 + debian/control | 30 ++++++++++++++++++++ debian/copyright | 32 ++++++++++++++++++++++ debian/libgudhi-dev.install | 2 ++ debian/patches/0001-Stash-flags.patch | 32 ++++++++++++++++++++++ debian/patches/0002-Don-t-use-static-boost.patch | 21 ++++++++++++++ ...e-tests-that-uncleanly-write-outside-the-.patch | 32 ++++++++++++++++++++++ debian/patches/series | 3 ++ debian/rules | 19 +++++++++++++ debian/source/format | 1 + debian/watch | 5 ++++ 13 files changed, 188 insertions(+) create mode 100644 debian/TODO create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/libgudhi-dev.install create mode 100644 debian/patches/0001-Stash-flags.patch create mode 100644 debian/patches/0002-Don-t-use-static-boost.patch create mode 100644 debian/patches/0003-Disable-some-tests-that-uncleanly-write-outside-the-.patch create mode 100644 debian/patches/series create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/watch (limited to 'debian') diff --git a/debian/TODO b/debian/TODO new file mode 100644 index 00000000..9a3661d6 --- /dev/null +++ b/debian/TODO @@ -0,0 +1,5 @@ + * Install upstream's examples. They are currently *built*, but not + installed. Upstream does not have nice install rules for them. + + * Use examples to test the package. + \ No newline at end of file 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 Thu, 13 Oct 2016 21:35:28 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 00000000..ec635144 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 00000000..d3933990 --- /dev/null +++ b/debian/control @@ -0,0 +1,30 @@ +Source: gudhi +Maintainer: Gard Spreemann +Section: math +Priority: optional +Standards-Version: 3.9.8.0 +Build-Depends: debhelper (>= 9), cmake (>= 2.6), + libboost-system-dev (>= 1.48), libboost-filesystem-dev (>= 1.48), libboost-program-options-dev (>= 1.48), libboost-chrono-dev (>= 1.48), libboost-timer-dev (>= 1.48), + libgmp-dev (>= 4.2), libcgal-dev (>= 4.7), libtbb-dev, libeigen3-dev (>= 3.1.0) +Homepage: http://gudhi.gforge.inria.fr/ + +Package: libgudhi-dev +Section: libdevel +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends}, + libboost-system-dev (>= 1.48), libboost-filesystem-dev (>= 1.48), libboost-program-options-dev (>= 1.48), libboost-chrono-dev (>= 1.48), libboost-timer-dev (>= 1.48), + libgmp-dev (>= 4.2), libcgal-dev (>= 4.7), libtbb-dev, libeigen3-dev (>= 3.1.0) +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. + . + The package currently does not ship any examples. For those, see the + upstream website. + diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000..1e6c929a --- /dev/null +++ b/debian/copyright @@ -0,0 +1,32 @@ +Format: http://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 unneccessary 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: debian/* +Copyright: 2016 Gard Spreemann +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 . + . + On Debian systems, the complete text of the GNU General + Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". 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/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 +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 +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 +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..966071e5 --- /dev/null +++ b/debian/rules @@ -0,0 +1,19 @@ +#!/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) + +%: + dh $@ + +override_dh_auto_clean: + rm -f GUDHIVersion.cmake + dh_auto_clean + +override_dh_auto_install: + dh_auto_install --destdir=debian/tmp/ + + + 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 -- cgit v1.2.3