summaryrefslogtreecommitdiff
path: root/gnu/packages/javascript.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/javascript.scm')
-rw-r--r--gnu/packages/javascript.scm45
1 files changed, 42 insertions, 3 deletions
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm
index 38edc2ff0ab..21222f00279 100644
--- a/gnu/packages/javascript.scm
+++ b/gnu/packages/javascript.scm
@@ -825,6 +825,48 @@ C++ template mechanisms, or worry about marking and unmarking garbage collection
825roots, or wrestle with obscure build systems.") 825roots, or wrestle with obscure build systems.")
826 (license license:isc))) 826 (license license:isc)))
827 827
828(define-public quickjs
829 (package
830 (name "quickjs")
831 (version "2024-01-13")
832 (source (origin
833 (method url-fetch)
834 (uri (string-append "https://bellard.org/quickjs/quickjs-"
835 version ".tar.xz"))
836 (sha256
837 (base32
838 "00rf45l1bx0yhlv11gn3bbyfqw9724c153bc93mlp9dzjpwghjrw"))
839 (snippet
840 #~(begin (use-modules (guix build utils))
841 (for-each delete-file
842 '("doc/quickjs.pdf"
843 "doc/quickjs.html"
844 "doc/jsbignum.pdf"
845 "doc/jsbignum.html"))))))
846 (build-system gnu-build-system)
847 (arguments
848 (list #:make-flags
849 #~(list (string-append "PREFIX=" #$output)
850 #$@(if (or (target-riscv64?)
851 (target-ppc32?))
852 '("LDFLAGS=-latomic")
853 '()))
854 #:phases #~(modify-phases %standard-phases
855 (delete 'configure)
856 (replace 'check
857 (lambda* (#:key tests? #:allow-other-keys)
858 (when tests?
859 (invoke "make" "microbench")))))))
860 (home-page "https://bellard.org/quickjs/")
861 (synopsis "Small embeddable Javascript engine")
862 (description "QuickJS supports the ES2023 specification including modules,
863asynchronous generators, proxies, BigInt, BigDecimal, BigFloat and operator
864overloading. It can compile Javascript sources to executables with no external
865dependency. It includes a command line interpreter with contextual colorization
866implemented in Javascript and a small built-in standard library with C library
867wrappers.")
868 (license license:expat)))
869
828(define-public test262-source 870(define-public test262-source
829 (origin 871 (origin
830 (method git-fetch) 872 (method git-fetch)
@@ -912,9 +954,6 @@ wrappers.")
912 ;; 3-clause BSD license for test262 954 ;; 3-clause BSD license for test262
913 (license (list license:expat license:bsd-3)))) 955 (license (list license:expat license:bsd-3))))
914 956
915(define-public quickjs
916 (deprecated-package "quickjs" quickjs-ng))
917
918(define-public duktape 957(define-public duktape
919 (package 958 (package
920 (name "duktape") 959 (name "duktape")