diff options
Diffstat (limited to '')
-rw-r--r-- | debian/README.Debian | 6 | ||||
-rw-r--r-- | debian/changelog | 19 | ||||
-rw-r--r-- | debian/control | 38 | ||||
-rw-r--r-- | debian/copyright | 33 | ||||
-rw-r--r-- | debian/frozen-dev.dirs | 2 | ||||
-rw-r--r-- | debian/frozen-dev.install | 4 | ||||
-rw-r--r-- | debian/frozen-docs.docs | 2 | ||||
-rw-r--r-- | debian/frozen1.dirs | 1 | ||||
-rw-r--r-- | debian/frozen1.install | 1 | ||||
-rw-r--r-- | debian/patches/079f73cc5c6413127d47f325cbb34a607e2cb030.patch | 37 | ||||
-rw-r--r-- | debian/patches/cstdint.diff | 18 | ||||
-rw-r--r-- | debian/patches/no-werror.diff | 19 | ||||
-rw-r--r-- | debian/patches/series | 3 | ||||
-rwxr-xr-x | debian/rules | 5 | ||||
-rw-r--r-- | debian/source/format | 1 | ||||
-rw-r--r-- | debian/source/include-binaries | 27 | ||||
-rw-r--r-- | debian/upstream/metadata.ex | 10 |
17 files changed, 226 insertions, 0 deletions
diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 0000000..0273f7f --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,6 @@ +frozen for Debian +---------------- + +<Possible notes regarding this package - if none, delete this file.> + + -- Rene Engelhard <rene@debian.org> Sat, 17 Jun 2023 12:56:22 +0200 diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..f6bb3d4 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,19 @@ +frozen (1.1.1-3) unstable; urgency=medium + + * debian/patches/no-werror.diff: don't use -Werror + * debian/patches/cstdint.diff: add missing #include <cstdint> to fix + build of the tests with gcc 13 + + -- Rene Engelhard <rene@debian.org> Mon, 24 Jul 2023 22:02:12 +0000 + +frozen (1.1.1-2) unstable; urgency=medium + + * source-only upload to allow testing migration + + -- Rene Engelhard <rene@debian.org> Mon, 24 Jul 2023 19:19:38 +0000 + +frozen (1.1.1-1) unstable; urgency=medium + + * Initial release. + + -- Rene Engelhard <rene@debian.org> Sat, 17 Jun 2023 19:36:24 +0000 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..e7e46c9 --- /dev/null +++ b/debian/control @@ -0,0 +1,38 @@ +Source: frozen +Section: libs +Priority: optional +Maintainer: Rene Engelhard <rene@debian.org> +Rules-Requires-Root: no +Build-Depends: + debhelper-compat (= 13), + cmake, +Standards-Version: 4.6.2 +Homepage: https://github.com/serge-sans-paille/frozen + +Package: libfrozen-dev +Section: libdevel +Architecture: all +Depends: + ${misc:Depends}, +Description: library for immutable and fixed-size containers + Header-only library that provides 0 cost initialization for immutable + containers, fixed-size containers, and various algorithms. + . + Frozen provides: + . + - immutable (a.k.a. frozen), constexpr-compatible versions of std::set, + std::unordered_set, std::map and std::unordered_map. + - fixed-capacity, constinit-compatible versions of std::map and + std::unordered_map with immutable, compile-time selected keys mapped to + mutable values. + - 0-cost initialization version of std::search for frozen needles using + Boyer-Moore or Knuth-Morris-Pratt algorithms. + . + The unordered_* containers are guaranteed perfect (a.k.a. no hash collision) + and the extra storage is linear with respect to the number of keys. + . + Once initialized, the container keys cannot be updated, and in exchange, + lookups are faster. + . + This package contains the necessary headers. + diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..4be3d9f --- /dev/null +++ b/debian/copyright @@ -0,0 +1,33 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: https://github.com/serge-sans-paille/frozen/tags +Upstream-Name: frozen +Upstream-Contact: Serge sans Paille <serge.guelton@telecom-bretagne.eu> + +Files: + * +Copyright: Copyright 2017 Quarkslab +License: Apache-2.0 + On Debian systems the full text of the Apache License version 2.0 can be found + in /usr/share/common-licenses + +Files: + debian/* +Copyright: + 2023 Rene Engelhard <rene@debian.org> +License: GPL-2+ + This package 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 2 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/> +Comment: + On Debian systems, the complete text of the GNU General + Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". + diff --git a/debian/frozen-dev.dirs b/debian/frozen-dev.dirs new file mode 100644 index 0000000..4418816 --- /dev/null +++ b/debian/frozen-dev.dirs @@ -0,0 +1,2 @@ +usr/lib +usr/include diff --git a/debian/frozen-dev.install b/debian/frozen-dev.install new file mode 100644 index 0000000..61c9409 --- /dev/null +++ b/debian/frozen-dev.install @@ -0,0 +1,4 @@ +usr/include/* +usr/lib/*/lib*.so +usr/lib/*/pkgconfig/* +usr/share/pkgconfig/* diff --git a/debian/frozen-docs.docs b/debian/frozen-docs.docs new file mode 100644 index 0000000..7319041 --- /dev/null +++ b/debian/frozen-docs.docs @@ -0,0 +1,2 @@ +README.source +README.Debian diff --git a/debian/frozen1.dirs b/debian/frozen1.dirs new file mode 100644 index 0000000..6845771 --- /dev/null +++ b/debian/frozen1.dirs @@ -0,0 +1 @@ +usr/lib diff --git a/debian/frozen1.install b/debian/frozen1.install new file mode 100644 index 0000000..3ddde58 --- /dev/null +++ b/debian/frozen1.install @@ -0,0 +1 @@ +usr/lib/*/lib*.so.* diff --git a/debian/patches/079f73cc5c6413127d47f325cbb34a607e2cb030.patch b/debian/patches/079f73cc5c6413127d47f325cbb34a607e2cb030.patch new file mode 100644 index 0000000..1ce542e --- /dev/null +++ b/debian/patches/079f73cc5c6413127d47f325cbb34a607e2cb030.patch @@ -0,0 +1,37 @@ +From 079f73cc5c6413127d47f325cbb34a607e2cb030 Mon Sep 17 00:00:00 2001 +From: serge-sans-paille <serge.guelton@telecom-bretagne.eu> +Date: Fri, 16 Dec 2022 22:58:51 +0100 +Subject: [PATCH] Workaround gcc 11 limitation + +For some reason, gcc sees a constexpr violation here. Trust clang and msvc on this. +--- + include/frozen/unordered_set.h | 2 +- + tests/test_unordered_set.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/include/frozen/unordered_set.h b/include/frozen/unordered_set.h +index 4d16df9..196ea50 100644 +--- a/include/frozen/unordered_set.h ++++ b/include/frozen/unordered_set.h +@@ -105,7 +105,7 @@ class unordered_set { + /* lookup */ + template <class KeyType, class Hasher, class Equal> + constexpr std::size_t count(KeyType const &key, Hasher const &hash, Equal const &equal) const { +- auto const k = lookup(key, hash); ++ auto const & k = lookup(key, hash); + return equal(k, key); + } + template <class KeyType> +diff --git a/tests/test_unordered_set.cpp b/tests/test_unordered_set.cpp +index e90a0d4..042c1a8 100644 +--- a/tests/test_unordered_set.cpp ++++ b/tests/test_unordered_set.cpp +@@ -65,7 +65,7 @@ TEST_CASE("tripleton str frozen unordered set", "[unordered set]") { + constexpr auto max_size = ze_set.max_size(); + REQUIRE(max_size == 3); + +- constexpr auto nocount = ze_set.count(4); ++ const auto nocount = ze_set.count(4); + REQUIRE(nocount == 0); + + constexpr auto count = ze_set.count(1); diff --git a/debian/patches/cstdint.diff b/debian/patches/cstdint.diff new file mode 100644 index 0000000..c4cbb7f --- /dev/null +++ b/debian/patches/cstdint.diff @@ -0,0 +1,18 @@ +Description: fix build with gcc 13 +Author: Rene Engelhard <rene@debian.org> + +--- +Origin: vendor +Forwarded: no +Last-Update: 2023-07-24 + +--- frozen-1.1.1.orig/include/frozen/bits/pmh.h ++++ frozen-1.1.1/include/frozen/bits/pmh.h +@@ -29,6 +29,7 @@ + + #include <array> + #include <limits> ++#include <cstdint> + + namespace frozen { + diff --git a/debian/patches/no-werror.diff b/debian/patches/no-werror.diff new file mode 100644 index 0000000..8f1e911 --- /dev/null +++ b/debian/patches/no-werror.diff @@ -0,0 +1,19 @@ +Description: don't use -Werror +Author: Rene Engelhard <rene@debian.org> + +--- +Origin: vendor +Forwarded: no +Last-Update: 2023-07-24 + +--- frozen-1.1.1.orig/tests/CMakeLists.txt ++++ frozen-1.1.1/tests/CMakeLists.txt +@@ -28,7 +28,7 @@ string(CONCAT generator + "$<$<OR:$<CXX_COMPILER_ID:GNU>" + ",$<CXX_COMPILER_ID:Clang>" + ",$<CXX_COMPILER_ID:AppleClang>>" +- ":-Wall;-Wextra;-Wpedantic;-Werror;-Wshadow;" ++ ":-Wall;-Wextra;-Wpedantic;-Wshadow;" + "$<$<BOOL:${frozen.coverage}>:--coverage>>" + "$<$<CXX_COMPILER_ID:Intel>:" + "$<$<PLATFORM_ID:Windows>:/W3;/WX;>" diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..5458708 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,3 @@ +079f73cc5c6413127d47f325cbb34a607e2cb030.patch +cstdint.diff +no-werror.diff diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..abde6ef --- /dev/null +++ b/debian/rules @@ -0,0 +1,5 @@ +#!/usr/bin/make -f + +%: + dh $@ + diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/include-binaries b/debian/source/include-binaries new file mode 100644 index 0000000..c4f1ed0 --- /dev/null +++ b/debian/source/include-binaries @@ -0,0 +1,27 @@ +obj-x86_64-linux-gnu/CMakeFiles/3.27.0/CMakeDetermineCompilerABI_CXX.bin +obj-x86_64-linux-gnu/CMakeFiles/3.27.0/CompilerIdCXX/a.out +obj-x86_64-linux-gnu/examples/CMakeFiles/frozen.example.enum_to_string.dir/enum_to_string.cpp.o +obj-x86_64-linux-gnu/examples/CMakeFiles/frozen.example.enum_to_string_hash.dir/enum_to_string_hash.cpp.o +obj-x86_64-linux-gnu/examples/CMakeFiles/frozen.example.pixel_art.dir/pixel_art.cpp.o +obj-x86_64-linux-gnu/examples/CMakeFiles/frozen.example.static_assert.dir/static_assert.cpp.o +obj-x86_64-linux-gnu/examples/CMakeFiles/frozen.example.value_modification.dir/value_modification.cpp.o +obj-x86_64-linux-gnu/examples/frozen.example.enum_to_string +obj-x86_64-linux-gnu/examples/frozen.example.enum_to_string_hash +obj-x86_64-linux-gnu/examples/frozen.example.pixel_art +obj-x86_64-linux-gnu/examples/frozen.example.static_assert +obj-x86_64-linux-gnu/examples/frozen.example.value_modification +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_algorithms.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_elsa_std.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_main.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_map.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_rand.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_set.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_str.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_str_set.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_unordered_map.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_unordered_map_str.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_unordered_set.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/frozen.tests.dir/test_unordered_str_set.cpp.o +obj-x86_64-linux-gnu/tests/CMakeFiles/test_no_expections.dir/no_exceptions.cpp.o +obj-x86_64-linux-gnu/tests/frozen.tests +obj-x86_64-linux-gnu/tests/test_no_expections diff --git a/debian/upstream/metadata.ex b/debian/upstream/metadata.ex new file mode 100644 index 0000000..bb5cef4 --- /dev/null +++ b/debian/upstream/metadata.ex @@ -0,0 +1,10 @@ +# Example file for upstream/metadata. +# See https://wiki.debian.org/UpstreamMetadata for more info/fields. +# Below an example based on a github project. + +# Bug-Database: https://github.com/<user>/frozen/issues +# Bug-Submit: https://github.com/<user>/frozen/issues/new +# Changelog: https://github.com/<user>/frozen/blob/master/CHANGES +# Documentation: https://github.com/<user>/frozen/wiki +# Repository-Browse: https://github.com/<user>/frozen +# Repository: https://github.com/<user>/frozen.git |