[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: gnu: Add wabt.
From: |
guix-commits |
Subject: |
01/01: gnu: Add wabt. |
Date: |
Thu, 19 Sep 2019 14:40:23 -0400 (EDT) |
vagrantc pushed a commit to branch master
in repository guix.
commit 4d83157cd806aeb864664ebb380c19f6be04648c
Author: Vagrant Cascadian <address@hidden>
Date: Thu Sep 5 11:13:22 2019 -0700
gnu: Add wabt.
* gnu/packages/web (wabt): New variable.
* gnu/packages/diffoscope (diffoscope)[native-inputs]: Add wabt for tests.
[arguments]: Add phase patching wabt into known tools.
---
gnu/packages/diffoscope.scm | 8 ++++++++
gnu/packages/web.scm | 40 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 48 insertions(+)
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index 17a2d21..e2b2565 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -57,6 +57,7 @@
#:use-module (gnu packages textutils)
#:use-module (gnu packages video)
#:use-module (gnu packages vim)
+ #:use-module (gnu packages web)
#:use-module (guix build-system python)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -88,6 +89,12 @@
(lambda _
(substitute* "setup.py"
(("'python-magic',") ""))))
+ ;; Patch in support for known tools
+ (add-after 'unpack 'add-known-tools
+ (lambda _
+ (substitute* "diffoscope/external_tools.py"
+ (("'arch': 'wabt'},")
+ "'arch': 'wabt', 'guix': 'wabt'},"))))
;; This test is broken because our `file` package has a
;; bug in berkeley-db file type detection.
(add-after 'unpack 'remove-berkeley-test
@@ -188,6 +195,7 @@
("squashfs-tools" ,squashfs-tools)
("tcpdump" ,tcpdump)
("unzip" ,unzip)
+ ("wabt" ,wabt)
("xxd" ,xxd)
("xz" ,xz)
("zip" ,zip)))
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 39475bd..d25f049 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -123,6 +123,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages re2c)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
@@ -859,6 +860,45 @@ for efficient socket-like bidirectional reliable
communication channels.")
;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'.
(license license:lgpl2.1)))
+(define-public wabt
+ (package
+ (name "wabt")
+ (version "1.0.11")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/WebAssembly/wabt")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0hn88vlqyclpk79v3wg3lrssd9vwhjdgvb41g03jqakygxxgnmp5"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags '("-DBUILD_TESTS=OFF")
+ #:tests? #f))
+ (inputs `(("python" ,python-2)
+ ("re2c" ,re2c)))
+ (home-page "https://github.com/WebAssembly/wabt")
+ (synopsis "WebAssembly Binary Toolkit")
+ (description "WABT (pronounced: wabbit) is a suite of tools for
+WebAssembly, including:
+
+* wat2wasm: translate from WebAssembly text format to the WebAssembly binary
+ format
+* wasm2wat: the inverse of wat2wasm, translate from the binary format back
+ to the text format (also known as a .wat)
+* wasm-objdump: print information about a wasm binary. Similar to objdump.
+* wasm-interp: decode and run a WebAssembly binary file using a stack-based
+ interpreter
+* wat-desugar: parse .wat text form as supported by the spec interpreter
+ (s-expressions, flat syntax, or mixed) and print canonical flat format
+* wasm2c: convert a WebAssembly binary file to a C source and header
+
+These tools are intended for use in (or for development of) toolchains or
+other systems that want to manipulate WebAssembly files.")
+ (license license:asl2.0)))
+
(define-public websocketpp
(package
(name "websocketpp")