X-Git-Url: http://git.pld-linux.org/?p=packages%2Fnodejs.git;a=blobdiff_plain;f=nodejs.spec;h=288cd98133cbf36fb3c233a01f4082af80a35a51;hp=7240665f6dca96bd20664cb682812cc10e921cbe;hb=5e8b83c;hpb=4398233e40c2005e8512137c4598d072e6302ae1 diff --git a/nodejs.spec b/nodejs.spec index 7240665..288cd98 100644 --- a/nodejs.spec +++ b/nodejs.spec @@ -3,8 +3,11 @@ # /usr/share/doc/node/gdbinit # Conditional build: +%bcond_without system_brotli # system brotli %bcond_without system_uv # system uv -%bcond_with http_parser # use system http-parser and llhttp +%bcond_with http_parser # system http-parser and llhttp + +%define _enable_debug_packages 0 # NOTES: # - https://nodejs.org/en/download/releases/ @@ -14,20 +17,20 @@ # add-on binaries can be loaded in to without needing to be re-compiled. It # used to be stored as hex value in earlier versions, but is now represented as # an integer. -%define node_module_version 72 +%define node_module_version 83 Summary: Asynchronous JavaScript Engine Summary(pl.UTF-8): Asynchroniczny silnik JavaScriptu Name: nodejs -# 12.x LTS - https://github.com/nodejs/Release -# Active start: 2019-10-21 +# 14.x LTS - https://github.com/nodejs/Release +# Active start: 2020-10-27 # Maintenance start: October 2020 -# Maintenance end: April 2022 -Version: 12.16.1 +# Maintenance end: April 2023 +Version: 14.15.0 Release: 1 License: BSD and MIT and Apache v2.0 and GPL v3 Group: Development/Languages Source0: https://nodejs.org/dist/v%{version}/node-v%{version}.tar.gz -# Source0-md5: 99f580f6066c53b7bf4b5f02b81dac29 +# Source0-md5: a5cf57a18833bd122eca200a7d5e22d9 # force node to use /usr/lib/node as the systemwide module directory Patch2: %{name}-libpath.patch @@ -36,33 +39,36 @@ Patch3: %{name}-lib64path.patch Patch4: 0001-Disable-running-gyp-on-shared-deps.patch Patch5: 0002-Install-both-binaries-and-use-libdir.patch URL: https://nodejs.org/ -BuildRequires: c-ares-devel >= 1.14.0 -BuildRequires: gcc >= 6:4.8 +BuildRequires: c-ares-devel >= 1.16.1 +BuildRequires: gcc >= 6:6.3 %if %{with http_parser} BuildRequires: http-parser-devel >= 2.9.3 -BuildRequires: llhttp-devel >= 2.0.1 +BuildRequires: llhttp-devel >= 2.1.3 %endif -BuildRequires: libicu-devel >= 0.64 +%{?with_system_brotli:BuildRequires: libbrotli-devel >= 1.0.9} +BuildRequires: libicu-devel >= 67 BuildRequires: libstdc++-devel >= 6:4.8 -%{?with_system_uv:BuildRequires: libuv-devel >= 1.34.0} -BuildRequires: nghttp2-devel >= 1.40.0 +%{?with_system_uv:BuildRequires: libuv-devel >= 1.38.1} +BuildRequires: nghttp2-devel >= 1.41.0 BuildRequires: openssl-devel >= 1.0.1 BuildRequires: pkgconfig -BuildRequires: python >= 1:2.7 -BuildRequires: python-jsmin -BuildRequires: python-modules >= 1:2.7 +BuildRequires: python3 +BuildRequires: python3-modules BuildRequires: rpm >= 4.4.9-56 BuildRequires: rpmbuild(macros) >= 1.219 BuildRequires: sed >= 4.0 -BuildRequires: zlib-devel -%{?with_http_parser:Requires: http-parser >= 2.9.3} -%{?with_system_uv:Requires: libuv >= 1.34.0} -Requires: nghttp2 >= 1.40.0 +BuildRequires: zlib-devel >= 1.2.11 +Requires: c-ares >= 1.16.1 Requires: ca-certificates +%{?with_http_parser:Requires: http-parser >= 2.9.3} +%{?with_system_brotli:Requires: libbrotli >= 1.0.9} +%{?with_system_uv:Requires: libuv >= 1.38.1} +Requires: nghttp2-libs >= 1.41.0 +Requires: zlib >= 1.2.11 Provides: nodejs(engine) = %{version} Provides: nodejs(module-version) = %{node_module_version} Obsoletes: nodejs-waf -ExclusiveArch: %{ix86} %{x8664} %{arm} +ExclusiveArch: %{ix86} %{x8664} %{arm} aarch64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define sover %(echo %{version} | cut -d. -f2) @@ -93,9 +99,9 @@ Requires: %{name} = %{version}-%{release} Requires: gcc %{?with_http_parser:Requires: http-parser-devel >= 2.9.3} Requires: libstdc++-devel -%{?with_system_uv:Requires: libuv-devel >= 1.34.0} +%{?with_system_uv:Requires: libuv-devel >= 1.38.1} Requires: openssl-devel -Requires: zlib-devel +Requires: zlib-devel >= 1.2.11 %description devel Development headers for nodejs. @@ -142,7 +148,6 @@ Sondy systemtap/dtrace dla Node.js. %prep %setup -q -n node-v%{version} -#%patch1 -p1 %if %{_lib} == "lib64" %patch3 -p1 %else @@ -151,10 +156,17 @@ Sondy systemtap/dtrace dla Node.js. %patch4 -p1 %patch5 -p1 -grep -r '#!.*env python' -l . | xargs %{__sed} -i -e '1 s,#!.*env python,#!%{__python},' +grep -r '#!.*env python' -l . | xargs %{__sed} -i -e '1 s,#!.*env python,#!%{__python3},' +%{?with_system_brotli:%{__rm} -r deps/brotli} +%{__rm} -r deps/cares +%if %{with http_parser} +%{__rm} -r deps/http_parser +%{__rm} -r deps/llhttp +%endif +%{__rm} -r deps/icu-small +%{__rm} -r deps/nghttp2 %{__rm} -r deps/npm -%{?with_http_parser:%{__rm} -r deps/http_parser} %{__rm} -r deps/openssl %{?with_system_uv:%{__rm} -r deps/uv} %{__rm} -r deps/zlib @@ -172,6 +184,7 @@ GYP_DEFINES="soname_version=%{sover}" \ --libdir=%{_lib} \ --openssl-use-def-ca-store \ --shared \ + %{?with_system_brotli:--shared-brotli} \ --shared-cares \ %{?with_http_parser:--shared-http-parser} \ %{?with_system_uv:--shared-libuv} \ @@ -193,7 +206,7 @@ LDFLAGS="%{rpmldflags}" \ %install rm -rf $RPM_BUILD_ROOT -%{__python} tools/install.py install "$RPM_BUILD_ROOT" "%{_prefix}" +%{__python3} tools/install.py install "$RPM_BUILD_ROOT" "%{_prefix}" ln -s libnode.so.%{node_module_version} $RPM_BUILD_ROOT%{_libdir}/libnode.so