From patchwork Thu Dec 9 10:52:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 35074 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 6F88127BBEA; Thu, 9 Dec 2021 10:55:00 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,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 25CC727BBE9 for ; Thu, 9 Dec 2021 10:55:00 +0000 (GMT) Received: from localhost ([::1]:51708 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mvH4l-0001r6-6K for patchwork@mira.cbaines.net; Thu, 09 Dec 2021 05:54:59 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59932) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mvH2s-00082i-H9 for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59229) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mvH2s-0007I9-9C for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mvH2s-0002fc-8S for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51885] [PATCH v2 1/4] gnu: Add asmjit. References: In-Reply-To: Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 09 Dec 2021 10:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51885 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 51885@debbugs.gnu.org Cc: Raghav Gururajan , Julien Lepiller , Disseminate Dissent , jgart Received: via spool by 51885-submit@debbugs.gnu.org id=B51885.163904715910218 (code B ref 51885); Thu, 09 Dec 2021 10:53:02 +0000 Received: (at 51885) by debbugs.gnu.org; 9 Dec 2021 10:52:39 +0000 Received: from localhost ([127.0.0.1]:42538 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH2Q-0002ee-81 for submit@debbugs.gnu.org; Thu, 09 Dec 2021 05:52:39 -0500 Received: from out2.migadu.com ([188.165.223.204]:16040) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH2N-0002eU-0g for 51885@debbugs.gnu.org; Thu, 09 Dec 2021 05:52:32 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1639047149; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ynb+qdia3igzNy7+TqCMWC+lX6waAerPmB4FGiOFL6I=; b=JyyUpryUWHXVj4O+9kRjX/vqCC7Vb2vxs+RRCgoYwrfHd1kVCzhBljXm7kpcmf+fUrkOJb QK1xZFG0lPXs0gLch/tN+t3fSZRTpe2U/K94YWk3A4i04OVr6DqyRNwMkOpMvhZFsu7STg i/VZ23kW3+u9IZkNIJOrIKA3e0j1p+6/kY6x+ckXqdgecfhXe5n7r1Z6+RPD31luZ7Or9V sFMXzLPuy18PkvvKvVPbyIPKMhYK9Iur8teiyhGKnIRuOfxh+ksGPkOhAUTTCSnsl36N+l k26yJetevJRqZu8QtryEGA1BGRyOro+hSyXm0QS7X4kgpI3LHEVMM1O3LDm5kQ== Date: Thu, 9 Dec 2021 05:52:09 -0500 Message-Id: <20211209105212.29412-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name 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" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/cpp.scm (asmjit): New variable. Co-authored-by: jgart Co-authored-by: Julien Lepiller Co-authored-by: Disseminate Dissent --- gnu/packages/cpp.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 9ab6e0b835..bbcdcd6be9 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -18,6 +18,9 @@ ;;; Copyright © 2020 Brett Gilio ;;; Copyright © 2020 Milkey Mouse ;;; Copyright © 2021 Raghav Gururajan +;;; Copyright © 2021 jgart +;;; Copyright © 2021 Julien Lepiller +;;; Copyright © 2021 Disseminate Dissent ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,6 +77,38 @@ (define-module (gnu packages cpp) #:use-module (gnu packages web) #:use-module (gnu packages xml)) +(define-public asmjit + (let ((commit "4ec760a3d1f69e32ba460ecd2513f29b8428700b") + (revision "0")) + (package + (name "asmjit") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/asmjit/asmjit") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0skgccbpamcbg1byawfq5n6jzxgj64hnc7jznvk35nkskaaz1nlb")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + "-DASMJIT_TEST=TRUE"))) + (home-page "https://asmjit.com/") + (synopsis "Machine code generation for C++") + (description "AsmJit is a lightweight library for machine code generation +written in C++ language. It can generate machine code for X86 and X86_64 +architectures with the support for the whole instruction set from legacy MMX to +the newest AVX-512 and AMX. It has a type-safe API that allows C++ compiler to +do semantic checks at compile-time even before the assembled code is generated +or executed. It also provides an optional register allocator that makes it easy +to generate complex code without a significant development effort.") + (license license:zlib)))) + (define-public range-v3 (package (name "range-v3") From patchwork Thu Dec 9 10:52:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 35072 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 1260327BBEA; Thu, 9 Dec 2021 10:53:13 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,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 C8C7E27BBE9 for ; Thu, 9 Dec 2021 10:53:12 +0000 (GMT) Received: from localhost ([::1]:48484 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mvH32-00086Y-07 for patchwork@mira.cbaines.net; Thu, 09 Dec 2021 05:53:12 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59940) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mvH2s-00083N-UH for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59230) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mvH2s-0007IG-Mf for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mvH2s-0002fj-Lp for guix-patches@gnu.org; Thu, 09 Dec 2021 05:53:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51885] [PATCH v2 2/4] gnu: Add argagg. Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 09 Dec 2021 10:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51885 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 51885@debbugs.gnu.org Cc: Raghav Gururajan , Julien Lepiller , Disseminate Dissent , jgart Received: via spool by 51885-submit@debbugs.gnu.org id=B51885.163904717010241 (code B ref 51885); Thu, 09 Dec 2021 10:53:02 +0000 Received: (at 51885) by debbugs.gnu.org; 9 Dec 2021 10:52:50 +0000 Received: from localhost ([127.0.0.1]:42542 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH2f-0002f7-Ph for submit@debbugs.gnu.org; Thu, 09 Dec 2021 05:52:50 -0500 Received: from out2.migadu.com ([188.165.223.204]:16176) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH2e-0002ey-3L for 51885@debbugs.gnu.org; Thu, 09 Dec 2021 05:52:48 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1639047167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LspStm8WmrAf986IP/xpNllnaKtrsVF35byVgNSFNgk=; b=fmMalJH0NIFonZHECFwJNf8OljVt22QRxbFYDPNYq4XJAaw700smpxSc1+VrYTIIPbq972 BXlnXlVEqDR6oNr9RxVe58Bd9zfc2QUsf4utluisIrn1vm6RUyQ6i9J/9DG8zlfoZZeuXv iXlQhOBVe18TnPXJCGA2/2OhuYsfBo54Y426YZARGEcEwxNO8fG0XFdxVyRy3tGNLVDU9W tu12rXQz8e9gsN+N9MK25gd8n3jnXpIhmnlFA8FvXQd09MAQi1EfBUAoAi6Ez0icESWsZp 0rS4iYOhp9g5/jku+oLDk08/hne4Z1S+8jS/mFXkglSFabh09ER2z2OQkuaXMw== Date: Thu, 9 Dec 2021 05:52:10 -0500 Message-Id: <20211209105212.29412-2-rg@raghavgururajan.name> In-Reply-To: <20211209105212.29412-1-rg@raghavgururajan.name> References: <20211209105212.29412-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name 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" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/cpp.scm (argagg): New variable. Co-authored-by: jgart Co-authored-by: Julien Lepiller Co-authored-by: Disseminate Dissent --- gnu/packages/cpp.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index bbcdcd6be9..a579c47ad9 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -77,6 +77,46 @@ (define-module (gnu packages cpp) #:use-module (gnu packages web) #:use-module (gnu packages xml)) +(define-public argagg + (let ((commit "79e4adfa2c6e2bfbe63da05cc668eb9ad5596748") + (revision "0")) + (package + (name "argagg") + (version (git-version "0.4.6" revision commit)) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/vietjtnguyen/argagg") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1flkgh524lq3024p7ld5lg743s1v7qnbmgv77578rzmn2rjzr77n")))) + (build-system cmake-build-system) + (outputs '("out" "doc")) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'move-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((name ,(package-name argagg)) + (out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share/doc")) + (rename-file + (string-append out "/share/doc/" name) + (string-append doc "/share/doc/" name)))))))) + (native-inputs + `(("doxygen" ,doxygen))) + (home-page "https://github.com/vietjtnguyen/argagg") + (synopsis "Simple C++11 command line argument parser") + (description "ArgAgg is yet another C++ command line argument/option parser. +It was written as a simple and idiomatic alternative to other frameworks like +getopt, Boost program options, TCLAP, and others. The goal is to achieve the +majority of argument parsing needs in a simple manner with an easy to use API.") + (license license:expat)))) + (define-public asmjit (let ((commit "4ec760a3d1f69e32ba460ecd2513f29b8428700b") (revision "0")) From patchwork Thu Dec 9 10:52:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 35075 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 8935627BBEA; Thu, 9 Dec 2021 10:55:17 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,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 43EF627BBE9 for ; Thu, 9 Dec 2021 10:55:17 +0000 (GMT) Received: from localhost ([::1]:52156 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mvH52-00029N-E3 for patchwork@mira.cbaines.net; Thu, 09 Dec 2021 05:55:16 -0500 Received: from eggs.gnu.org ([209.51.188.92]:32988) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mvH3q-0000U6-DG for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59239) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mvH3q-0007PR-5B for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mvH3q-0002hd-4S for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51885] [PATCH v2 3/4] gnu: Add json. Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 09 Dec 2021 10:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51885 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 51885@debbugs.gnu.org Cc: Raghav Gururajan , jgart Received: via spool by 51885-submit@debbugs.gnu.org id=B51885.163904719010309 (code B ref 51885); Thu, 09 Dec 2021 10:54:02 +0000 Received: (at 51885) by debbugs.gnu.org; 9 Dec 2021 10:53:10 +0000 Received: from localhost ([127.0.0.1]:42548 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH30-0002gD-3X for submit@debbugs.gnu.org; Thu, 09 Dec 2021 05:53:10 -0500 Received: from out2.migadu.com ([188.165.223.204]:16342) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH2y-0002g5-3W for 51885@debbugs.gnu.org; Thu, 09 Dec 2021 05:53:08 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1639047187; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fammCkomjTQMfaI4GSPrqtkLGtixc+4svxr8sx+QCmM=; b=cifeD1NyN0Yli+xAJz/BQ//2InTNhyFAOZxT6q+AnynBV9k3YNWYCOb4ILgmgTO4s+0LUq 6aQSzlCLStv6oGW4p8HDlxfBltkYYjNfrtDQeF0vE1/GukynRBe57EmioPML11hVlRhr1e wjNOlBDG/7vPHTYDCK30tq+CtmBIVdlO/2H8mLL7XJwqLJCJSWGM2jB4nRBXngPZ5+AkfH CfTEASTL5AEFJBnK8Zkz4A3ng660j4c5HlF2NnTqD5tueMh5VzMJ2PYSKNJsFZyxOlruKK ZNV+dYK6MxKZ29ripf7CQVY1I7PVqQQpUNBi9JV/V1J4Y9rzWV0MmHkMAXCL1g== Date: Thu, 9 Dec 2021 05:52:11 -0500 Message-Id: <20211209105212.29412-3-rg@raghavgururajan.name> In-Reply-To: <20211209105212.29412-1-rg@raghavgururajan.name> References: <20211209105212.29412-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name 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" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/cpp.scm (json): New variable. Co-authored-by: jgart --- gnu/packages/cpp.scm | 63 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index a579c47ad9..28705d5bb6 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -77,6 +77,69 @@ (define-module (gnu packages cpp) #:use-module (gnu packages web) #:use-module (gnu packages xml)) +(define-public json + (package + (name "json") + (version "3.10.4") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/nlohmann/json") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "17kxwxl6515s8nb5x7zy69c8qy4gswac66fp15261x1g6sa2jnkx")) + (modules '((guix build utils) + (ice-9 ftw) + (srfi srfi-1))) + (snippet + `(begin + (delete-file-recursively "third_party") + (let ((keep + ;; Custom forks which are incompatible with the ones in Guix. + '("doctest" "fifo_map"))) + (with-directory-excursion "test/thirdparty" + (for-each delete-file-recursively + (lset-difference string=? + (scandir ".") + (cons* "." ".." keep))))) + #t)))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list + (string-append "-DJSON_TestDataDirectory=" + (assoc-ref %build-inputs "json_test_data"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-failing-tests + (lambda _ + (substitute* "test/CMakeLists.txt" + ;; Requires network connection. + (("add_subdirectory\\(cmake_fetch_content\\)") ""))))))) + (native-inputs + `(("json_test_data" + ,(origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/nlohmann/json_test_data") + (commit "v3.0.0"))) + (file-name + (git-file-name "json_test_data" "3.0.0")) + (sha256 + (base32 "0nzsjzlvk14dazwh7k2jb1dinb0pv9jbx5jsyn264wvva0y7daiv")))) + ("python" ,python-wrapper))) + (home-page "https://json.nlohmann.me/") + (synopsis "JSON for C++") + (description "@code{json} is a C++ json library for converting to and from +C++ data structures. It's design goals emphasize intuitive syntax, trivial +integration via a single header file, and serious test coverage involving all of +the codebase.") + (license license:expat))) + (define-public argagg (let ((commit "79e4adfa2c6e2bfbe63da05cc668eb9ad5596748") (revision "0")) From patchwork Thu Dec 9 10:52:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 35073 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 3FF8C27BBEA; Thu, 9 Dec 2021 10:54:28 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,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 B1B5D27BBE9 for ; Thu, 9 Dec 2021 10:54:27 +0000 (GMT) Received: from localhost ([::1]:49706 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mvH4E-0000VS-QI for patchwork@mira.cbaines.net; Thu, 09 Dec 2021 05:54:26 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33004) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mvH3q-0000UW-Rd for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59240) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mvH3q-0007PZ-K2 for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mvH3q-0002hk-Ih for guix-patches@gnu.org; Thu, 09 Dec 2021 05:54:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51885] [PATCH v2 4/4] gnu: Add blacksmith. Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 09 Dec 2021 10:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51885 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 51885@debbugs.gnu.org Cc: Raghav Gururajan Received: via spool by 51885-submit@debbugs.gnu.org id=B51885.163904721210351 (code B ref 51885); Thu, 09 Dec 2021 10:54:02 +0000 Received: (at 51885) by debbugs.gnu.org; 9 Dec 2021 10:53:32 +0000 Received: from localhost ([127.0.0.1]:42552 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH3M-0002gs-FV for submit@debbugs.gnu.org; Thu, 09 Dec 2021 05:53:32 -0500 Received: from out2.migadu.com ([188.165.223.204]:16540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mvH3J-0002gh-NM for 51885@debbugs.gnu.org; Thu, 09 Dec 2021 05:53:31 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1639047208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=pJrLULbpZXiM/tb51f+1NX83H0R5vC18dJ/8SfbC/uA=; b=qADaA9c6XffUzWNaz4FXJJVfwWXtOiM5Ir3HVt0UNYGQkqzHGHnzRBjS1T5gI0CIziHWq/ XTRbsyC2goE2kmyfhc29VBz/YJEzqI+/DapTpIzfqctJL6Mbwz+HvaW3we/rJKPiQoupAC OfIXKsnWS3hHJ3/gkvdfWEuX9Kca6awCYbu5Tuaqdv2Qqm1Q62ftsnSZSM0n0umDD+ylQo jsFtSSSvbUIyYYhSFhHM4Awo3rm0ezzo84nfTF6Ypzp31hIUs2gpipuDnc2nwSHKoB5M4V 4JfWaJwGZuFLqscfaHaL8RoKD7o1Hcp09VM21+ZKe4S86ZCDDWCnXPTLKKVAtg== Date: Thu, 9 Dec 2021 05:52:12 -0500 Message-Id: <20211209105212.29412-4-rg@raghavgururajan.name> In-Reply-To: <20211209105212.29412-1-rg@raghavgururajan.name> References: <20211209105212.29412-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name 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" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/cybersecurity.scm (blacksmith): New variable. --- gnu/packages/cybersecurity.scm | 78 ++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/gnu/packages/cybersecurity.scm b/gnu/packages/cybersecurity.scm index e4614e908e..8c9bb986be 100644 --- a/gnu/packages/cybersecurity.scm +++ b/gnu/packages/cybersecurity.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice ;;; Copyright © 2021 c4droid +;;; Copyright © 2021 Raghav Gururajan ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,10 +21,14 @@ (define-module (gnu packages cybersecurity) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system cmake) #:use-module (guix build-system python) + #:use-module (gnu packages cpp) #:use-module (gnu packages engineering) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages python-crypto) @@ -32,6 +37,79 @@ (define-module (gnu packages cybersecurity) #:use-module (gnu packages bioinformatics) ;python-intervaltree #:use-module (gnu packages emulators)) +(define-public blacksmith + (let ((commit "c8e65b709a83665f9528efdedcf064abdb04859f") + (revision "0")) + (package + (name "blacksmith") + (version + (git-version "0.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/comsec-group/blacksmith") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0kyp71wndf527dgza5iks5m5vj543mvxp5w7cjd8x0pilmd1xrls")) + (modules '((guix build utils))) + (snippet + `(begin + (delete-file-recursively "external") + (substitute* "CMakeLists.txt" + (("add_subdirectory\\(external\\)") "") + (("[ \t]*FetchContent_MakeAvailable\\(asmjit\\)") + (string-append "find_package(asmjit)\n" + "find_package(nlohmann_json)"))) + #t)))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no test-suite + #:imported-modules + ((guix build copy-build-system) + ,@%cmake-build-system-modules) + #:modules + (((guix build copy-build-system) + #:prefix copy:) + (guix build cmake-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-build + (lambda _ + (substitute* "CMakeLists.txt" + ;; Use default C++ standard instead. + (("cxx_std_17") "") + ;; This project tries to link argagg library, + ;; which doesn't exist, as argagg project + ;; is a single header file. + (("argagg") "")))) + (replace 'install + (lambda args + (apply (assoc-ref copy:%standard-phases 'install) + #:install-plan + '(("." "bin" + #:include ("blacksmith")) + ("." "lib" + #:include-regexp ("\\.a$"))) + args)))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("argagg" ,argagg) + ("asmjit" ,asmjit) + ("json" ,json))) + (home-page "https://comsec.ethz.ch/research/dram/blacksmith") + (synopsis "Rowhammer fuzzer with non-uniform and frequency-based patterns") + (description "Blacksmith is an implementation of Rowhammer fuzzer that +crafts novel non-uniform Rowhammer access patterns based on the concepts of +frequency, phase, and amplitude. It is able to bypass recent +@acronym{TRR, Target Row Refresh}in-DRAM mitigations effectively and as such can +trigger bit flips.") + (license license:expat)))) + (define-public ropgadget (package (name "ropgadget")