From patchwork Sun Jun 25 10:03:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Elsing X-Patchwork-Id: 14273 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 0EA2F27BBE9; Sun, 25 Jun 2023 11:05:38 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 40DC427BBE2 for ; Sun, 25 Jun 2023 11:05:36 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qDMcE-0002sY-3m; Sun, 25 Jun 2023 06:05:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qDMcC-0002pj-92 for guix-patches@gnu.org; Sun, 25 Jun 2023 06:05:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qDMcB-0008S4-W2 for guix-patches@gnu.org; Sun, 25 Jun 2023 06:05:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qDMcB-0000LK-R0 for guix-patches@gnu.org; Sun, 25 Jun 2023 06:05:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#64137] [PATCH v3 4/7] gnu: Add tsl-ordered-map. Resent-From: David Elsing Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 25 Jun 2023 10:05:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64137 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 64137@debbugs.gnu.org Cc: David Elsing Received: via spool by 64137-submit@debbugs.gnu.org id=B64137.16876874781222 (code B ref 64137); Sun, 25 Jun 2023 10:05:03 +0000 Received: (at 64137) by debbugs.gnu.org; 25 Jun 2023 10:04:38 +0000 Received: from localhost ([127.0.0.1]:42043 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qDMbl-0000Jd-Ri for submit@debbugs.gnu.org; Sun, 25 Jun 2023 06:04:38 -0400 Received: from mout02.posteo.de ([185.67.36.66]:38895) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qDMbi-0000JC-9J for 64137@debbugs.gnu.org; Sun, 25 Jun 2023 06:04:34 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id C2886240101 for <64137@debbugs.gnu.org>; Sun, 25 Jun 2023 12:04:28 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1687687468; bh=7wM4iO2bo3MZiTjv8TWzXPMyTtt4T0kvN6gqifCLvZ0=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version: Content-Transfer-Encoding:From; b=gWPJS+ABj9qUZMDRYbv5S8ht/22LcQze9QF8SXM236gLNHpLvbEi55KU7RT+vgALm 5huzyUjanu0jYzFUi5UJbzEPaMrzfH2FamWkfw4G1kp4XKis5xUI1jlqXGhcbWHGjY /5elYJjfcBin8owjHoT2NJmpKQ5TMSxVXePWFQHUyGwtqB43Aokm+NG6ZDpiQv9RpT XnE2A4/NRUQt1vQbbtDN0RQXqAZkpePtkabXULogmY7hlvHDSxr4W8p5emgqtBDHeb jZ6ojdOEyNpk7X4SniBwsErBzNfs4my3UeUrlGyXe8niT1ze/peBk3dnxyhmQeiHRD +o9Sx9SjLmXeQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4QpmmB2fc0z6tw4; Sun, 25 Jun 2023 12:04:26 +0200 (CEST) From: David Elsing Date: Sun, 25 Jun 2023 10:03:56 +0000 Message-Id: In-Reply-To: <7yo7l3x3ll.fsf@posteo.net> References: <7yo7l3x3ll.fsf@posteo.net> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/cpp.scm (tsl-ordered-map): New variable. --- gnu/packages/cpp.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index adf9e5b2f0..efce934e6d 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2660,3 +2660,39 @@ (define-public tsl-sparse-map to be memory efficient and provides additional features, such as heterogeneous lookups and different growth policies.") (license license:expat))) + +(define-public tsl-ordered-map + (package + (name "tsl-ordered-map") + (version "1.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Tessil/ordered-map") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0bz5zgabalb7z0j9scng4zmi95hy7iasry5gz15x6y6dsdz0qf3j")))) + (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_ordered_map_tests tsl_ordered_map_tests)\n"))))))) + (native-inputs (list boost)) + (home-page "https://github.com/Tessil/ordered-map") + (synopsis "Hash map and hash set which preserve the order of insertion in C++") + (description "This package provides a C++ implementation of a hash map and +a hash set which preserve the order of insertion. It is intended for +efficient ordered insertions and lookup, while sacrifing performance for +ordered erase operations.") + (license license:expat)))