aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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)))