From 49aeab92f056572a23d00106f959e5f0c273252c Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Thu, 29 Apr 2021 09:41:42 -0400 Subject: [PATCH] First release of Node.js 16.x Signed-off-by: Stephen Gallagher --- 0001-Disable-running-gyp-on-shared-deps.patch | 6 +- ...Install-both-binaries-and-use-libdir.patch | 17 +-- 0003-src-add-.note.GNU-stack-section.patch | 16 +-- nodejs.spec | 118 ++++-------------- package.cfg | 2 +- sources | 4 +- 6 files changed, 44 insertions(+), 119 deletions(-) diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch index 1b5cf73..f58de31 100644 --- a/0001-Disable-running-gyp-on-shared-deps.patch +++ b/0001-Disable-running-gyp-on-shared-deps.patch @@ -1,4 +1,4 @@ -From 0a889af5ee18290d833f7f63742d5b714bdb1a40 Mon Sep 17 00:00:00 2001 +From 3e85ce30203fd13ac663680f0103b2a66c864685 Mon Sep 17 00:00:00 2001 From: Zuzana Svetlikova Date: Fri, 17 Apr 2020 12:59:44 +0200 Subject: [PATCH 1/3] Disable running gyp on shared deps @@ -8,10 +8,10 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index 93d63110ae2e3928a95d24036b86d11885ab240f..79caaec2112cefa8f6a1c947375b517e9676f176 100644 +index 26746d94f4ab8c2580bc3304b293f37c273cd8f5..11dd97805dae7c6fb8485bffc42e104a9624ba13 100644 --- a/Makefile +++ b/Makefile -@@ -136,11 +136,11 @@ endif +@@ -137,11 +137,11 @@ endif .PHONY: test-code-cache with-code-cache test-code-cache: $(warning '$@' target is a noop) diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch index 9679f8b..3499c83 100644 --- a/0002-Install-both-binaries-and-use-libdir.patch +++ b/0002-Install-both-binaries-and-use-libdir.patch @@ -1,4 +1,4 @@ -From 4012d5b9ae521f36c8b0155f591a38383e84407b Mon Sep 17 00:00:00 2001 +From d5009b7659e101c76f782003e184ba72bce4686b Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Tue, 19 Mar 2019 23:22:40 -0400 Subject: [PATCH 2/3] Install both binaries and use libdir. @@ -7,33 +7,34 @@ This allows us to build with a shared library for other users while still providing the normal executable. Signed-off-by: Elliott Sales de Andrade +Signed-off-by: Stephen Gallagher --- configure.py | 7 +++++++ tools/install.py | 21 +++++++++------------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/configure.py b/configure.py -index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed80fde88a 100755 +index 6798b4a445c3878e63a47e078f3cb4e0dc5b5543..14867568d8552d70b92373fadac28d31682d708b 100755 --- a/configure.py +++ b/configure.py -@@ -624,10 +624,16 @@ parser.add_option('--shared', - action='store_true', +@@ -715,10 +715,16 @@ parser.add_argument('--shared', dest='shared', + default=None, help='compile shared library for embedding node in another project. ' + '(This mode is not officially supported for regular applications)') -+parser.add_option('--libdir', ++parser.add_argument('--libdir', + action='store', + dest='libdir', + default='lib', + help='a directory to install the shared library into') + - parser.add_option('--without-v8-platform', + parser.add_argument('--without-v8-platform', action='store_true', dest='without_v8_platform', default=False, help='do not initialize v8 platform during node.js startup. ' + -@@ -1200,10 +1206,11 @@ def configure_node(o): +@@ -1286,10 +1292,11 @@ def configure_node(o): o['variables']['debug_nghttp2'] = 'false' o['variables']['node_no_browser_globals'] = b(options.no_browser_globals) @@ -46,7 +47,7 @@ index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed shlib_suffix = 'so' elif sys.platform == 'darwin': diff --git a/tools/install.py b/tools/install.py -index 729b416fc47d3ff3317ae3671dee977c719a8841..9bfc6234edb7732f9b90f063c2ee4a276e840636 100755 +index 045d406d84be301722f3de62abc448db84e751f8..b3ef4541999126c512e3811881388e0ec8d401c4 100755 --- a/tools/install.py +++ b/tools/install.py @@ -119,26 +119,23 @@ def subdir_files(path, dest, action): diff --git a/0003-src-add-.note.GNU-stack-section.patch b/0003-src-add-.note.GNU-stack-section.patch index 74fd28f..74ac3e7 100644 --- a/0003-src-add-.note.GNU-stack-section.patch +++ b/0003-src-add-.note.GNU-stack-section.patch @@ -1,4 +1,4 @@ -From 6aa11a8cf48463432c0b5c6bfca5c2a5b18b1cc7 Mon Sep 17 00:00:00 2001 +From 7f1be47c1bcd021c5b28a468d443dd49bae705c4 Mon Sep 17 00:00:00 2001 From: James Addison Date: Tue, 9 Mar 2021 13:08:47 +0000 Subject: [PATCH 3/3] src: add .note.GNU-stack section @@ -24,22 +24,22 @@ Related: https://github.com/nodejs/node/pull/37688 Signed-off-by: Stephen Gallagher --- - src/large_pages/node_text_start.S | 3 +++ - 1 file changed, 3 insertions(+) + src/large_pages/node_text_start.S | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/large_pages/node_text_start.S b/src/large_pages/node_text_start.S -index 1609b254f0495a32f8896ba96d96bad03f6f2321..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644 +index 3227b62464932ced6d42916a4300ddbd9b4a4fbb..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644 --- a/src/large_pages/node_text_start.S +++ b/src/large_pages/node_text_start.S -@@ -1,5 +1,8 @@ -+#if defined(__ELF__) +@@ -1,7 +1,7 @@ + #if defined(__ELF__) +-.section .note.GNU-stack,"",@progbits +.section .note.GNU-stack,"",%progbits -+#endif + #endif .text .align 0x2000 .global __node_text_start .hidden __node_text_start - __node_text_start: -- 2.31.1 diff --git a/nodejs.spec b/nodejs.spec index 4993651..0f005a7 100644 --- a/nodejs.spec +++ b/nodejs.spec @@ -8,7 +8,7 @@ # This is used by both the nodejs package and the npm subpackage thar # has a separate version - the name is special so that rpmdev-bumpspec # will bump this rather than adding .1 to the end. -%global baserelease 2 +%global baserelease 1 %{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}} @@ -18,12 +18,12 @@ # feature releases that are only supported for nine months, which is shorter # than a Fedora release lifecycle. %global nodejs_epoch 1 -%global nodejs_major 14 -%global nodejs_minor 16 -%global nodejs_patch 1 +%global nodejs_major 16 +%global nodejs_minor 0 +%global nodejs_patch 0 %global nodejs_abi %{nodejs_major}.%{nodejs_minor} # nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h -%global nodejs_soversion 83 +%global nodejs_soversion 93 %global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch} %global nodejs_release %{baserelease} @@ -33,10 +33,10 @@ # v8 - from deps/v8/include/v8-version.h # Epoch is set to ensure clean upgrades from the old v8 package %global v8_epoch 2 -%global v8_major 8 -%global v8_minor 4 -%global v8_build 371 -%global v8_patch 19 +%global v8_major 9 +%global v8_minor 0 +%global v8_build 257 +%global v8_patch 17 # V8 presently breaks ABI at least every x.y release while never bumping SONAME %global v8_abi %{v8_major}.%{v8_minor} %global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch} @@ -45,30 +45,30 @@ # c-ares - from deps/cares/include/ares_version.h # https://github.com/nodejs/node/pull/9332 %global c_ares_major 1 -%global c_ares_minor 16 +%global c_ares_minor 17 %global c_ares_patch 1 %global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch} # llhttp - from deps/llhttp/include/llhttp.h -%global llhttp_major 2 -%global llhttp_minor 1 -%global llhttp_patch 3 +%global llhttp_major 6 +%global llhttp_minor 0 +%global llhttp_patch 0 %global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch} # libuv - from deps/uv/include/uv/version.h %global libuv_major 1 -%global libuv_minor 40 +%global libuv_minor 41 %global libuv_patch 0 %global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch} # nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h %global nghttp2_major 1 -%global nghttp2_minor 41 +%global nghttp2_minor 42 %global nghttp2_patch 0 %global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch} # ICU - from tools/icu/current_ver.dep -%global icu_major 67 +%global icu_major 69 %global icu_minor 1 %global icu_version %{icu_major}.%{icu_minor} @@ -90,9 +90,9 @@ # npm - from deps/npm/package.json %global npm_epoch 1 -%global npm_major 6 -%global npm_minor 14 -%global npm_patch 12 +%global npm_major 7 +%global npm_minor 10 +%global npm_patch 0 %global npm_version %{npm_major}.%{npm_minor}.%{npm_patch} # uvwasi - from deps/uvwasi/include/uvwasi.h @@ -533,7 +533,6 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \ -exec chmod -x {} \; # The above command is a little overzealous. Add a few permissions back. -chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js # Drop the NPM default configuration in place @@ -669,81 +668,6 @@ end %changelog -* Tue Apr 20 2021 Stephen Gallagher - 1:14.16.1-2 -- Disable stack execution (bz#1950528) - -* Thu Apr 08 2021 Stephen Gallagher - 1:14.16.1-1 -- Update to 14.16.1 - -* Wed Mar 31 2021 Jonathan Wakely - 1:14.16.0-4 -- Rebuilt for removed libstdc++ symbols (#1937698) - -* Tue Mar 09 2021 Zuzana Svetlikova - 1:14.16.0-1 -- Update to 14.16.0 - -* Mon Jan 04 2021 Stephen Gallagher - 1:14.15.4-1 -- Update to 14.15.4 - -* Wed Dec 02 2020 Stephen Gallagher - 1:14.15.1-1 -- Update to 14.15.1 - -* Tue Oct 20 2020 Stephen Gallagher - 1:14.14.0-2 -- Don't build with LTO on aarch64 - -* Mon Oct 19 2020 Stephen Gallagher - 1:14.14.0-1 -- Update to 14.14.0 - -* Fri Oct 09 2020 Stephen Gallagher - 1:14.13.1-1 -- Update to 14.13.1 - -* Thu Oct 01 2020 Stephen Gallagher - 1:14.13.0-1 -- Update to 14.13.0 - -* Wed Sep 16 2020 Stephen Gallagher - 1:14.11.0-1 -- Update to 14.11.0 - -* Tue Sep 08 2020 Stephen Gallagher - 1:14.10.0-1 -- Update to 14.10.0 - -* Fri Aug 21 2020 Jeff Law - 1:14.7.0-2 -- Narrow LTO opt-out to just armv7hl - -* Fri Jul 31 2020 Stephen Gallagher - 1:14.7.0-1 -- Update to 14.7.0 - -* Tue Jul 28 2020 Fedora Release Engineering - 1:14.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 07 2020 Stephen Gallagher - 1:14.5.0-1 -- Update to 14.5.0 - -* Tue Jul 07 2020 Stephen Gallagher - 1:14.4.0-3 -- Update for new packaging guidelines - -* Tue Jun 30 2020 Jeff Law - 1:14.4.0-2 -- Disable LTO - -* Wed Jun 03 2020 Zuzana Svetlikova - 1:14.4.0-1 -- Security update to 14.4.0 - -* Thu May 21 2020 Stephen Gallagher - 1:14.3.0-1 -- Update to 14.3.0 - -* Wed May 06 2020 Stephen Gallagher - 1:14.2.0-1 -- Update to 14.2.0 - -* Wed Apr 29 2020 Stephen Gallagher - 1:14.1.0-1 -- Update to 14.1.0 - -* Fri Apr 24 2020 Zuzana Svetlikova - 1:14.0.0-2 -- Keep the fix scripts for Koji - -* Thu Apr 23 2020 Zuzana Svetlikova - 1:14.0.0-1 -- Update to 14.0.0 -- v14.x should be python3 compatible, so commented out py sed scripts +* Thu Apr 29 2021 Stephen Gallagher - 16.0.0-1 +- First release of Node.js 16.x diff --git a/package.cfg b/package.cfg index 5e7e859..ec98f0b 100644 --- a/package.cfg +++ b/package.cfg @@ -1,2 +1,2 @@ [koji] -targets = rawhide f34 f33 +targets = rawhide diff --git a/sources b/sources index 96692c4..d09a6a1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (node-v14.16.1-stripped.tar.gz) = 1ec3f503ecd6f8ffa24c3abc04e4e33758e1d577f645dc9c3a22282e3f4755e44169ca54a178fb90e8edb8ef6490d65edc4fd7fcf6ec9b5445d38630b9861a29 -SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8 +SHA512 (node-v16.0.0-stripped.tar.gz) = 45afd2b674a061f9a11ae270015910b16b79d6702a53d8947d7c4c384e024ac381ed386c4ffef3f19a7ff1b760e45f2caf4d4df41ca05b409ad2a5bae46da49b +SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7