Resolves: rhbz2025054

This commit is contained in:
Frank Ch. Eigler 2021-11-19 15:19:38 -05:00
parent 15364b5764
commit 02429c1f7d
3 changed files with 56 additions and 30 deletions

1
.gitignore vendored
View File

@ -59,3 +59,4 @@
/systemtap-4.5-0.202101291559git9e1a0f5703ad.tar.gz
/systemtap-4.5-0.202102101544git8d5e0abc542c.tar.gz
/systemtap-4.5.tar.gz
/systemtap-4.6.tar.gz

View File

@ -1 +1 @@
SHA512 (systemtap-4.5.tar.gz) = 8136779a9f5cb0fbaae565eab1ab6fa307f1024dfc2c6c3845acfadff0eecc684ba89aa5d442c7b90c2c73edaab41ca07bae2bad8361f80fe8e9928b40466cd3
SHA512 (systemtap-4.6.tar.gz) = 835b45597e9de0ea17857b47d542c87d155cb5c772f8595f41845a25ff06b862cb9c4b635292c3a6c66cb5255a07eee3af7cb7861110a4a05f545a4b35f11402

View File

@ -4,14 +4,13 @@
%{!?with_htmldocs: %global with_htmldocs 0}
%{!?with_monitor: %global with_monitor 1}
# crash is not available
%ifarch ppc ppc64 %{sparc} %{mips}
%ifarch ppc ppc64 %{sparc} %{mips} %{riscv}
%{!?with_crash: %global with_crash 0}
%else
%{!?with_crash: %global with_crash 1}
%endif
%{!?with_rpm: %global with_rpm 1}
%{!?elfutils_version: %global elfutils_version 0.179}
%{!?pie_supported: %global pie_supported 1}
%{!?with_boost: %global with_boost 0}
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le aarch64
%{!?with_dyninst: %global with_dyninst 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
@ -39,6 +38,7 @@
%{!?with_python3_probes: %global with_python3_probes (0%{?fedora} >= 23 || 0%{?rhel} > 7)}
%{!?with_httpd: %global with_httpd 0}
%{!?with_specific_python: %global with_specific_python 0%{?fedora} >= 31}
%{!?with_sysusers: %global with_sysusers 0%{?fedora} >= 32 || 0%{?rhel} >= 9}
# Virt is supported on these arches, even on el7, but it's not in core EL7
%if 0%{?rhel} <= 7
@ -89,8 +89,8 @@
%define __brp_mangle_shebangs_exclude_from .stp$
Name: systemtap
Version: 4.5
Release: 7%{?release_override}%{?dist}
Version: 4.6
Release: 1%{?release_override}%{?dist}
# for version, see also configure.ac
@ -126,12 +126,6 @@ License: GPLv2+
URL: http://sourceware.org/systemtap/
Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz
Patch1: rhbz1972803.patch
Patch2: rhbz1972828.patch
Patch3: rhbz1972805.patch
Patch4: rhbz1982908.patch
Patch5: rhbz1985124.patch
# Build*
BuildRequires: make
BuildRequires: gcc-c++
@ -180,6 +174,7 @@ BuildRequires: xmlto /usr/share/xmlto/format/fo/pdf
%endif
%endif
%if %{with_emacsvim}
# for _emacs_sitelispdir macros etc.
BuildRequires: emacs
%endif
%if %{with_java}
@ -202,6 +197,9 @@ BuildRequires: python2-setuptools
BuildRequires: python-setuptools
%endif
%endif
%if %{with_python3}
BuildRequires: python3
%endif
%if %{with_python3_probes}
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@ -214,6 +212,10 @@ BuildRequires: /usr/bin/pathfix.py
BuildRequires: libmicrohttpd-devel
BuildRequires: libuuid-devel
%endif
%if %{with_sysusers}
BuildRequires: systemd-rpm-macros
%endif
# Install requirements
Requires: systemtap-client = %{version}-%{release}
@ -490,7 +492,7 @@ This package includes support files needed to run systemtap scripts
that probe python 3 processes.
%endif
%if %{with_python3}
%if %{with_python3_probes}
%package exporter
Summary: Systemtap-prometheus interoperation mechanism
License: GPLv2+
@ -508,7 +510,8 @@ to remote requesters on demand.
Summary: Systemtap Cross-VM Instrumentation - host
License: GPLv2+
URL: http://sourceware.org/systemtap/
Requires: libvirt >= 1.0.2
# only require libvirt-libs really
#Requires: libvirt >= 1.0.2
Requires: libxml2
%description runtime-virthost
@ -542,11 +545,6 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
@ -595,14 +593,6 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
%global docs_config --enable-docs=prebuilt
%endif
# Enable pie as configure defaults to disabling it
%if %{pie_supported}
%global pie_config --enable-pie
%else
%global pie_config --disable-pie
%endif
%if %{with_java}
%global java_config --with-java=%{_jvmdir}/java
%else
@ -652,8 +642,8 @@ systemtap-runtime-virthost machine to execute systemtap scripts.
# We don't ship compileworthy python code, just oddball samples
%global py_auto_byte_compile 0
%configure %{dyninst_config} %{sqlite_config} %{crash_config} %{docs_config} %{pie_config} %{rpm_config} %{java_config} %{virt_config} %{dracut_config} %{python3_config} %{python2_probes_config} %{python3_probes_config} %{httpd_config} %{bpf_config} %{debuginfod_config} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}"
make %{?_smp_mflags}
%configure %{dyninst_config} %{sqlite_config} %{crash_config} %{docs_config} %{rpm_config} %{java_config} %{virt_config} %{dracut_config} %{python3_config} %{python2_probes_config} %{python3_probes_config} %{httpd_config} %{bpf_config} %{debuginfod_config} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}"
make %{?_smp_mflags} V=1
%install
@ -665,6 +655,13 @@ for dir in $(ls -1d $RPM_BUILD_ROOT%{_mandir}/{??,??_??}) ; do
echo "%%lang($lang) $dir/man*/*" >> %{name}.lang
done
%if %{with_sysusers}
install -p -D -m 0644 systemtap-runtime.sysusers %{buildroot}%{_sysusersdir}/systemtap-runtime.conf
install -p -D -m 0644 systemtap-server.sysusers %{buildroot}%{_sysusersdir}/systemtap-server.conf
install -p -D -m 0644 systemtap-testsuite.sysusers %{buildroot}%{_sysusersdir}/systemtap-testsuite.conf
%endif
ln -s %{_datadir}/systemtap/examples
# Fix paths in the example scripts.
@ -788,24 +785,37 @@ pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch
%endif
%pre runtime
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-runtime.sysusers
%else
getent group stapusr >/dev/null || groupadd -f -g 156 -r stapusr
getent group stapsys >/dev/null || groupadd -f -g 157 -r stapsys
getent group stapdev >/dev/null || groupadd -f -g 158 -r stapdev
%endif
exit 0
%pre server
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-server.sysusers
%else
getent group stap-server >/dev/null || groupadd -f -g 155 -r stap-server
getent passwd stap-server >/dev/null || \
useradd -c "Systemtap Compile Server" -u 155 -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server 2>/dev/null || \
useradd -c "Systemtap Compile Server" -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server
%endif
exit 0
%pre testsuite
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-testsuite.sysusers
%else
getent passwd stapusr >/dev/null || \
useradd -c "Systemtap 'stapusr' User" -g stapusr -r -s /sbin/nologin stapusr
getent passwd stapsys >/dev/null || \
useradd -c "Systemtap 'stapsys' User" -g stapsys -G stapusr -r -s /sbin/nologin stapsys
getent passwd stapdev >/dev/null || \
useradd -c "Systemtap 'stapdev' User" -g stapdev -G stapusr -r -s /sbin/nologin stapdev
%endif
exit 0
%post server
@ -962,7 +972,7 @@ if [ "$1" -ge "1" ]; then
fi
exit 0
%if %{with_python3}
%if %{with_python3_probes}
%if %{with_systemd}
%preun exporter
if [ $1 = 0 ] ; then
@ -1027,6 +1037,9 @@ exit 0
%doc README README.unprivileged AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%if %{with_sysusers}
%{_sysusersdir}/systemtap-server.conf
%endif
%files devel -f systemtap.lang
@ -1096,6 +1109,9 @@ exit 0
%doc README README.security AUTHORS NEWS
%{!?_licensedir:%global license %%doc}
%license COPYING
%if %{with_sysusers}
%{_sysusersdir}/systemtap-runtime.conf
%endif
%files client -f systemtap.lang
@ -1162,6 +1178,9 @@ exit 0
%files testsuite
%dir %{_datadir}/systemtap
%{_datadir}/systemtap/testsuite
%if %{with_sysusers}
%{_sysusersdir}/systemtap-testsuite.conf
%endif
%if %{with_java}
@ -1203,7 +1222,7 @@ exit 0
%endif
%endif
%if %{with_python3}
%if %{with_python3_probes}
%files exporter
%{_sysconfdir}/stap-exporter
%{_sysconfdir}/sysconfig/stap-exporter
@ -1221,6 +1240,12 @@ exit 0
# PRERELEASE
%changelog
* Fri Nov 19 2021 Frank Ch. Eigler <fche@redhat.com> - 4.6-1
- Upstream release.
* Thu Sep 09 2021 Frank Ch. Eigler <fche@redhat.com> - 4.5-8
- rhbz1985124: Kernel 5.14 compatibility omnibus cont'd.
* Thu Aug 12 2021 Frank Ch. Eigler <fche@redhat.com> - 4.5-7
- rhbz1985124: Kernel 5.14 compatibility omnibus.