From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id UDgYLT4GpF+8VwAA0tVLHw (envelope-from ) for ; Thu, 05 Nov 2020 14:03:42 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id 0FzhKD4GpF8afgAAB5/wlQ (envelope-from ) for ; Thu, 05 Nov 2020 14:03:42 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id DDCF29404C8 for ; Thu, 5 Nov 2020 14:03:41 +0000 (UTC) Received: from localhost ([::1]:55706 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kafrY-0002mp-Iv for larch@yhetil.org; Thu, 05 Nov 2020 09:03:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34794) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kafp1-0008Sm-JD for guix-patches@gnu.org; Thu, 05 Nov 2020 09:01:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:40523) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kafp1-0002H7-4m for guix-patches@gnu.org; Thu, 05 Nov 2020 09:01:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kafp1-0003hm-2x for guix-patches@gnu.org; Thu, 05 Nov 2020 09:01:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#44433] [PATCH 3/3] gnu: Add solidity. Resent-From: Martin Becze Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 05 Nov 2020 14:01:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 44433@debbugs.gnu.org Cc: Martin Becze Received: via spool by 44433-submit@debbugs.gnu.org id=B44433.160458486014211 (code B ref 44433); Thu, 05 Nov 2020 14:01:03 +0000 Received: (at 44433) by debbugs.gnu.org; 5 Nov 2020 14:01:00 +0000 Received: from localhost ([127.0.0.1]:52064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kafou-0003gs-Pt for submit@debbugs.gnu.org; Thu, 05 Nov 2020 09:01:00 -0500 Received: from mx1.riseup.net ([198.252.153.129]:60992) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kafom-0003gN-T0 for 44433@debbugs.gnu.org; Thu, 05 Nov 2020 09:00:52 -0500 Received: from bell.riseup.net (bell-pn.riseup.net [10.0.1.178]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client CN "*.riseup.net", Issuer "Sectigo RSA Domain Validation Secure Server CA" (not verified)) by mx1.riseup.net (Postfix) with ESMTPS id 4CRlXs3cVHzFmc4 for <44433@debbugs.gnu.org>; Thu, 5 Nov 2020 06:00:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1604584845; bh=KGwUZ9IlxUTyVhIVFfU0FmZs/kE5soMhaClGgsOX4u8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nOrMvlaWbbQFuTnPCPqINqb26nOHBrq1kZYr/eNB379C8ShHYRUJ8namtvXKobqiY At55C1iFeAdfUASbjbXKh6On2k7gqxVP4CC8G01K9akPa7dD/Sxog0iJnDRYQWCi+b /Yk6zX4pT3ws8VUEvC0q4r019LOV0W3HKpwyNBkU= X-Riseup-User-ID: 9A447685382C8EA64B9172D89699BBEE65BF14DD84E093C834F347016412676E Received: from [127.0.0.1] (localhost [127.0.0.1]) by bell.riseup.net (Postfix) with ESMTPSA id 4CRlXN31FyzJr9h; Thu, 5 Nov 2020 06:00:20 -0800 (PST) From: Martin Becze Date: Thu, 5 Nov 2020 07:59:45 -0600 Message-Id: <20201105135945.26384-3-mjbecze@riseup.net> In-Reply-To: <20201105135945.26384-1-mjbecze@riseup.net> References: <20201104122928.30408-1-mjbecze@riseup.net> <20201105135945.26384-1-mjbecze@riseup.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.7 (-) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=fail (headers rsa verify failed) header.d=riseup.net header.s=squak header.b=nOrMvlaW; dmarc=fail reason="SPF not aligned (relaxed)" header.from=riseup.net (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 1.09 X-TUID: 7074F69SI4b0 * gnu/packages/solidity.scm: (solidity) New variable. * gnu/local.mk (GNU_SYSTEM_MODULES): Add solidity.scm. --- gnu/local.mk | 1 + gnu/packages/solidity.scm | 88 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 gnu/packages/solidity.scm diff --git a/gnu/local.mk b/gnu/local.mk index 08a82c45f1..92be573355 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -508,6 +508,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/slang.scm \ %D%/packages/smalltalk.scm \ %D%/packages/sml.scm \ + %D%/packages/solidity.scm \ %D%/packages/speech.scm \ %D%/packages/sphinx.scm \ %D%/packages/spice.scm \ diff --git a/gnu/packages/solidity.scm b/gnu/packages/solidity.scm new file mode 100644 index 0000000000..f67bae8146 --- /dev/null +++ b/gnu/packages/solidity.scm @@ -0,0 +1,88 @@ +;;; Copyright © 2020 Martin Becze +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix 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 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix 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 GNU Guix. If not, see . + +(define-module (gnu packages solidity) + #:use-module (gnu packages base) + #:use-module (gnu packages boost) + #:use-module (gnu packages maths) + #:use-module (gnu packages serialization) + #:use-module (gnu packages python) + #:use-module (gnu packages ncurses) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module ((guix licenses) #:prefix license:)) + +(define-public solidity + (let ((commit "3f05b770bdbf60eca866382049ea191dd701409a")) + (package + (name "solidity") + (version "0.7.4") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/ethereum/solidity") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1mswhjymiwnd3n7h3sjvjx5x8223yih0yvfcr0zpqr4aizpfx5z8")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'install) + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + (with-output-to-file "commit_hash.txt" + (lambda _ + (display + (substring ,commit 0 8)))) + ;; Unbundle jsoncpp + (delete-file "./cmake/jsoncpp.cmake") + (substitute* "CMakeLists.txt" + (("include\\(jsoncpp\\)") "")) + ;; Bug list is always sorted since we only build releases + (substitute* "./test/cmdlineTests.sh" + (("\"\\$REPO_ROOT\"/scripts/update_bugs_by_version\\.py") "")) + (substitute* "./scripts/build.sh" + (("sudo\\ make\\ install") "make install") + (("cmake\\ ..") + (string-append "cmake .. -DCMAKE_INSTALL_PREFIX=" + (assoc-ref outputs "out")))) + (setenv "CIRCLECI" "1") + (invoke "./scripts/build.sh") + #t)) + (replace 'check + (lambda _ + (invoke "./scripts/tests.sh") + #t))))) + (native-inputs + `(("boost-static" ,boost-static) + ("jsoncpp" ,jsoncpp) + ("python" ,python) + ("tput" ,ncurses) + ("xargs" ,findutils) + ("z3" ,z3))) + (home-page "https://solidity.readthedocs.io") + (synopsis "Contract-Oriented Programming Language") + (description + "Solidity is a statically-typed curly-braces programming language +designed for developing smart contracts that run on the Ethereum Virtual Machine.") + (license license:gpl3+)))) -- 2.29.1