guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

03/07: gnu: Add tsl-sparse-map.


From: guix-commits
Subject: 03/07: gnu: Add tsl-sparse-map.
Date: Sat, 1 Jul 2023 06:20:40 -0400 (EDT)

lilyp pushed a commit to branch master
in repository guix.

commit 53ade735cf10a287e7fa87142b2db97925e80389
Author: David Elsing <david.elsing@posteo.net>
AuthorDate: Sun Jun 25 10:03:55 2023 +0000

    gnu: Add tsl-sparse-map.
    
    * gnu/packages/cpp.scm (tsl-sparse-map): New variable.
    
    Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
---
 gnu/packages/cpp.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 1dc2621748..4c63a4e004 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2624,3 +2624,39 @@ map and a hash set variants using open addressing and 
hopscotch hashing to
 resolve collisions.  It is intended to be fast and provides additional
 features, such as heterogeneous lookups and different growth policies.")
     (license license:expat)))
+
+(define-public tsl-sparse-map
+  (package
+    (name "tsl-sparse-map")
+    (version "0.6.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Tessil/sparse-map";)
+                    (commit (string-append "v" version))))
+              (sha256
+               (base32
+                "0rb7w0hzsj4qbm0dff1niaf75aag9lj0xqhgb3vg5h9hfic62ic2"))
+              (file-name (git-file-name name version))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-cmake-test
+            (lambda _
+              (let ((file (open-file "CMakeLists.txt" "a")))
+                (display "\nenable_testing()\nadd_subdirectory(tests)" file)
+                (close-port file))
+              (substitute* "tests/CMakeLists.txt"
+                (("set\\(Boost_USE_STATIC_LIBS.*") "")
+                (("add_subdirectory\\(\\.\\..*")
+                 "add_test(tsl_sparse_map_tests tsl_sparse_map_tests)\n")))))))
+    (native-inputs (list boost))
+    (home-page "https://github.com/Tessil/sparse-map";)
+    (synopsis "Sparse hash map")
+    (description "This package provides a C++ implementation of a hash map and
+a hash set with open addressing and sparse quadratic probing.  It is intended
+to be memory efficient and provides additional features, such as heterogeneous
+lookups and different growth policies.")
+    (license license:expat)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]