mirror of
git://git.savannah.gnu.org/guix.git
synced 2023-12-14 03:33:07 +01:00
gnu: Add node-llparse-bootstrap.
* gnu/packages/node.scm (node-llparse-bootstrap): New variable.
This commit is contained in:
parent
82e7f7c029
commit
91b78f371e
1 changed files with 56 additions and 0 deletions
|
@ -454,6 +454,62 @@ Node.js and web browsers.")
|
|||
(description "This package is a frontend for the llparse compiler.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public node-llparse-bootstrap
|
||||
(package
|
||||
(name "node-llparse")
|
||||
(version "7.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/indutny/llparse.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"10da273iy2if88hp79cwms6c8qpsl1fkgzll6gmqyx5yxv5mkyp6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Fix imports for esbuild.
|
||||
;; https://github.com/evanw/esbuild/issues/477
|
||||
(substitute* '("src/compiler/index.ts"
|
||||
"src/implementation/c/node/base.ts"
|
||||
"src/implementation/c/node/table-lookup.ts"
|
||||
"src/implementation/c/compilation.ts"
|
||||
"src/implementation/c/helpers/match-sequence.ts"
|
||||
"src/implementation/c/code/mul-add.ts")
|
||||
(("\\* as assert") "assert")
|
||||
(("\\* as debugAPI") "debugAPI"))
|
||||
#t))))
|
||||
(build-system node-build-system)
|
||||
(arguments
|
||||
`(#:node ,node-bootstrap
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((esbuild (string-append (assoc-ref inputs "esbuild")
|
||||
"/bin/esbuild")))
|
||||
(invoke esbuild
|
||||
"--platform=node"
|
||||
"--outfile=lib/api.js"
|
||||
"--bundle"
|
||||
"src/api.ts")))))))
|
||||
(inputs
|
||||
`(("node-debug" ,node-debug-bootstrap)
|
||||
("node-llparse-frontend" ,node-llparse-frontend-bootstrap)))
|
||||
(native-inputs
|
||||
`(("esbuild" ,esbuild)))
|
||||
(home-page "https://github.com/nodejs/llparse#readme")
|
||||
(properties '((hidden? . #t)))
|
||||
(synopsis "Compile incremental parsers to C code")
|
||||
(description "This package offers an API for compiling an incremental
|
||||
parser definition into a C output.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public libnode
|
||||
(package/inherit node
|
||||
(name "libnode")
|
||||
|
|
Loading…
Reference in a new issue