Adam Majer 2024-04-04 08:06:04 +00:00 committed by Git OBS Bridge
parent 17690a8448
commit c2da7b7524
2 changed files with 23 additions and 39 deletions

View File

@ -15,17 +15,7 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
###########################################################
#
# WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
#
# This spec file is generated from a template hosted at
# https://github.com/AdamMajer/nodejs-packaging
#
###########################################################
# Fedora doesn't have rpm-config-SUSE which provides
# ext_man in /usr/lib/rpm/macros.d/macros.obs
%if 0%{?fedora_version}
%define ext_man .gz
%endif
@ -134,12 +124,12 @@ Source1: https://nodejs.org/dist/v%{version}/SHASUMS256.txt
Source2: https://nodejs.org/dist/v%{version}/SHASUMS256.txt.sig
Source3: nodejs.keyring
# Python 3.4 compatible node-gyp
### https://github.com/nodejs/node-gyp.git
### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz
Source5: node-gyp_7.1.2.tar.xz
# Only required to run unit tests in NodeJS 10+
Source10: update_npm_tarball.sh
# Python 3.4 compatible node-gyp
### https://github.com/nodejs/node-gyp.git
### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz
Source5: node-gyp_7.1.2.tar.xz
# Only required to run unit tests in NodeJS 10+
Source10: update_npm_tarball.sh
Source11: node_modules.tar.xz
Source20: bash_output_helper.bash
@ -150,8 +140,6 @@ Patch5: sle12_python3_compat.patch
Patch7: manual_configure.patch
Patch13: openssl_binary_detection.patch
## Patches specific to SUSE and openSUSE
Patch100: linker_lto_jobs.patch
# PATCH-FIX-OPENSUSE -- set correct path for dtrace if it is built
@ -178,8 +166,8 @@ Patch305: qemu_timeouts_arches.patch
Patch308: node-gyp-config.patch
Patch309: gcc13.patch
BuildRequires: pkg-config
BuildRequires: fdupes
BuildRequires: pkg-config
BuildRequires: procps
BuildRequires: xz
BuildRequires: zlib-devel
@ -199,10 +187,10 @@ BuildRequires: config(netcfg)
%if 0%{?suse_version} == 1110
# GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK).
%if %node_version_number >= 8
BuildRequires: gcc5-c++
BuildRequires: gcc5-c++
%define forced_gcc_version 5
%else
BuildRequires: gcc48-c++
BuildRequires: gcc48-c++
%define forced_gcc_version 4.8
%endif
%endif
@ -212,15 +200,15 @@ BuildRequires: gcc48-c++
# for SLE-12:Update targets
%if 0%{?suse_version} == 1315
%if %node_version_number >= 17
BuildRequires: gcc12-c++
BuildRequires: gcc12-c++
%define forced_gcc_version 12
%else
%if %node_version_number >= 14
BuildRequires: gcc9-c++
BuildRequires: gcc9-c++
%define forced_gcc_version 9
%else
%if %node_version_number >= 8
BuildRequires: gcc7-c++
BuildRequires: gcc7-c++
%define forced_gcc_version 7
%endif
%endif
@ -229,7 +217,7 @@ BuildRequires: gcc7-c++
%if 0%{?suse_version} == 1500
%if %node_version_number >= 17
BuildRequires: gcc12-c++
BuildRequires: gcc12-c++
%define forced_gcc_version 12
%endif
%endif
@ -240,7 +228,6 @@ BuildRequires: gcc12-c++
BuildRequires: gcc-c++
%endif
# Python dependencies
%if %node_version_number >= 14
@ -266,8 +253,8 @@ BuildRequires: python
%endif
%if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10
BuildRequires: user(nobody)
BuildRequires: group(nobody)
BuildRequires: user(nobody)
%endif
# shared openssl
@ -282,11 +269,10 @@ BuildRequires: openssl >= %{openssl_req_ver}
BuildRequires: (libopenssl1_1-hmac if libopenssl-1_1-devel)
BuildRequires: (libopenssl3-hmac if libopenssl-3-devel)
%else
BuildRequires: openssl-1_1 >= %{openssl_req_ver}
BuildRequires: libopenssl1_1-hmac
BuildRequires: openssl-1_1 >= %{openssl_req_ver}
%endif
# /suse_version
%endif
@ -369,8 +355,8 @@ ExclusiveArch: not_buildable
%endif
%endif
Provides: bundled(uvwasi) = 0.0.20
Provides: bundled(libuv) = 1.48.0
Provides: bundled(uvwasi) = 0.0.20
Provides: bundled(v8) = 11.8.172.17
%if %{with intree_brotli}
Provides: bundled(brotli) = 1.1.0
@ -378,12 +364,11 @@ Provides: bundled(brotli) = 1.1.0
BuildRequires: pkgconfig(libbrotlidec)
%endif
Provides: bundled(base64) = 0.5.2
Provides: bundled(llhttp) = 9.1.3
Provides: bundled(ngtcp2) = 1.3.0
Provides: bundled(base64) = 0.5.2
Provides: bundled(simdutf) = 4.0.8
Provides: bundled(simdjson) = 3.7.0
Provides: bundled(simdutf) = 4.0.8
# bundled url-ada parser, not ada
Provides: bundled(ada) = 2.7.6
@ -404,8 +389,8 @@ provided by npm.
Summary: Development headers for NodeJS 21.x
Group: Development/Languages/NodeJS
Provides: nodejs-devel = %{version}
Requires: npm21 = %{version}
Requires: %{name} = %{version}
Requires: npm21 = %{version}
%description devel
This package provides development headers for Node.js needed for creation
@ -422,12 +407,12 @@ Requires: nodejs-common
Requires: nodejs21 = %{version}
Provides: nodejs-npm = %{version}
Obsoletes: nodejs-npm < 4.0.0
Provides: npm(npm) = 10.5.0
Provides: npm = %{version}
Provides: npm(npm) = 10.5.0
%if 0%{?suse_version} >= 1500
%if %{node_version_number} >= 10
Requires: user(nobody)
Requires: group(nobody)
Requires: user(nobody)
%endif
%endif
Provides: bundled(node-abbrev) = 2.0.0
@ -714,8 +699,6 @@ find -name \*~ -print0 -delete
# abnormalities from patching
find \( -name \*.js.orig -or -name \*.md.orig -or -name \*.1.orig \) -delete
%build
# normalize shebang
%if %{node_version_number} >= 12
@ -1101,6 +1084,7 @@ update-alternatives --remove corepack-default %{_bindir}/corepack%{node_version_
%endif
%else
%pre
# remove files that are no longer owned but provided by update-alternatives
if ! [ -L %{_mandir}/man1/node.1%{ext_man} ]; then

View File

@ -39,7 +39,7 @@ Index: node-v21.7.1/tools/install.py
action(options, [link_path], os.path.join('bin', bin_name))
elif action == install:
- try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name, bin_target), link_path)
+ try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name + 21, bin_target), link_path)
+ try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name + '21', bin_target), link_path)
else:
assert 0 # unhandled action type