|
|
|
@ -28,6 +28,7 @@
|
|
|
|
|
%bcond_with bundled_zlib
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%bcond npm 1
|
|
|
|
|
|
|
|
|
|
# LTO is currently broken on Node.js builds
|
|
|
|
|
%define _lto_cflags %{nil}
|
|
|
|
@ -40,7 +41,7 @@
|
|
|
|
|
# This is used by both the nodejs package and the npm subpackage that
|
|
|
|
|
# has a separate version - the name is special so that rpmdev-bumpspec
|
|
|
|
|
# will bump this rather than adding .1 to the end.
|
|
|
|
|
%global baserelease 3
|
|
|
|
|
%global baserelease %autorelease
|
|
|
|
|
|
|
|
|
|
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
|
|
|
|
|
|
|
|
@ -50,12 +51,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 16
|
|
|
|
|
%global nodejs_minor 15
|
|
|
|
|
%global nodejs_major 18
|
|
|
|
|
%global nodejs_minor 10
|
|
|
|
|
%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 93
|
|
|
|
|
%global nodejs_soversion 108
|
|
|
|
|
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
|
|
|
|
|
%global nodejs_release %{baserelease}
|
|
|
|
|
|
|
|
|
@ -65,10 +66,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 9
|
|
|
|
|
%global v8_minor 4
|
|
|
|
|
%global v8_build 146
|
|
|
|
|
%global v8_patch 24
|
|
|
|
|
%global v8_major 10
|
|
|
|
|
%global v8_minor 2
|
|
|
|
|
%global v8_build 154
|
|
|
|
|
%global v8_patch 15
|
|
|
|
|
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
|
|
|
|
|
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
|
|
|
|
|
|
|
|
|
@ -80,7 +81,7 @@
|
|
|
|
|
%global c_ares_version 1.18.1
|
|
|
|
|
|
|
|
|
|
# llhttp - from deps/llhttp/include/llhttp.h
|
|
|
|
|
%global llhttp_version 6.0.4
|
|
|
|
|
%global llhttp_version 6.0.10
|
|
|
|
|
|
|
|
|
|
# libuv - from deps/uv/include/uv/version.h
|
|
|
|
|
%global libuv_version 1.43.0
|
|
|
|
@ -89,7 +90,7 @@
|
|
|
|
|
%global nghttp2_version 1.47.0
|
|
|
|
|
|
|
|
|
|
# ICU - from tools/icu/current_ver.dep
|
|
|
|
|
%global icu_major 70
|
|
|
|
|
%global icu_major 71
|
|
|
|
|
%global icu_minor 1
|
|
|
|
|
%global icu_version %{icu_major}.%{icu_minor}
|
|
|
|
|
|
|
|
|
@ -99,7 +100,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# OpenSSL minimum version
|
|
|
|
|
%global openssl_minimum 1:1.1.1
|
|
|
|
|
%global openssl11_minimum 1:1.1.1
|
|
|
|
|
%global openssl30_minimum 1:3.0.2
|
|
|
|
|
|
|
|
|
|
# punycode - from lib/punycode.js
|
|
|
|
|
# Note: this was merged into the mainline since 0.6.x
|
|
|
|
@ -108,7 +110,7 @@
|
|
|
|
|
|
|
|
|
|
# npm - from deps/npm/package.json
|
|
|
|
|
%global npm_epoch 1
|
|
|
|
|
%global npm_version 8.5.5
|
|
|
|
|
%global npm_version 8.19.2
|
|
|
|
|
|
|
|
|
|
# In order to avoid needing to keep incrementing the release version for the
|
|
|
|
|
# main package forever, we will just construct one for npm that is guaranteed
|
|
|
|
@ -117,7 +119,7 @@
|
|
|
|
|
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
|
|
|
|
|
|
|
|
|
|
# uvwasi - from deps/uvwasi/include/uvwasi.h
|
|
|
|
|
%global uvwasi_version 0.0.12
|
|
|
|
|
%global uvwasi_version 0.0.13
|
|
|
|
|
|
|
|
|
|
# histogram_c - assumed from timestamps
|
|
|
|
|
%global histogram_version 0.9.7
|
|
|
|
@ -125,7 +127,7 @@
|
|
|
|
|
Name: nodejs
|
|
|
|
|
Epoch: %{nodejs_epoch}
|
|
|
|
|
Version: %{nodejs_version}
|
|
|
|
|
Release: %{nodejs_release}%{?dist}
|
|
|
|
|
Release: %{nodejs_release}
|
|
|
|
|
Summary: JavaScript runtime
|
|
|
|
|
License: MIT and ASL 2.0 and ISC and BSD
|
|
|
|
|
Group: Development/Languages
|
|
|
|
@ -152,9 +154,6 @@ Source7: nodejs_native.attr
|
|
|
|
|
# Disable running gyp on bundled deps we don't use
|
|
|
|
|
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
|
|
|
|
|
|
|
|
|
|
# Patch to install both node and libnode.so, using the correct libdir
|
|
|
|
|
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
|
|
|
|
|
|
|
|
|
|
BuildRequires: make
|
|
|
|
|
BuildRequires: python%{python3_pkgversion}-devel
|
|
|
|
|
BuildRequires: python%{python3_pkgversion}-setuptools
|
|
|
|
@ -183,6 +182,7 @@ BuildRequires: jq
|
|
|
|
|
BuildRequires: nodejs-packaging
|
|
|
|
|
BuildRequires: chrpath
|
|
|
|
|
BuildRequires: libatomic
|
|
|
|
|
BuildRequires: ninja-build
|
|
|
|
|
BuildRequires: systemtap-sdt-devel
|
|
|
|
|
BuildRequires: unzip
|
|
|
|
|
|
|
|
|
@ -201,14 +201,24 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
|
|
|
|
|
# provide releases for it.
|
|
|
|
|
Provides: bundled(llhttp) = %{llhttp_version}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if 0%{?rhel} && 0%{?rhel} < 8
|
|
|
|
|
BuildRequires: openssl11-devel >= %{openssl_minimum}
|
|
|
|
|
Requires: openssl11 >= %{openssl_minimum}
|
|
|
|
|
BuildRequires: openssl11-devel >= %{openssl11_minimum}
|
|
|
|
|
Requires: openssl11 >= %{openssl11_minimum}
|
|
|
|
|
%global ssl_configure --shared-openssl --shared-openssl-includes=%{_includedir}/openssl11 --shared-openssl-libpath=%{_libdir}/openssl11
|
|
|
|
|
%else
|
|
|
|
|
BuildRequires: openssl-devel >= %{openssl_minimum}
|
|
|
|
|
Requires: openssl >= %{openssl_minimum}
|
|
|
|
|
%global ssl_configure --shared-openssl
|
|
|
|
|
|
|
|
|
|
%if 0%{?fedora} >= 36
|
|
|
|
|
BuildRequires: openssl >= %{openssl30_minimum}
|
|
|
|
|
BuildRequires: openssl-devel >= %{openssl30_minimum}
|
|
|
|
|
%global openssl_fips_configure --openssl-is-fips
|
|
|
|
|
%else
|
|
|
|
|
Requires: openssl >= %{openssl11_minimum}
|
|
|
|
|
BuildRequires: openssl-devel >= %{openssl11_minimum}
|
|
|
|
|
%global openssl_fips_configure %{nil}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%global ssl_configure --shared-openssl %{openssl_fips_configure}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# we need the system certificate store
|
|
|
|
@ -275,9 +285,9 @@ Requires: (nodejs-packaging if rpm-build)
|
|
|
|
|
|
|
|
|
|
# Make sure we keep NPM up to date when we update Node.js
|
|
|
|
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
|
|
|
|
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
|
|
|
|
|
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
|
|
|
|
|
%endif
|
|
|
|
|
Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
|
|
|
|
|
Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
@ -291,8 +301,8 @@ real-time applications that run across distributed devices.
|
|
|
|
|
%package devel
|
|
|
|
|
Summary: JavaScript runtime - development headers
|
|
|
|
|
Group: Development/Languages
|
|
|
|
|
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
Requires: openssl-devel%{?_isa}
|
|
|
|
|
%if !%{with bundled_zlib}
|
|
|
|
|
Requires: zlib-devel%{?_isa}
|
|
|
|
@ -304,9 +314,6 @@ Requires: nodejs-packaging
|
|
|
|
|
Requires: libuv-devel%{?_isa}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Make it conflict with any other version of nodejs-devel
|
|
|
|
|
Conflicts: %{name}-devel
|
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
|
Development headers for the Node.js JavaScript runtime.
|
|
|
|
|
|
|
|
|
@ -326,8 +333,8 @@ Provides: libv8_libbase.so.%{v8_major} = %{v8_epoch}:%{v8_version}
|
|
|
|
|
Provides: libv8_libplatform.so.%{v8_major} = %{v8_epoch}:%{v8_version}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}
|
|
|
|
|
Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}
|
|
|
|
|
Obsoletes: v8 < 1:6.7.17-10
|
|
|
|
|
|
|
|
|
|
%description libs
|
|
|
|
@ -336,7 +343,7 @@ Libraries to support Node.js and provide stable v8 interfaces.
|
|
|
|
|
|
|
|
|
|
%package full-i18n
|
|
|
|
|
Summary: Non-English locale data for Node.js
|
|
|
|
|
Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
|
|
|
|
|
%description full-i18n
|
|
|
|
|
Optional data files to provide full-icu support for Node.js. Remove this
|
|
|
|
@ -347,28 +354,28 @@ package to save space if non-English locales are not needed.
|
|
|
|
|
Summary: v8 - development headers
|
|
|
|
|
Epoch: %{v8_epoch}
|
|
|
|
|
Version: %{v8_version}
|
|
|
|
|
Release: %{v8_release}%{?dist}
|
|
|
|
|
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Release: %{v8_release}
|
|
|
|
|
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
Conflicts: v8-314-devel
|
|
|
|
|
|
|
|
|
|
%description -n v8-devel
|
|
|
|
|
Development headers for the v8 runtime.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
%package -n npm
|
|
|
|
|
Summary: Node.js Package Manager
|
|
|
|
|
Epoch: %{npm_epoch}
|
|
|
|
|
Version: %{npm_version}
|
|
|
|
|
Release: %{npm_release}%{?dist}
|
|
|
|
|
Release: %{npm_release}
|
|
|
|
|
|
|
|
|
|
# We used to ship npm separately, but it is so tightly integrated with Node.js
|
|
|
|
|
# (and expected to be present on all Node.js systems) that we ship it bundled
|
|
|
|
|
# now.
|
|
|
|
|
Obsoletes: npm < 0:3.5.4-6
|
|
|
|
|
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
|
|
|
|
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Do not add epoch to the virtual NPM provides or it will break
|
|
|
|
@ -378,6 +385,7 @@ Provides: npm(npm) = %{npm_version}
|
|
|
|
|
%description -n npm
|
|
|
|
|
npm is a package manager for node.js. You can use it to install and publish
|
|
|
|
|
your node programs. It manages dependencies and does other cool stuff.
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%package docs
|
|
|
|
@ -388,8 +396,8 @@ BuildArch: noarch
|
|
|
|
|
# We don't require that the main package be installed to
|
|
|
|
|
# use the docs, but if it is installed, make sure the
|
|
|
|
|
# version always matches
|
|
|
|
|
Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
|
|
|
|
|
Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
|
|
|
|
|
|
|
|
|
|
%description docs
|
|
|
|
|
The API documentation for the Node.js JavaScript runtime.
|
|
|
|
@ -431,11 +439,9 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} \;
|
|
|
|
|
%define _lto_cflags %{nil}
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%ifarch s390 s390x %{arm} %ix86
|
|
|
|
|
# Decrease debuginfo verbosity to reduce memory consumption during final
|
|
|
|
|
# library linking
|
|
|
|
|
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
export CC='%{__cc}'
|
|
|
|
|
export CXX='%{__cxx}'
|
|
|
|
@ -446,16 +452,24 @@ export NODE_GYP_FORCE_PYTHON=%{__python3}
|
|
|
|
|
# build with debugging symbols and add defines from libuv (#892601)
|
|
|
|
|
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
|
|
|
|
|
# NULL objects. We need to pass -fno-delete-null-pointer-checks
|
|
|
|
|
# 2022-07-14: There's a bug in either torque or gcc that causes a
|
|
|
|
|
# segmentation fault on ppc64le and s390x if compiled with -O2. Things
|
|
|
|
|
# run fine on -O1 and -O3, so we'll just go with -O3 (like upstream)
|
|
|
|
|
# while this gets sorted out.
|
|
|
|
|
extra_cflags=(
|
|
|
|
|
-D_LARGEFILE_SOURCE
|
|
|
|
|
-D_FILE_OFFSET_BITS=64
|
|
|
|
|
-DZLIB_CONST
|
|
|
|
|
-fno-delete-null-pointer-checks
|
|
|
|
|
-O3
|
|
|
|
|
)
|
|
|
|
|
export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
|
|
|
|
|
export LDFLAGS="%{build_ldflags}"
|
|
|
|
|
|
|
|
|
|
%{__python3} configure.py --prefix=%{_prefix} \
|
|
|
|
|
%{__python3} configure.py \
|
|
|
|
|
--ninja \
|
|
|
|
|
--enable-lto \
|
|
|
|
|
--prefix=%{_prefix} \
|
|
|
|
|
--shared \
|
|
|
|
|
--libdir=%{_lib} \
|
|
|
|
|
%{ssl_configure} \
|
|
|
|
@ -466,14 +480,18 @@ export LDFLAGS="%{build_ldflags}"
|
|
|
|
|
--with-intl=small-icu \
|
|
|
|
|
--with-icu-default-data-dir=%{icudatadir} \
|
|
|
|
|
--without-corepack \
|
|
|
|
|
%{!?with_npm:--without-npm} \
|
|
|
|
|
--openssl-use-def-ca-store
|
|
|
|
|
|
|
|
|
|
%make_build BUILDTYPE=Release
|
|
|
|
|
%ninja_build -C out/Release
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
rm -rf %{buildroot}
|
|
|
|
|
|
|
|
|
|
# The ninja build does not put the shared library in the expected location, so
|
|
|
|
|
# we will move it.
|
|
|
|
|
mv out/Release/lib/libnode.so.%{nodejs_soversion} out/Release/
|
|
|
|
|
./tools/install.py install %{buildroot} %{_prefix}
|
|
|
|
|
|
|
|
|
|
# Set the binary permissions properly
|
|
|
|
@ -515,22 +533,30 @@ rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
|
|
|
|
|
mkdir -p %{buildroot}%{_datadir}/node
|
|
|
|
|
cp -p common.gypi %{buildroot}%{_datadir}/node
|
|
|
|
|
|
|
|
|
|
# The config.gypi file is platform-dependent, so rename it to not conflict
|
|
|
|
|
mv %{buildroot}%{_includedir}/node/config.gypi \
|
|
|
|
|
%{buildroot}%{_includedir}/node/config-%{_arch}.gypi
|
|
|
|
|
|
|
|
|
|
# Install the GDB init tool into the documentation directory
|
|
|
|
|
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
# install NPM docs to mandir
|
|
|
|
|
mkdir -p %{buildroot}%{_mandir} \
|
|
|
|
|
%{buildroot}%{_pkgdocdir}/npm
|
|
|
|
|
|
|
|
|
|
cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
|
|
|
|
|
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
|
|
|
|
|
ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
|
|
|
|
|
ln -srf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Install Gatsby HTML documentation to %%{_pkgdocdir}
|
|
|
|
|
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
|
|
|
|
|
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
|
|
|
|
|
|
|
|
|
|
ln -sf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
|
|
|
|
|
ln -srf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Node tries to install some python files into a documentation directory
|
|
|
|
|
# (and not the proper one). Remove them for now until we figure out what to
|
|
|
|
@ -538,6 +564,8 @@ ln -sf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
|
|
|
|
|
rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
|
|
|
|
|
%{buildroot}/%{_defaultdocdir}/node/lldbinit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
# Some NPM bundled deps are executable but should not be. This causes
|
|
|
|
|
# unnecessary automatic dependencies to be added. Make them not executable.
|
|
|
|
|
# Skip the npm bin directory or the npm binary will not work.
|
|
|
|
@ -557,7 +585,8 @@ cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
|
|
|
|
|
# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
|
|
|
|
|
# This is done in the interests of keeping /usr read-only.
|
|
|
|
|
mkdir -p %{buildroot}%{_prefix}/etc
|
|
|
|
|
ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
|
|
|
|
|
ln -rs %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Install the full-icu data files
|
|
|
|
|
mkdir -p %{buildroot}%{icudatadir}
|
|
|
|
@ -577,8 +606,10 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
|
|
|
|
|
# Ensure we have punycode and that the version matches
|
|
|
|
|
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(\"assert\").equal(require(\"punycode\").version, '%{punycode_version}')"
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
# Ensure we have npm and that the version matches
|
|
|
|
|
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq -e '.npm == "%{npm_version}"'
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Make sure i18n support is working
|
|
|
|
|
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
|
|
|
|
@ -649,6 +680,7 @@ end
|
|
|
|
|
%{_libdir}/libv8_libplatform.so
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
%files -n npm
|
|
|
|
|
%{_bindir}/npm
|
|
|
|
|
%{_bindir}/npx
|
|
|
|
@ -656,185 +688,19 @@ end
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/npmrc
|
|
|
|
|
%{_prefix}/etc/npmrc
|
|
|
|
|
%ghost %{_sysconfdir}/npmignore
|
|
|
|
|
%doc %{_mandir}/man1/npm*.1*
|
|
|
|
|
%doc %{_mandir}/man1/npx.1*
|
|
|
|
|
%doc %{_mandir}/man5/folders.5*
|
|
|
|
|
%doc %{_mandir}/man5/install.5*
|
|
|
|
|
%doc %{_mandir}/man5/npmrc.5*
|
|
|
|
|
%doc %{_mandir}/man5/npm-shrinkwrap-json.5*
|
|
|
|
|
%doc %{_mandir}/man5/package-json.5*
|
|
|
|
|
%doc %{_mandir}/man5/package-lock-json.5*
|
|
|
|
|
%doc %{_mandir}/man7/config.7*
|
|
|
|
|
%doc %{_mandir}/man7/developers.7*
|
|
|
|
|
%doc %{_mandir}/man7/orgs.7*
|
|
|
|
|
%doc %{_mandir}/man7/logging.7*
|
|
|
|
|
%doc %{_mandir}/man7/registry.7*
|
|
|
|
|
%doc %{_mandir}/man7/removal.7*
|
|
|
|
|
%doc %{_mandir}/man7/scope.7*
|
|
|
|
|
%doc %{_mandir}/man7/scripts.7*
|
|
|
|
|
%doc %{_mandir}/man7/workspaces.7*
|
|
|
|
|
|
|
|
|
|
%doc %{_mandir}/man*/
|
|
|
|
|
%exclude %doc %{_mandir}/man1/node.1*
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%files docs
|
|
|
|
|
%doc doc
|
|
|
|
|
%dir %{_pkgdocdir}
|
|
|
|
|
%{_pkgdocdir}/html
|
|
|
|
|
|
|
|
|
|
%if %{with npm}
|
|
|
|
|
%{_pkgdocdir}/npm/docs
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
* Fri May 06 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.15.0-3
|
|
|
|
|
- Fix incorrect epoch in v8-devel dependency
|
|
|
|
|
|
|
|
|
|
* Fri Apr 29 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.15.0-2
|
|
|
|
|
- Fix file conflicts.
|
|
|
|
|
- Make dependency on nodejs-libs more strict.
|
|
|
|
|
|
|
|
|
|
* Wed Apr 27 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.15.0-1
|
|
|
|
|
- Update to Node.js 16.15.0
|
|
|
|
|
- Stop carrying full ICU sources now that the binary data is available
|
|
|
|
|
- Properly version the v8 virtual Provides
|
|
|
|
|
- Bundle nghttp2
|
|
|
|
|
|
|
|
|
|
* Mon Apr 04 2022 Jan Staněk <jstanek@redhat.com> - 16.14.1-2
|
|
|
|
|
- Unify configure.py calls into single command
|
|
|
|
|
- Refactor bootstrap-related parts
|
|
|
|
|
- Decouple dependency bundling from bootstrapping
|
|
|
|
|
|
|
|
|
|
* Thu Mar 17 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.14.1-1
|
|
|
|
|
- Update to Node.js 16.14.1
|
|
|
|
|
- Drop corepack
|
|
|
|
|
|
|
|
|
|
* Thu Mar 03 2022 Zuzana Svetlikova <zsvetlik@redhat.com> - 1:16.14.0-3
|
|
|
|
|
- Build without corepack
|
|
|
|
|
|
|
|
|
|
* Wed Feb 09 2022 Zuzana Svetlikova <zsvetlik@redhat.com> - 1:16.14.0-2
|
|
|
|
|
- Replace explicit version of npm in %%check with variable and make build fail
|
|
|
|
|
if it doesn't match
|
|
|
|
|
|
|
|
|
|
* Tue Feb 08 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.14.0-1
|
|
|
|
|
- Update to Node.js 16.14.0
|
|
|
|
|
|
|
|
|
|
* Thu Feb 03 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-8
|
|
|
|
|
- Update npm to 8.3.1 (CVE-2021-43616)
|
|
|
|
|
|
|
|
|
|
* Wed Feb 02 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-7
|
|
|
|
|
- Fix incorrect version Provides: for npm (bz#2049873)
|
|
|
|
|
|
|
|
|
|
* Mon Jan 31 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-6
|
|
|
|
|
- Rebuild for more architectures
|
|
|
|
|
|
|
|
|
|
* Mon Jan 31 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-5
|
|
|
|
|
- Tweak some dependencies on EPEL 7 (bz2048589)
|
|
|
|
|
- Add Provides: bundled(zlib)
|
|
|
|
|
|
|
|
|
|
* Wed Jan 19 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-3
|
|
|
|
|
- Bundle zlib on EPEL 7
|
|
|
|
|
|
|
|
|
|
* Mon Jan 17 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-2
|
|
|
|
|
- Add support for building on EPEL 7
|
|
|
|
|
|
|
|
|
|
* Tue Jan 11 2022 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.2-1
|
|
|
|
|
- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
|
|
|
|
|
- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
|
|
|
|
|
- Incorrect handling of certificate subject and issuer fields (Medium)(CVE-2021-44533)
|
|
|
|
|
- Prototype pollution via `console.table` properties (Low)(CVE-2022-21824)
|
|
|
|
|
|
|
|
|
|
* Thu Dec 02 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.1-2
|
|
|
|
|
- Enable building for EPEL 8 modules
|
|
|
|
|
|
|
|
|
|
* Thu Dec 02 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.1-1
|
|
|
|
|
- Update to 16.13.1
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.13.1
|
|
|
|
|
|
|
|
|
|
* Thu Nov 25 2021 Honza Horak <hhorak@redhat.com> - 1:16.13.0-3
|
|
|
|
|
- Make sure binary node-gyp is executable
|
|
|
|
|
Resolves: #2026615
|
|
|
|
|
|
|
|
|
|
* Mon Nov 01 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.13.0-1
|
|
|
|
|
- Update to 16.13.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.13.0
|
|
|
|
|
- Add support for epel8
|
|
|
|
|
|
|
|
|
|
* Mon Oct 25 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.12.0-1
|
|
|
|
|
- Update to 16.12.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.12.0
|
|
|
|
|
|
|
|
|
|
* Wed Oct 13 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.11.1-1
|
|
|
|
|
- Update to 16.11.1
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.11.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.11.1
|
|
|
|
|
|
|
|
|
|
* Thu Sep 23 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.10.0-1
|
|
|
|
|
- Update to 16.10.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.10.0
|
|
|
|
|
|
|
|
|
|
* Tue Sep 14 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.9.1-4
|
|
|
|
|
- Correct the bad merge of corepack fix
|
|
|
|
|
|
|
|
|
|
* Tue Sep 14 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.9.1-3
|
|
|
|
|
- Drop auto-dependency on PowerShell introduced by corepack
|
|
|
|
|
|
|
|
|
|
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1:16.9.1-2
|
|
|
|
|
- Rebuilt with OpenSSL 3.0.0
|
|
|
|
|
|
|
|
|
|
* Mon Sep 13 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.9.1-1
|
|
|
|
|
- Update to 16.9.1
|
|
|
|
|
- Add experimental 'corepack' tool
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.9.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.9.1
|
|
|
|
|
|
|
|
|
|
* Tue Aug 31 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.8.0-1
|
|
|
|
|
- Update to 16.8.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.8.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.7.0
|
|
|
|
|
|
|
|
|
|
* Wed Aug 11 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.6.2-1
|
|
|
|
|
- Update to 16.6.2
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.6.2
|
|
|
|
|
|
|
|
|
|
* Tue Aug 03 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.6.1-1
|
|
|
|
|
- Update to 16.6.1
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.6.1
|
|
|
|
|
- Fixes v8 regression introduced in 16.6.0
|
|
|
|
|
|
|
|
|
|
* Mon Aug 02 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.6.0-1
|
|
|
|
|
- Update to 16.6.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.6.0
|
|
|
|
|
|
|
|
|
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:16.5.0-2
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Tue Jul 20 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.5.0-1
|
|
|
|
|
- Update to 16.5.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.5.0
|
|
|
|
|
|
|
|
|
|
* Fri Jul 02 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.4.1-2
|
|
|
|
|
- Re-add support for v8 development headers
|
|
|
|
|
|
|
|
|
|
* Thu Jul 01 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.4.1-1
|
|
|
|
|
- Update to 16.4.1
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.4.1
|
|
|
|
|
|
|
|
|
|
* Wed Jun 23 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.4.0-1
|
|
|
|
|
- Update to 16.4.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.4.0
|
|
|
|
|
|
|
|
|
|
* Fri Jun 04 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.3.0-1
|
|
|
|
|
- Update to 16.3.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.3.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Wed May 19 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.2.0-1
|
|
|
|
|
- Update to 16.2.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.2.0
|
|
|
|
|
- Fix changelog version numbers
|
|
|
|
|
|
|
|
|
|
* Tue May 04 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.1.0-1
|
|
|
|
|
- Update to 16.1.0
|
|
|
|
|
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#16.1.0
|
|
|
|
|
- Drop upstreamed patch
|
|
|
|
|
|
|
|
|
|
* Thu Apr 29 2021 Stephen Gallagher <sgallagh@redhat.com> - 1:16.0.0-1
|
|
|
|
|
- First release of Node.js 16.x
|
|
|
|
|
|
|
|
|
|
%autochangelog
|
|
|
|
|