summary refs log tree commit diff
diff options
context:
space:
mode:
authorRyan Prior <rprior@protonmail.com>2020-09-14 01:13:31 +0000
committerMathieu Othacehe <othacehe@gnu.org>2020-09-14 16:12:36 +0200
commit4a2cb3fa0e6384d7ad9f4cc7ca1fb46f63ebdb41 (patch)
tree2ae6d0485a1404b733e02394f896af47e87298d0
parent846403ef62066b23c87b6f8a99fd8a551001fc52 (diff)
downloadguix-4a2cb3fa0e6384d7ad9f4cc7ca1fb46f63ebdb41.tar.gz
gnu: Add quickjs.
* gnu/packages/javascript.scm (quickjs): New variable.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
-rw-r--r--gnu/packages/javascript.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm
index fbc7388f3d..0e61cf10ff 100644
--- a/gnu/packages/javascript.scm
+++ b/gnu/packages/javascript.scm
@@ -447,3 +447,34 @@ to use, and is very similar to Lua.  There is no need to interact with byzantine
 C++ template mechanisms, or worry about marking and unmarking garbage collection
 roots, or wrestle with obscure build systems.")
     (license license:isc)))
+
+(define-public quickjs
+  (package
+    (name "quickjs")
+    (version "2020-09-06")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://bellard.org/quickjs/quickjs-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "05vpnnzmws7plnwsnk2brwf7whyj84l5xl0iahi1xdn6rpla6880"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags
+       (list "prefix="
+             (string-append "DESTDIR=" %output))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'check
+           (lambda _
+             (invoke "make" "microbench"))))))
+    (home-page "https://bellard.org/quickjs/")
+    (synopsis "Small embeddable Javascript engine")
+    (description "QuickJS supports the ES2020 specification including modules,
+asynchronous generators, proxies, BigInt and BigDecimal.  It can compile
+Javascript sources to executables with no external dependency.  It includes a
+command line interpreter with contextual colorization implemented in
+Javascript and a small built-in standard library with C library wrappers.")
+    (license license:expat)))