diff options
Diffstat (limited to 'gnu/packages/javascript.scm')
-rw-r--r-- | gnu/packages/javascript.scm | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 6d4efe2c92..d5967e7252 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2021 Pierre Neidhardt <mail@ambrevar.xyz> +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -80,8 +81,7 @@ (use-modules (guix build utils)) (chdir (assoc-ref %build-inputs "source")) (let ((target (string-append %output "/share/javascript/context-menu"))) - (apply invoke (string-append (assoc-ref %build-inputs "esbuild") - "/bin/esbuild") + (apply invoke (search-input-file %build-inputs "/bin/esbuild") "--bundle" "--tsconfig=tsconfig.json" (string-append "--outdir=" target) @@ -209,8 +209,7 @@ be able to view it naturally and easily."))) (begin (use-modules (guix build utils)) (chdir (assoc-ref %build-inputs "source")) - (let ((esbuild (string-append (assoc-ref %build-inputs "esbuild") - "/bin/esbuild")) + (let ((esbuild (search-input-file %build-inputs "/bin/esbuild")) (target (string-append %output "/share/javascript/commander"))) (invoke esbuild "--bundle" @@ -251,8 +250,7 @@ command-line interfaces. ") (begin (use-modules (guix build utils)) (chdir (assoc-ref %build-inputs "source")) - (let ((esbuild (string-append (assoc-ref %build-inputs "esbuild") - "/bin/esbuild")) + (let ((esbuild (search-input-file %build-inputs "/bin/esbuild")) (target (string-append %output "/share/javascript/xmldom-sre"))) (invoke esbuild "--bundle" @@ -637,12 +635,31 @@ Javascript and a small built-in standard library with C library wrappers.") "19szwxzvl2g65fw95ggvb8h0ma5bd9vvnnccn59hwnc4dida1x4n")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ; No tests. + `(#:tests? #f ; No tests. #:make-flags (list "-f" "Makefile.sharedlibrary" (string-append "INSTALL_PREFIX=" %output)) #:phases (modify-phases %standard-phases - (delete 'configure)))) + (delete 'configure) + ;; At least another major GNU/Linux distribution carries their own + ;; .pc file with this package. + (add-after 'install 'install-pkg-config + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (pkg-config-dir (string-append out "/lib/pkgconfig"))) + (mkdir-p pkg-config-dir) + (with-output-to-file (string-append pkg-config-dir "/duktape.pc") + (lambda _ + (format #t "prefix=~@*~a~@ + libdir=${prefix}/lib~@ + includedir=${prefix}/include~@ + + Name: duktape~@ + Description: Embeddable Javascript engine~@ + Version: ~a~@ + Libs: -L${libdir} -lduktape~@ + Cflags: -I${includedir}~%" + out ,version))))))))) (home-page "https://duktape.org/") (synopsis "Small embeddable Javascript engine") (description "Duktape is an embeddable Javascript engine, with a focus on |