Use stream-specific ABI dependency generator
Until now, the nodejs_abi dependency generator has lived in nodejs-packaging. However, it depends on (an uses only) /usr/bin/node, thus only working and being accurate for the default stream. Moving the generator into a specific stream and modifying it to use the versioned binary should ensure that it is valid for whatever stream is used for compiling the binary extension in question. Related: RHEL-67814 Signed-off-by: Jan Staněk <jstanek@redhat.com>
This commit is contained in:
parent
b57548da40
commit
bb7c0670b2
@ -161,6 +161,8 @@ Source200: nodejs-tarball.sh
|
|||||||
Source201: npmrc.builtin.in
|
Source201: npmrc.builtin.in
|
||||||
Source202: nodejs.pc.in
|
Source202: nodejs.pc.in
|
||||||
Source203: v8.pc.in
|
Source203: v8.pc.in
|
||||||
|
Source204: nodejs22_abi.req
|
||||||
|
Source205: nodejs22_abi.attr
|
||||||
|
|
||||||
Patch: 0001-Remove-unused-OpenSSL-config.patch
|
Patch: 0001-Remove-unused-OpenSSL-config.patch
|
||||||
|
|
||||||
@ -778,6 +780,10 @@ sed -e 's#@PREFIX@#%{_prefix}#g' \
|
|||||||
-e 's#@V8_VERSION@#%{v8_version}#g' \
|
-e 's#@V8_VERSION@#%{v8_version}#g' \
|
||||||
%{SOURCE203} > %{buildroot}%{_libdir}/pkgconfig/v8-%{v8_major}.%{v8_minor}.pc
|
%{SOURCE203} > %{buildroot}%{_libdir}/pkgconfig/v8-%{v8_major}.%{v8_minor}.pc
|
||||||
|
|
||||||
|
# Install automatic ABI requirements generator for dependent packages
|
||||||
|
install -Dpm0755 %{SOURCE204} %{buildroot}%{_rpmconfigdir}/nodejs%{nodejs_pkg_major}_abi.req
|
||||||
|
install -Dpm0644 %{SOURCE204} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs%{nodejs_pkg_major}_abi.attr
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
# Fail the build if the versions don't match
|
# Fail the build if the versions don't match
|
||||||
@ -856,6 +862,8 @@ end
|
|||||||
%{nodejs_datadir}/common.gypi
|
%{nodejs_datadir}/common.gypi
|
||||||
%{_pkgdocdir}/gdbinit
|
%{_pkgdocdir}/gdbinit
|
||||||
%{_libdir}/pkgconfig/nodejs-%{nodejs_pkg_major}.pc
|
%{_libdir}/pkgconfig/nodejs-%{nodejs_pkg_major}.pc
|
||||||
|
%{_rpmconfigdir}/fileattrs/nodejs%{nodejs_pkg_major}*.attr
|
||||||
|
%{_rpmconfigdir}/nodejs%{nodejs_pkg_major}*
|
||||||
|
|
||||||
|
|
||||||
%files -n %{pkgname}-full-i18n
|
%files -n %{pkgname}-full-i18n
|
||||||
|
2
nodejs22_abi.attr
Normal file
2
nodejs22_abi.attr
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
%__nodejs22_native_requires %{_rpmconfigdir}/nodejs22_abi.req
|
||||||
|
%__nodejs22_native_path ^/usr/lib.*/node_modules_22/.*\\.node$
|
4
nodejs22_abi.req
Normal file
4
nodejs22_abi.req
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Require ABI version of the current interpreter
|
||||||
|
printf 'nodejs(abi) = %s\n' "$(/usr/bin/node-22 -p 'process.versions.modules')"
|
Loading…
Reference in New Issue
Block a user