aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/node.scm32
1 files changed, 25 insertions, 7 deletions
diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index eb8c83d831..dbc9282441 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -39,20 +39,21 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages tls)
#:use-module (gnu packages web))
(define-public node
(package
(name "node")
- (version "10.19.0")
+ (version "12.16.2")
(source (origin
(method url-fetch)
(uri (string-append "https://nodejs.org/dist/v" version
"/node-v" version ".tar.xz"))
(sha256
(base32
- "0sginvcsf7lrlzsnpahj4bj1f673wfvby8kaxgvzlrbb7sy229v2"))
+ "0y5yd6h13fr34byi7h5xdjaivgcxiz0ykcmpk9nm5ra01b54fp2m"))
(modules '((guix build utils)))
(snippet
`(begin
@@ -65,16 +66,31 @@
"deps/openssl"
"deps/uv"
"deps/zlib"))
+ ;; Remove references to bundled software.
(substitute* "Makefile"
- ;; Remove references to bundled software.
(("deps/http_parser/http_parser.gyp") "")
(("deps/uv/include/\\*.h") "")
(("deps/uv/uv.gyp") "")
(("deps/zlib/zlib.gyp") ""))
+ (substitute* "deps/uvwasi/uvwasi.gyp"
+ (("'\\.\\.\\/uv\\/uv\\.gyp:libuv',") ""))
+ (substitute* "node.gypi"
+ ;; Using the shared-http-parser removes the dependency on
+ ;; llhhtp, so add another condition to specify that
+ ;; dependency
+ (("node_shared_http_parser")
+ "node_shared_http_parser==\"true\"', {
+ 'dependencies': [
+ 'deps/llhttp/llhttp.gyp:llhttp'
+ ],
+ } ],
+
+ [ 'node_shared_http_parser")
+ (("'deps\\/uv\\/uv\\.gyp:libuv'") ""))
#t))))
(build-system gnu-build-system)
(arguments
- `(#:configure-flags '("--shared-cares"
+ `(#:configure-flags `("--shared-cares"
"--shared-http-parser"
"--shared-libuv"
"--shared-nghttp2"
@@ -110,11 +126,14 @@
(for-each delete-file
'("test/parallel/test-cluster-master-error.js"
"test/parallel/test-cluster-master-kill.js"
+ "test/parallel/test-vm-module-dynamic-import.js"
+ "test/parallel/test-fs-write-sigxfsz.js"
;; See also <https://github.com/nodejs/node/issues/25903>.
- "test/sequential/test-performance.js"))
+ "test/sequential/test-perf-hooks.js"))
;; This requires a DNS resolver.
(delete-file "test/parallel/test-dns.js")
+ (delete-file "test/parallel/test-dns-promises-lookupService.js")
;; FIXME: This test fails randomly:
;; https://github.com/nodejs/node/issues/31213
@@ -143,8 +162,6 @@
"test/parallel/test-tls-server-verify.js"))
#t))
(replace 'configure
- ;; Node's configure script is actually a python script, so we can't
- ;; run it with bash.
(lambda* (#:key outputs (configure-flags '()) inputs
#:allow-other-keys)
(let* ((prefix (assoc-ref outputs "out"))
@@ -170,6 +187,7 @@
#t)))))))
(native-inputs
`(("python" ,python-2)
+ ("python-gyp" ,python-gyp)
("perl" ,perl)
("pkg-config" ,pkg-config)
("procps" ,procps)