(address . guix-patches@gnu.org)
Hi all!
This is my first patch, I hope I'm doing it correctly.
The patch below adds the Contract Development Toolkit (compiler) for smart
contracts on the EOS blockchain. I also have a package for EOS itself that is
a bit more involved, so I'll submit separately.
Total package size is 607MB of which self is 329MB. It takes a while to
compile (about an hour on my i7 laptop).
Any feedback is appreciated. Thanks.
Jesse
---
gnu/packages/finance.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
Toggle diff (62 lines)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 4397cf8ba8..0e661c4b56 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -59,6 +59,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
@@ -96,6 +97,7 @@
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
+ #:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnuzilla))
@@ -547,6 +549,39 @@ generation from a seed. Your secret keys are encrypted and are never sent to
other machines/servers. Electroncash does not download the Bitcoin Cash blockchain.")
(license license:expat)))
+(define-public eosio-cdt
+ (package
+ (name "eosio-cdt")
+ (version "1.7.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference (url "https://github.com/EOSIO/eosio.cdt")
+ (commit (string-append "v" version))
+ (recursive? #t)))
+ (sha256
+ (base32
+ "1mrc8dn7sf086456c63rlha4j3fh0g1a59dbd6in6nyhan712xps"))
+ (file-name (git-file-name name version))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("git" ,git)
+ ("doxygen" ,doxygen)
+ ("pkg-config" ,pkg-config)
+ ("curl" ,curl)))
+ (inputs
+ `(("gmp" ,gmp)
+ ("openssl" ,openssl)
+ ("python" ,python-3)))
+ (arguments
+ `(#:build-type "Release"))
+ (home-page "https://developers.eos.io/manuals/eosio.cdt/latest/index")
+ (synopsis "EOSIO.CDT is a suite of tools used to build EOSIO contracts")
+ (description
+ "EOSIO.CDT is a toolchain for WebAssembly (WASM) and set of tools to
+facilitate smart contract development for the EOSIO platform.")
+ (license license:expat)))
+
(define-public monero
;; This package bundles easylogging++ and lmdb.
;; The bundled easylogging++ is modified, and the changes will not be
--
2.24.1