frozen: initial commit, version 1.1.1

This commit is contained in:
Tim Biermann 2023-08-07 06:47:01 +02:00
parent 94ef9dacbb
commit fc31de9050
5 changed files with 109 additions and 0 deletions

26
frozen/.footprint Normal file
View File

@ -0,0 +1,26 @@
drwxr-xr-x root/root usr/
drwxrwxr-x root/root usr/include/
drwxrwxr-x root/root usr/include/frozen/
-rw-rw-r-- root/root usr/include/frozen/algorithm.h
drwxrwxr-x root/root usr/include/frozen/bits/
-rw-rw-r-- root/root usr/include/frozen/bits/algorithms.h
-rw-rw-r-- root/root usr/include/frozen/bits/basic_types.h
-rw-rw-r-- root/root usr/include/frozen/bits/constexpr_assert.h
-rw-rw-r-- root/root usr/include/frozen/bits/defines.h
-rw-rw-r-- root/root usr/include/frozen/bits/elsa.h
-rw-rw-r-- root/root usr/include/frozen/bits/elsa_std.h
-rw-rw-r-- root/root usr/include/frozen/bits/exceptions.h
-rw-rw-r-- root/root usr/include/frozen/bits/hash_string.h
-rw-rw-r-- root/root usr/include/frozen/bits/pmh.h
-rw-rw-r-- root/root usr/include/frozen/bits/version.h
-rw-rw-r-- root/root usr/include/frozen/map.h
-rw-rw-r-- root/root usr/include/frozen/random.h
-rw-rw-r-- root/root usr/include/frozen/set.h
-rw-rw-r-- root/root usr/include/frozen/string.h
-rw-rw-r-- root/root usr/include/frozen/unordered_map.h
-rw-rw-r-- root/root usr/include/frozen/unordered_set.h
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/cmake/
drwxr-xr-x root/root usr/share/cmake/frozen/
-rw-r--r-- root/root usr/share/cmake/frozen/frozenConfig.cmake
-rw-r--r-- root/root usr/share/cmake/frozen/frozenConfigVersion.cmake

7
frozen/.signature Normal file
View File

@ -0,0 +1,7 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF3yK8URfa1urDK9GQf1Ap0ZF19PBngSa7HuKkmvTDX9v8/YvbHe3MhPBo9MyJDofFXvvmidbVpKv5+R3TkE6eFgY=
SHA256 (Pkgfile) = 4e3156687198bc335b9ee397a16734d9008e9924e959670a8f91cc236487b536
SHA256 (.footprint) = f0e261c1b3f1896560cc2cbd29043b12a94e3b8def670edc8a03238ba0e91804
SHA256 (frozen-1.1.1.tar.gz) = f7c7075750e8fceeac081e9ef01944f221b36d9725beac8681cbd2838d26be45
SHA256 (frozen-1.1.1-missing-include.patch) = ec8a0168430701e2878e8ad50fd56ea4ada85984ce365ac34dd8f96705586a95
SHA256 (079f73cc5c6413127d47f325cbb34a607e2cb030.patch) = 97a4f7f24427adc43cf2671fa41fa183e0d41ba547c791b5850954632f02df06

View File

@ -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);

27
frozen/Pkgfile Normal file
View File

@ -0,0 +1,27 @@
# Description: a header-only, constexpr alternative to gperf for C++14 users
# URL: https://github.com/serge-sans-paille/frozen
# Maintainer: Tim Biermann, tbier at posteo dot de
name=frozen
version=1.1.1
release=1
source=(https://github.com/serge-sans-paille/frozen/archive/$version/$name-$version.tar.gz
frozen-1.1.1-missing-include.patch
079f73cc5c6413127d47f325cbb34a607e2cb030.patch)
build() {
patch -Np1 -d $name-$version -i $SRC/frozen-1.1.1-missing-include.patch
patch -Np1 -d $name-$version -i $SRC/079f73cc5c6413127d47f325cbb34a607e2cb030.patch
cmake -S $name-$version -B build -G Ninja \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_INSTALL_LIBDIR=lib \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-D BUILD_TESTING=OFF \
-D CMAKE_SKIP_RPATH=ON \
-Wno-dev
cmake --build build
DESTDIR=$PKG cmake --install build
}

View File

@ -0,0 +1,12 @@
diff -up frozen-1.1.1/include/frozen/bits/pmh.h:5.omv~ frozen-1.1.1/include/frozen/bits/pmh.h:5
diff -up frozen-1.1.1/include/frozen/bits/pmh.h.omv~ frozen-1.1.1/include/frozen/bits/pmh.h
--- frozen-1.1.1/include/frozen/bits/pmh.h.omv~ 2023-07-10 15:37:16.000503631 +0200
+++ frozen-1.1.1/include/frozen/bits/pmh.h 2023-07-10 15:37:22.640548964 +0200
@@ -29,6 +29,7 @@
#include <array>
#include <limits>
+#include <cstdint>
namespace frozen {