From f95e1095ccf465310f94119f28695e7b9d1fedc0 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Jul 14 2020 01:20:12 +0000 Subject: import gcc-toolset-10-systemtap-4.3-5.el8 --- diff --git a/.gcc-toolset-10-systemtap.metadata b/.gcc-toolset-10-systemtap.metadata index bbcb4c0..8c485f1 100644 --- a/.gcc-toolset-10-systemtap.metadata +++ b/.gcc-toolset-10-systemtap.metadata @@ -1 +1 @@ -d3653e17960ac8bb23be3bb57dfa4b17dcb9d27d SOURCES/systemtap-4.1.tar.gz +14769266f6591b85895a5f40e516f8228e83476e SOURCES/systemtap-4.3.tar.gz diff --git a/.gitignore b/.gitignore index 8bcb45a..adcfb77 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/systemtap-4.1.tar.gz +SOURCES/systemtap-4.3.tar.gz diff --git a/SOURCES/pr23074.patch b/SOURCES/pr23074.patch deleted file mode 100644 index 76e0201..0000000 --- a/SOURCES/pr23074.patch +++ /dev/null @@ -1,51 +0,0 @@ -commit 83071bc877b462eacca309fa49c9e8112fc16bdf -Author: Jafeer Uddin -Date: Thu May 9 16:18:46 2019 -0400 - - PR23074: fix guru mode issue with generated calls to register get/set - -diff --git a/elaborate.cxx b/elaborate.cxx -index 9ebf30b..fcd1d1d 100644 ---- a/elaborate.cxx -+++ b/elaborate.cxx -@@ -3073,7 +3073,7 @@ public: - } - - // Don't allow /* guru */ functions unless caller is privileged. -- if (!call->tok->location.file->privileged && -+ if (!call->synthetic && !call->tok->location.file->privileged && - s->tagged_p ("/* guru */")) - throw SEMANTIC_ERROR (_("function may not be used unless -g is specified"), - call->tok); -diff --git a/loc2stap.cxx b/loc2stap.cxx -index c1a48d0..d4fd051 100644 ---- a/loc2stap.cxx -+++ b/loc2stap.cxx -@@ -1745,6 +1745,7 @@ location_context::handle_GNU_parameter_ref (Dwarf_Op expr) - // it and we want to be able to restore the registers back. - functioncall *get_ptregs = new functioncall; - get_ptregs->tok = e->tok; -+ get_ptregs->synthetic = true; - if (this->userspace_p) - get_ptregs->function = std::string("__get_uregs"); - else -@@ -1870,6 +1871,7 @@ location_context::handle_GNU_parameter_ref (Dwarf_Op expr) - // Translation done, restore the pt_regs to its original value - functioncall *set_ptregs = new functioncall; - set_ptregs->tok = e->tok; -+ set_ptregs->synthetic = true; - if (this->userspace_p) - set_ptregs->function = std::string("__set_uregs"); - else -diff --git a/staptree.h b/staptree.h -index d63156f..2735808 100644 ---- a/staptree.h -+++ b/staptree.h -@@ -464,6 +464,7 @@ struct functioncall: public expression - interned_string function; - std::vector args; - std::vector referents; -+ bool synthetic; - functioncall (); - void print (std::ostream& o) const; - void visit (visitor* u); diff --git a/SOURCES/rhbz1732173.patch b/SOURCES/rhbz1732173.patch deleted file mode 100644 index 3466649..0000000 --- a/SOURCES/rhbz1732173.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 7be7af0fda3633cd19e499617834cf4a5f51dd55 -Author: William Cohen -Date: Tue Jul 23 14:24:14 2019 -0400 - - Fix aarch64 to properly access arguments for wrapped syscalls - - Linux 4.18 added wrappers for aarch64 syscalls that pass a pointer to - a struct pt_regs holding the values for the actual arguments. The - syscall tapsets initialize CONTEXT->sregs to point at this data - structure. However, the aarch64 specific register access code was - using the CONTEXT->kregs and just getting the processor register state - when the kprobe triggered rather than the expected arguments in the - data structure being passed into the syscall. The aarch64 specific - register code now gets the syscall arguments from the correct pt_regs - structure. - -diff --git a/tapset/arm64/registers.stp b/tapset/arm64/registers.stp -index b2e5649..8773df2 100644 ---- a/tapset/arm64/registers.stp -+++ b/tapset/arm64/registers.stp -@@ -58,7 +58,10 @@ function uarch_bytes:long() { - function _stp_get_register_by_offset:long (offset:long) %{ /* pure */ - long value; - struct pt_regs *regs; -- regs = (CONTEXT->user_mode_p ? CONTEXT->uregs : CONTEXT->kregs); -+ if (CONTEXT->sregs) -+ regs = CONTEXT->sregs; -+ else -+ regs = (CONTEXT->user_mode_p ? CONTEXT->uregs : CONTEXT->kregs); - if (!regs) { - CONTEXT->last_error = "No registers available in this context"; - return; diff --git a/SPECS/systemtap.spec b/SPECS/systemtap.spec index ec6ac8c..0d18414 100644 --- a/SPECS/systemtap.spec +++ b/SPECS/systemtap.spec @@ -1,7 +1,7 @@ %global __python /usr/bin/python3 %{?scl:%scl_package systemtap} %global sysconfdir %{?scl:%_root_sysconfdir}%{!?scl:%_sysconfdir} - +%global SCLROOT /opt/rh/gcc-toolset-10/root %{!?with_sqlite: %global with_sqlite 0%{?fedora} >= 17 || 0%{?rhel} >= 7} # prefer prebuilt docs @@ -15,11 +15,10 @@ %{!?with_crash: %global with_crash 1} %endif %{!?with_rpm: %global with_rpm 1} -%{!?with_bundled_elfutils: %global with_bundled_elfutils 0} %{!?elfutils_version: %global elfutils_version 0.142} %{!?pie_supported: %global pie_supported 1} %{!?with_boost: %global with_boost 0} -%ifarch %{ix86} x86_64 ppc ppc64 +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le aarch64 %{!?with_dyninst: %global with_dyninst 0%{?fedora} >= 18 || 0%{?rhel} >= 7} %else %{!?with_dyninst: %global with_dyninst 0} @@ -38,11 +37,12 @@ %{!?with_mokutil: %global with_mokutil 0} %{!?with_openssl: %global with_openssl 0} %endif -%{!?with_pyparsing: %global with_pyparsing 1} -%{!?with_python3: %global with_python3 1} -%{!?with_python2_probes: %global with_python2_probes 0} -%{!?with_python3_probes: %global with_python3_probes 0} +%{!?with_pyparsing: %global with_pyparsing 0%{?fedora} >= 18 || 0%{?rhel} >= 7} +%{!?with_python3: %global with_python3 0%{?fedora} >= 23 || 0%{?rhel} > 7} +%{!?with_python2_probes: %global with_python2_probes (0%{?fedora} <= 28 && 0%{?rhel} <= 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} # Virt is supported on these arches, even on el7, but it's not in core EL7 %if 0%{?rhel} <= 7 @@ -53,11 +53,23 @@ %if 0%{?fedora} >= 18 || 0%{?rhel} >= 6 %define initdir %{sysconfdir}/rc.d/init.d -# not scl-wrapped %{_initdir} +# not scl-wrapped _initddir %else # RHEL5 doesn't know _initddir %define initdir %{_initrddir} %endif +%if %{with_virtguest} + %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 + %define udevrulesdir /usr/lib/udev/rules.d + %else + %if 0%{?rhel} >= 6 + %define udevrulesdir /lib/udev/rules.d + %else # RHEL5 + %define udevrulesdir /etc/udev/rules.d + %endif + %endif +%endif + # note not under /opt/rh... SCL special %define dracutlibdir %{_root_prefix}/lib/dracut %if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 @@ -66,6 +78,12 @@ %define dracutstap %{_prefix}/share/dracut/modules.d/99%{?scl_prefix}stap %endif +%if 0%{?rhel} == 6 || 0%{?rhel} == 7 + %define dracutbindir ${_prefix}/sbin +%else + %define dracutbindir ${_prefix}/%{_bindir} +%endif + %if 0%{?rhel} == 6 %{!?_rpmmacrodir: %define _rpmmacrodir /etc/rpm/} %else @@ -76,8 +94,8 @@ %define __brp_mangle_shebangs_exclude_from .stp$ Name: %{?scl_prefix}systemtap -Version: 4.1 -Release: 6%{?dist} +Version: 4.3 +Release: 5%{?dist} # for version, see also configure.ac @@ -113,19 +131,15 @@ License: GPLv2+ URL: http://sourceware.org/systemtap/ Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz -Patch10: pr23074.patch -Patch11: rhbz1732173.patch - # Build* BuildRequires: gcc-c++ BuildRequires: cpio BuildRequires: gettext-devel -BuildRequires: perl BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(avahi-client) %if %{with_dyninst} -BuildRequires: %{?scl_prefix}dyninst-devel >= 8.0 +BuildRequires: %{?scl_prefix}dyninst-devel >= 10.0 BuildRequires: pkgconfig(libselinux) %endif %if %{with_sqlite} @@ -148,14 +162,7 @@ BuildRequires: crash-devel zlib-devel %if %{with_rpm} BuildRequires: rpm-devel %endif -%if %{with_bundled_elfutils} -Source1: elfutils-%{elfutils_version}.tar.gz -Patch1: elfutils-portability.patch -BuildRequires: m4 -%global setup_elfutils -a1 -%else -BuildRequires: %{?scl_prefix}elfutils-devel >= %{elfutils_version} -%endif +BuildRequires: elfutils-devel >= %{elfutils_version} %if %{with_docs} BuildRequires: /usr/bin/latex /usr/bin/dvips /usr/bin/ps2pdf %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 @@ -199,6 +206,10 @@ BuildRequires: python-setuptools BuildRequires: python3-devel BuildRequires: python3-setuptools %endif +%if %{with_specific_python} +BuildRequires: /usr/bin/pathfix.py +%endif + %if %{with_httpd} BuildRequires: libmicrohttpd-devel @@ -222,9 +233,6 @@ Summary: Instrumentation System Server License: GPLv2+ URL: http://sourceware.org/systemtap/ Requires: %{?scl_prefix}systemtap-devel = %{version}-%{release} -Conflicts: systemtap-devel < %{version}-%{release} -Conflicts: systemtap-runtime < %{version}-%{release} -Conflicts: systemtap-client < %{version}-%{release} Requires: nss coreutils Requires: zip unzip Requires(pre): shadow-utils @@ -260,9 +268,6 @@ Requires: kernel-devel-uname-r %endif Requires: /usr/bin/gcc /usr/bin/make -Conflicts: systemtap-client < %{version}-%{release} -Conflicts: systemtap-server < %{version}-%{release} -Conflicts: systemtap-runtime < %{version}-%{release} # Suggest: kernel-debuginfo %description devel @@ -279,9 +284,6 @@ Summary: Programmable system-wide instrumentation system - runtime License: GPLv2+ URL: http://sourceware.org/systemtap/ Requires(pre): shadow-utils -Conflicts: systemtap-devel < %{version}-%{release} -Conflicts: systemtap-server < %{version}-%{release} -Conflicts: systemtap-client < %{version}-%{release} %description runtime SystemTap runtime contains the components needed to execute @@ -297,9 +299,6 @@ Requires: zip unzip Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release} Requires: coreutils grep sed unzip zip Requires: openssh-clients -Conflicts: systemtap-devel < %{version}-%{release} -Conflicts: systemtap-server < %{version}-%{release} -Conflicts: systemtap-runtime < %{version}-%{release} %if %{with_mokutil} Requires: mokutil %endif @@ -339,10 +338,12 @@ URL: http://sourceware.org/systemtap/ %if %{with_pyparsing} %if %{with_python3} Requires: python3-pyparsing -# gcc-toolset-9 buildroot special requirement: -BuildRequires: /usr/bin/python3 %else +%if 0%{?rhel} >= 7 Requires: pyparsing +%else +Requires: python2-pyparsing +%endif %endif %endif @@ -417,7 +418,8 @@ License: GPLv2+ URL: http://sourceware.org/systemtap/ Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release} Requires: byteman > 2.0 -Requires: net-tools +Requires: iproute +Requires: java-devel %description runtime-java This package includes support files needed to run systemtap scripts @@ -453,6 +455,19 @@ This package includes support files needed to run systemtap scripts that probe python 3 processes. %endif +%if %{with_python3} +%package exporter +Summary: Systemtap-prometheus interoperation mechanism +License: GPLv2+ +URL: http://sourceware.org/systemtap/ +Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release} + +%description exporter +This package includes files for a systemd service that manages +systemtap sessions and relays prometheus metrics from the sessions +to remote requesters on demand. +%endif + %if %{with_virthost} %package runtime-virthost Summary: Systemtap Cross-VM Instrumentation - host @@ -491,39 +506,10 @@ systemtap-runtime-virthost machine to execute systemtap scripts. # ------------------------------------------------------------------------ %prep -%setup -q -n systemtap-%{version} %{?setup_elfutils} - -%if %{with_bundled_elfutils} -cd elfutils-%{elfutils_version} -%patch1 -p2 - -sleep 1 -find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch -sleep 1 -find . \( -name configure -o -name config.h.in \) -print | xargs touch -cd .. -%endif - -%patch10 -p1 -%patch11 -p1 +%setup -q -n systemtap-%{version} %build -%if %{with_bundled_elfutils} -# Build our own copy of elfutils. -%global elfutils_config --with-elfutils=elfutils-%{elfutils_version} - -# We have to prevent the standard dependency generation from identifying -# our private elfutils libraries in our provides and requires. -%global _use_internal_dependency_generator 0 -%global filter_eulibs() /bin/sh -c "%{1} | sed '/libelf/d;/libdw/d;/libebl/d'" -%global __find_provides %{filter_eulibs /usr/lib/rpm/find-provides} -%global __find_requires %{filter_eulibs /usr/lib/rpm/find-requires} - -# This will be needed for running stap when not installed, for the test suite. -%global elfutils_mflags LD_LIBRARY_PATH=`pwd`/lib-elfutils -%endif - # Enable/disable the dyninst pure-userspace backend %if %{with_dyninst} %global dyninst_config --with-dyninst @@ -608,16 +594,10 @@ export CPPFLAGS LDFLAGS="-L%{_libdir} -Wl,-rpath-link,%{_libdir}/dyninst -L%{_libdir}/dyninst -L%{_libdir}/elfutils" export LDFLAGS -%if %{with_virthost} -%global virt_config --enable-virt -%else -%global virt_config --disable-virt -%endif - %if %{with_dracut} %global dracut_config --with-dracutstap=%{dracutstap} --with-dracutbindir=%{dracutbindir} %else -%global dracut_config +%global dracut_config %{nil} %endif %if %{with_httpd} @@ -635,15 +615,9 @@ export LDFLAGS # We don't ship compileworthy python code, just oddball samples %global py_auto_byte_compile 0 -%configure %{?elfutils_config} %{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} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}" +%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} --disable-silent-rules --with-extra-version="rpm %{version}-%{release}" make %{?_smp_mflags} -find testsuite/systemtap.examples/ -name '*.stp' -print | xargs perl -pi -e 's@/usr/bin/stap@'%{_bindir}'/stap@' - -%if %{with_emacsvim} -%{_emacs_bytecompile} emacs/systemtap-mode.el -%endif - %install make DESTDIR=$RPM_BUILD_ROOT install %find_lang systemtap @@ -684,10 +658,10 @@ mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/*.pdf docs.installed/ mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/tapsets docs.installed/ mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/SystemTap_Beginners_Guide docs.installed/ %endif +%endif -install -D -m 644 macros.systemtap $RPM_BUILD_ROOT%{_rpmmacrodir}/macros.systemtap +install -D -m 644 macros.systemtap $RPM_BUILD_ROOT%{_rpmmacrodir}/macros.%{?scl_prefix}systemtap -%endif mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/stap-server mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/stap-server mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/stap-server/.systemtap @@ -706,9 +680,8 @@ install -m 644 initscript/systemtap.service $RPM_BUILD_ROOT%{_unitdir}/systemtap mkdir -p $RPM_BUILD_ROOT%{_sbindir} install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{_sbindir}/systemtap-service %else -mkdir -p $RPM_BUILD_ROOT%{sysconfdir}/rc.d/init.d/ -install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{sysconfdir}/rc.d/init.d/%{?scl_prefix}systemtap -install -m 755 initscript/stap-server $RPM_BUILD_ROOT%{sysconfdir}/rc.d/init.d/%{?scl_prefix}stap-server +mkdir -p $RPM_BUILD_ROOT%{initdir} +install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{initdir}/%{?scl_prefix}systemtap mkdir -p $RPM_BUILD_ROOT%{_sbindir} ln -sf %{initdir}/systemtap $RPM_BUILD_ROOT%{_sbindir}/systemtap-service # TODO CHECK CORRECTNESS: symlink %{_sbindir}/systemtap-service to %{initdir}/systemtap @@ -771,8 +744,10 @@ done touch $RPM_BUILD_ROOT%{dracutstap}/params.conf %endif -%clean -rm -rf ${RPM_BUILD_ROOT} +%if %{with_specific_python} +# Some files got ambiguous python shebangs, we fix them after everything else is done +pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch} %{buildroot}%{_bindir}/* +%endif %pre runtime getent group stapusr >/dev/null || groupadd -f -g 156 -r stapusr @@ -786,6 +761,15 @@ 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 +%pre testsuite +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 +exit 0 + %post server # We have some duplication between the %files listings for the @@ -907,7 +891,9 @@ exit 0 /sbin/service stapshd start >/dev/null 2>&1 || : %endif exit 0 +%endif +%if %{with_virtguest} %preun runtime-virtguest # Stop service if this is an uninstall rather than an upgrade if [ $1 = 0 ]; then @@ -924,7 +910,9 @@ if [ $1 = 0 ]; then %endif fi exit 0 +%endif +%if %{with_virtguest} %postun runtime-virtguest # Restart service if this is an upgrade rather than an uninstall if [ "$1" -ge "1" ]; then @@ -942,6 +930,24 @@ fi exit 0 %endif +%if %{with_python3} +%if %{with_systemd} +%preun exporter +if [ $1 = 0 ] ; then + /bin/systemctl stop stap-exporter.service >/dev/null 2>&1 || : + /bin/systemctl disable stap-exporter.service >/dev/null 2>&1 || : +fi +exit 0 + +%postun exporter +# Restart service if this is an upgrade rather than an uninstall +if [ "$1" -ge "1" ]; then + /bin/systemctl condrestart stap-exporter >/dev/null 2>&1 || : +fi +exit 0 +%endif +%endif + %post # Remove any previously-built uprobes.ko materials (make -C %{_datadir}/systemtap/runtime/uprobes clean) >/dev/null 2>&1 || true @@ -1063,10 +1069,6 @@ done %dir %{_libexecdir}/systemtap %{_libexecdir}/systemtap/libHelperSDT_*.so %endif -%if %{with_bundled_elfutils} -%dir %{_libdir}/systemtap -%{_libdir}/systemtap/lib*.so* -%endif %if %{with_emacsvim} %{_emacs_sitelispdir}/*.el* %{_emacs_sitestartdir}/systemtap-init.el @@ -1077,7 +1079,7 @@ done # python script to help list python probes. %if %{with_python3_probes} || %{with_python2_probes} %{_libexecdir}/systemtap/python/stap-resolve-module-function.py -%exclude %{_libexecdir}/systemtap/python/stap-resolve-module-function.py? +%exclude %{_libexecdir}/systemtap/python/*/*.pyc %endif @@ -1119,10 +1121,11 @@ done %files client -f systemtap.lang %doc README README.unprivileged AUTHORS NEWS %{_datadir}/systemtap/examples +%exclude %{_datadir}/systemtap/examples/general/*/*.pyc %{!?_licensedir:%global license %%doc} %license COPYING -%if %{with_docs} %doc docs.installed/*.pdf +%if %{with_docs} %if %{with_htmldocs} %doc docs.installed/tapsets/*.html %doc docs.installed/SystemTap_Beginners_Guide @@ -1150,7 +1153,7 @@ done %{_unitdir}/systemtap.service %{_sbindir}/systemtap-service %else -%{sysconfdir}/rc.d/init.d/%{?scl_prefix}systemtap +%{initdir}/%{?scl_prefix}systemtap %{_sbindir}/systemtap-service %endif %dir %{_sysconfdir}/systemtap @@ -1166,11 +1169,12 @@ done %endif -%files sdt-devel -f systemtap.lang +%files sdt-devel %{_bindir}/dtrace %{_includedir}/sys/sdt.h %{_includedir}/sys/sdt-config.h %{_mandir}/man1/dtrace.1* +%{_rpmmacrodir}/macros.%{?scl_prefix}systemtap %doc README AUTHORS NEWS %{!?_licensedir:%global license %%doc} %license COPYING @@ -1196,8 +1200,9 @@ done %endif %if %{with_python3_probes} %files runtime-python3 -%{python3_sitearch}/HelperSDT -%{python3_sitearch}/HelperSDT-*.egg-info +# this should be _root_prefix but that's b0rked +%{SCLROOT}%{python3_sitearch}/HelperSDT +%{SCLROOT}%{python3_sitearch}/HelperSDT-*.egg-info %endif %if %{with_virthost} @@ -1220,6 +1225,15 @@ done %endif %endif +%if %{with_python3} +%files exporter +%{_sysconfdir}/stap-exporter +%{_sysconfdir}/sysconfig/stap-exporter +%{SCLROOT}%{_unitdir}/stap-exporter.service +%{_mandir}/man8/stap-exporter.8* +%{_sbindir}/stap-exporter +%endif + # ------------------------------------------------------------------------ # Future new-release entries should be of the form @@ -1229,6 +1243,21 @@ done # PRERELEASE %changelog +* Mon Jun 22 2020 Martin Cermak - 4.3-5 +- Fix file conflicts between x86_64 and i686 + +* Fri Jun 19 2020 Martin Cermak - 4.3-4 +- Avod conflicts with base rhel systemtap + +* Fri Jun 19 2020 Martin Cermak - 4.3-3 +- Fix gcc-toolset-10-systemtap-exporter Requires + +* Fri Jun 19 2020 Martin Cermak - 4.3-2 +- rhbz1848952: Fix a file conflict + +* Thu Jun 11 2020 Stan Cox - 4.3-1 +- rhbz1818419: Upstream release. + * Tue Jun 2 2020 Martin Cermak - 4.1-6 - n-v-r gating respin