Blame SPECS/systemtap.spec

dc0ed7
%global __python /usr/bin/python3
dc0ed7
%{?scl:%scl_package systemtap}
dc0ed7
%global sysconfdir %{?scl:%_root_sysconfdir}%{!?scl:%_sysconfdir}
dc0ed7
%global SCLROOT /opt/rh/gcc-toolset-10/root
dc0ed7
dc0ed7
%{!?with_sqlite: %global with_sqlite 0%{?fedora} >= 17 || 0%{?rhel} >= 7}
dc0ed7
# prefer prebuilt docs
dc0ed7
%{!?with_docs: %global with_docs 0}
dc0ed7
%{!?with_htmldocs: %global with_htmldocs 0}
dc0ed7
%{!?with_monitor: %global with_monitor 1}
dc0ed7
# crash is not available
dc0ed7
%ifarch ppc ppc64 %{sparc} %{mips}
dc0ed7
%{!?with_crash: %global with_crash 0}
dc0ed7
%else
dc0ed7
%{!?with_crash: %global with_crash 1}
dc0ed7
%endif
dc0ed7
%{!?with_rpm: %global with_rpm 1}
dc0ed7
%{!?elfutils_version: %global elfutils_version 0.142}
dc0ed7
%{!?pie_supported: %global pie_supported 1}
dc0ed7
%{!?with_boost: %global with_boost 0}
dc0ed7
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le aarch64
dc0ed7
%{!?with_dyninst: %global with_dyninst 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
dc0ed7
%else
dc0ed7
%{!?with_dyninst: %global with_dyninst 0}
dc0ed7
%endif
dc0ed7
%{!?with_bpf: %global with_bpf 0%{?fedora} >= 22 || 0%{?rhel} >= 8}
dc0ed7
%{!?with_systemd: %global with_systemd 0} # disable on DTS
dc0ed7
%{!?with_emacsvim: %global with_emacsvim 0} # disable on DTS
dc0ed7
%{!?with_java: %global with_java 0} # disable on DTS
dc0ed7
%{!?with_virthost: %global with_virthost 0} # disable on DTS
dc0ed7
%{!?with_virtguest: %global with_virtguest 0} # disable on DTS
dc0ed7
%{!?with_dracut: %global with_dracut 0%{?fedora} >= 19 || 0%{?rhel} >= 6}
dc0ed7
%ifarch x86_64
dc0ed7
%{!?with_mokutil: %global with_mokutil 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
dc0ed7
%{!?with_openssl: %global with_openssl 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
dc0ed7
%else
dc0ed7
%{!?with_mokutil: %global with_mokutil 0}
dc0ed7
%{!?with_openssl: %global with_openssl 0}
dc0ed7
%endif
dc0ed7
%{!?with_pyparsing: %global with_pyparsing 0%{?fedora} >= 18 || 0%{?rhel} >= 7}
dc0ed7
%{!?with_python3: %global with_python3 0%{?fedora} >= 23 || 0%{?rhel} > 7}
dc0ed7
%{!?with_python2_probes: %global with_python2_probes (0%{?fedora} <= 28 && 0%{?rhel} <= 7)}
dc0ed7
%{!?with_python3_probes: %global with_python3_probes (0%{?fedora} >= 23 || 0%{?rhel} > 7)}
dc0ed7
%{!?with_httpd: %global with_httpd 0}
dc0ed7
%{!?with_specific_python: %global with_specific_python 0%{?fedora} >= 31}
dc0ed7
dc0ed7
# Virt is supported on these arches, even on el7, but it's not in core EL7
dc0ed7
%if 0%{?rhel} <= 7
dc0ed7
%ifarch ppc64le aarch64
dc0ed7
%global with_virthost 0
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
dc0ed7
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 6
dc0ed7
   %define initdir %{sysconfdir}/rc.d/init.d
dc0ed7
# not scl-wrapped _initddir
dc0ed7
%else # RHEL5 doesn't know _initddir
dc0ed7
   %define initdir %{_initrddir}
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
   %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
dc0ed7
      %define udevrulesdir /usr/lib/udev/rules.d
dc0ed7
   %else
dc0ed7
      %if 0%{?rhel} >= 6
dc0ed7
         %define udevrulesdir /lib/udev/rules.d
dc0ed7
      %else # RHEL5
dc0ed7
         %define udevrulesdir /etc/udev/rules.d
dc0ed7
      %endif
dc0ed7
   %endif
dc0ed7
%endif
dc0ed7
dc0ed7
# note not under /opt/rh... SCL special
dc0ed7
%define dracutlibdir %{_root_prefix}/lib/dracut
dc0ed7
%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
dc0ed7
    %define dracutstap %{_prefix}/lib/dracut/modules.d/99%{?scl_prefix}stap
dc0ed7
%else
dc0ed7
    %define dracutstap %{_prefix}/share/dracut/modules.d/99%{?scl_prefix}stap
dc0ed7
%endif
dc0ed7
dc0ed7
%if 0%{?rhel} == 6 || 0%{?rhel} == 7
dc0ed7
    %define dracutbindir ${_prefix}/sbin
dc0ed7
%else
dc0ed7
    %define dracutbindir ${_prefix}/%{_bindir}
dc0ed7
%endif
dc0ed7
dc0ed7
%if 0%{?rhel} == 6
dc0ed7
    %{!?_rpmmacrodir: %define _rpmmacrodir /etc/rpm/}
dc0ed7
%else
dc0ed7
    %{!?_rpmmacrodir: %define _rpmmacrodir %{_rpmconfigdir}/macros.d}
dc0ed7
%endif
dc0ed7
dc0ed7
# To avoid testsuite/*/*.stp has shebang which doesn't start with '/'
dc0ed7
%define __brp_mangle_shebangs_exclude_from .stp$
dc0ed7
dc0ed7
Name: %{?scl_prefix}systemtap
dc0ed7
Version: 4.3
dc0ed7
Release: 5%{?dist}
dc0ed7
# for version, see also configure.ac
dc0ed7
dc0ed7
dc0ed7
# Packaging abstract:
dc0ed7
#
dc0ed7
# systemtap              empty req:-client req:-devel
dc0ed7
# systemtap-server       /usr/bin/stap-server*, req:-devel
dc0ed7
# systemtap-devel        /usr/bin/stap, runtime, tapset, req:kernel-devel
dc0ed7
# systemtap-runtime      /usr/bin/staprun, /usr/bin/stapsh, /usr/bin/stapdyn
dc0ed7
# systemtap-client       /usr/bin/stap, samples, docs, tapset(bonus), req:-runtime
dc0ed7
# systemtap-initscript   /etc/init.d/systemtap, dracut module, req:systemtap
dc0ed7
# systemtap-sdt-devel    /usr/include/sys/sdt.h /usr/bin/dtrace
dc0ed7
# systemtap-testsuite    /usr/share/systemtap/testsuite*, req:systemtap, req:sdt-devel
dc0ed7
# systemtap-runtime-java libHelperSDT.so, HelperSDT.jar, stapbm, req:-runtime
dc0ed7
# systemtap-runtime-virthost  /usr/bin/stapvirt, req:libvirt req:libxml2
dc0ed7
# systemtap-runtime-virtguest udev rules, init scripts/systemd service, req:-runtime
dc0ed7
# systemtap-runtime-python2 HelperSDT python2 module, req:-runtime
dc0ed7
# systemtap-runtime-python3 HelperSDT python3 module, req:-runtime
dc0ed7
#
dc0ed7
# Typical scenarios:
dc0ed7
#
dc0ed7
# stap-client:           systemtap-client
dc0ed7
# stap-server:           systemtap-server
dc0ed7
# local user:            systemtap
dc0ed7
#
dc0ed7
# Unusual scenarios:
dc0ed7
#
dc0ed7
# intermediary stap-client for --remote:       systemtap-client (-runtime unused)
dc0ed7
# intermediary stap-server for --use-server:   systemtap-server (-devel unused)
dc0ed7
dc0ed7
Summary: Programmable system-wide instrumentation system
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Source: ftp://sourceware.org/pub/systemtap/releases/systemtap-%{version}.tar.gz
dc0ed7
dc0ed7
dc0ed7
# Build*
dc0ed7
BuildRequires: gcc-c++
dc0ed7
BuildRequires: cpio
dc0ed7
BuildRequires: gettext-devel
dc0ed7
BuildRequires: pkgconfig(nss)
dc0ed7
BuildRequires: pkgconfig(avahi-client)
dc0ed7
%if %{with_dyninst}
dc0ed7
BuildRequires: %{?scl_prefix}dyninst-devel >= 10.0
dc0ed7
BuildRequires: pkgconfig(libselinux)
dc0ed7
%endif
dc0ed7
%if %{with_sqlite}
dc0ed7
BuildRequires: sqlite-devel > 3.7
dc0ed7
%endif
dc0ed7
%if %{with_monitor}
dc0ed7
BuildRequires: pkgconfig(json-c)
dc0ed7
BuildRequires: pkgconfig(ncurses)
dc0ed7
%endif
dc0ed7
%if %{with_systemd}
dc0ed7
BuildRequires: systemd
dc0ed7
%endif
dc0ed7
# Needed for libstd++ < 4.0, without <tr1 memory="">
dc0ed7
%if %{with_boost}
dc0ed7
BuildRequires: boost-devel
dc0ed7
%endif
dc0ed7
%if %{with_crash}
dc0ed7
BuildRequires: crash-devel zlib-devel
dc0ed7
%endif
dc0ed7
%if %{with_rpm}
dc0ed7
BuildRequires: rpm-devel
dc0ed7
%endif
dc0ed7
BuildRequires: elfutils-devel >= %{elfutils_version}
dc0ed7
%if %{with_docs}
dc0ed7
BuildRequires: /usr/bin/latex /usr/bin/dvips /usr/bin/ps2pdf
dc0ed7
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
dc0ed7
BuildRequires: tex(fullpage.sty) tex(fancybox.sty) tex(bchr7t.tfm) tex(graphicx.sty)
dc0ed7
%endif
dc0ed7
# For the html.sty mentioned in the .tex files, even though latex2html is
dc0ed7
# not run during the build, only during manual scripts/update-docs runs:
dc0ed7
BuildRequires: latex2html
dc0ed7
%if %{with_htmldocs}
dc0ed7
# On F10, xmlto's pdf support was broken off into a sub-package,
dc0ed7
# called 'xmlto-tex'.  To avoid a specific F10 BuildReq, we'll do a
dc0ed7
# file-based buildreq on '/usr/share/xmlto/format/fo/pdf'.
dc0ed7
BuildRequires: xmlto /usr/share/xmlto/format/fo/pdf
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
%{?scl:Requires:%scl_runtime}
dc0ed7
%if %{with_emacsvim}
dc0ed7
BuildRequires: emacs
dc0ed7
%endif
dc0ed7
%if %{with_java}
dc0ed7
BuildRequires: jpackage-utils java-devel
dc0ed7
%endif
dc0ed7
%if %{with_virthost}
dc0ed7
# BuildRequires: libvirt-devel >= 1.0.2
dc0ed7
BuildRequires: pkgconfig(libvirt)
dc0ed7
BuildRequires: pkgconfig(libxml-2.0)
dc0ed7
%endif
dc0ed7
BuildRequires: readline-devel
dc0ed7
%if 0%{?rhel} <= 5
dc0ed7
BuildRequires: pkgconfig(ncurses)
dc0ed7
%endif
dc0ed7
%if %{with_python2_probes}
dc0ed7
BuildRequires: python2-devel
dc0ed7
%if 0%{?fedora} >= 1
dc0ed7
BuildRequires: python2-setuptools
dc0ed7
%else
dc0ed7
BuildRequires: python-setuptools
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
%if %{with_python3_probes}
dc0ed7
BuildRequires: python3-devel
dc0ed7
BuildRequires: python3-setuptools
dc0ed7
%endif
dc0ed7
%if %{with_specific_python}
dc0ed7
BuildRequires: /usr/bin/pathfix.py
dc0ed7
%endif
dc0ed7
dc0ed7
dc0ed7
%if %{with_httpd}
dc0ed7
BuildRequires: libmicrohttpd-devel
dc0ed7
BuildRequires: libuuid-devel
dc0ed7
%endif
dc0ed7
dc0ed7
# Install requirements
dc0ed7
Requires: %{?scl_prefix}systemtap-client = %{version}-%{release}
dc0ed7
Requires: %{?scl_prefix}systemtap-devel = %{version}-%{release}
dc0ed7
dc0ed7
%description
dc0ed7
SystemTap is an instrumentation system for systems running Linux.
dc0ed7
Developers can write instrumentation scripts to collect data on
dc0ed7
the operation of the system.  The base systemtap package contains/requires
dc0ed7
the components needed to locally develop and execute systemtap scripts.
dc0ed7
dc0ed7
# ------------------------------------------------------------------------
dc0ed7
dc0ed7
%package server
dc0ed7
Summary: Instrumentation System Server
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-devel = %{version}-%{release}
dc0ed7
Requires: nss coreutils
dc0ed7
Requires: zip unzip
dc0ed7
Requires(pre): shadow-utils
dc0ed7
BuildRequires: nss-devel avahi-devel
dc0ed7
%if %{with_openssl}
dc0ed7
Requires: openssl
dc0ed7
%endif
dc0ed7
%if %{with_systemd}
dc0ed7
Requires: systemd
dc0ed7
%else
dc0ed7
Requires(post): chkconfig
dc0ed7
Requires(preun): chkconfig
dc0ed7
Requires(preun): initscripts
dc0ed7
Requires(postun): initscripts
dc0ed7
%endif
dc0ed7
dc0ed7
%description server
dc0ed7
This is the remote script compilation server component of systemtap.
dc0ed7
It announces itself to nearby clients with avahi (if available), and
dc0ed7
compiles systemtap scripts to kernel objects on their demand.
dc0ed7
dc0ed7
dc0ed7
%package devel
dc0ed7
Summary: Programmable system-wide instrumentation system - development headers, tools
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
dc0ed7
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
dc0ed7
Recommends: (kernel-debug-devel if kernel-debug)
dc0ed7
Recommends: (kernel-devel if kernel)
dc0ed7
%else
dc0ed7
Requires: kernel-devel-uname-r
dc0ed7
%endif
dc0ed7
dc0ed7
Requires: /usr/bin/gcc /usr/bin/make
dc0ed7
# Suggest: kernel-debuginfo
dc0ed7
dc0ed7
%description devel
dc0ed7
This package contains the components needed to compile a systemtap
dc0ed7
script from source form into executable (.ko) forms.  It may be
dc0ed7
installed on a self-contained developer workstation (along with the
dc0ed7
systemtap-client and systemtap-runtime packages), or on a dedicated
dc0ed7
remote server (alongside the systemtap-server package).  It includes
dc0ed7
a copy of the standard tapset library and the runtime library C files.
dc0ed7
dc0ed7
dc0ed7
%package runtime
dc0ed7
Summary: Programmable system-wide instrumentation system - runtime
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires(pre): shadow-utils
dc0ed7
dc0ed7
%description runtime
dc0ed7
SystemTap runtime contains the components needed to execute
dc0ed7
a systemtap script that was already compiled into a module
dc0ed7
using a local or remote systemtap-devel installation.
dc0ed7
dc0ed7
dc0ed7
%package client
dc0ed7
Summary: Programmable system-wide instrumentation system - client
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: zip unzip
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
Requires: coreutils grep sed unzip zip
dc0ed7
Requires: openssh-clients
dc0ed7
%if %{with_mokutil}
dc0ed7
Requires: mokutil
dc0ed7
%endif
dc0ed7
dc0ed7
%description client
dc0ed7
This package contains/requires the components needed to develop
dc0ed7
systemtap scripts, and compile them using a local systemtap-devel
dc0ed7
or a remote systemtap-server installation, then run them using a
dc0ed7
local or remote systemtap-runtime.  It includes script samples and
dc0ed7
documentation, and a copy of the tapset library for reference.
dc0ed7
dc0ed7
dc0ed7
%package initscript
dc0ed7
Summary: Systemtap Initscripts
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap = %{version}-%{release}
dc0ed7
%if %{with_systemd}
dc0ed7
Requires: systemd
dc0ed7
%else
dc0ed7
Requires(post): chkconfig
dc0ed7
Requires(preun): chkconfig
dc0ed7
Requires(preun): initscripts
dc0ed7
Requires(postun): initscripts
dc0ed7
%endif
dc0ed7
dc0ed7
%description initscript
dc0ed7
This package includes a SysVinit script to launch selected systemtap
dc0ed7
scripts at system startup, along with a dracut module for early
dc0ed7
boot-time probing if supported.
dc0ed7
dc0ed7
dc0ed7
%package sdt-devel
dc0ed7
Summary: Static probe support tools
dc0ed7
License: GPLv2+ and Public Domain
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
%if %{with_pyparsing}
dc0ed7
%if %{with_python3}
dc0ed7
Requires: python3-pyparsing
dc0ed7
%else
dc0ed7
%if 0%{?rhel} >= 7
dc0ed7
Requires: pyparsing
dc0ed7
%else
dc0ed7
Requires: python2-pyparsing
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
dc0ed7
%description sdt-devel
dc0ed7
This package includes the <sys sdt.h=""> header file used for static
dc0ed7
instrumentation compiled into userspace programs and libraries, along
dc0ed7
with the optional dtrace-compatibility preprocessor to process related
dc0ed7
.d files into tracing-macro-laden .h headers.
dc0ed7
dc0ed7
dc0ed7
%package testsuite
dc0ed7
Summary: Instrumentation System Testsuite
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap = %{version}-%{release}
dc0ed7
Requires: %{?scl_prefix}systemtap-sdt-devel = %{version}-%{release}
dc0ed7
Requires: %{?scl_prefix}systemtap-server = %{version}-%{release}
dc0ed7
Requires: %{?scl_prefix}elfutils
dc0ed7
Requires: dejagnu which grep nc
dc0ed7
Requires: gcc gcc-c++ make glibc-devel
dc0ed7
# testsuite/systemtap.base/ptrace.exp needs strace
dc0ed7
Requires: strace
dc0ed7
# testsuite/systemtap.base/ipaddr.exp needs nc. Unfortunately, the rpm
dc0ed7
# that provides nc has changed over time (from 'nc' to
dc0ed7
# 'nmap-ncat'). So, we'll do a file-based require.
dc0ed7
Requires: /usr/bin/nc
dc0ed7
%ifnarch ia64 ppc64le aarch64
dc0ed7
%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8
dc0ed7
# no prelink
dc0ed7
%else
dc0ed7
Requires: prelink
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
# testsuite/systemtap.server/client.exp needs avahi
dc0ed7
Requires: avahi
dc0ed7
%if %{with_crash}
dc0ed7
# testsuite/systemtap.base/crash.exp needs crash
dc0ed7
Requires: crash
dc0ed7
%endif
dc0ed7
%if %{with_java}
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime-java = %{version}-%{release}
dc0ed7
%endif
dc0ed7
%if %{with_python2_probes}
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime-python2 = %{version}-%{release}
dc0ed7
%endif
dc0ed7
%if %{with_python3_probes}
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime-python3 = %{version}-%{release}
dc0ed7
%endif
dc0ed7
%ifarch x86_64
dc0ed7
Requires: /usr/lib/libc.so
dc0ed7
# ... and /usr/lib/libgcc_s.so.*
dc0ed7
# ... and /usr/lib/libstdc++.so.*
dc0ed7
%endif
dc0ed7
%if 0%{?fedora} >= 18
dc0ed7
Requires: stress
dc0ed7
%endif
dc0ed7
# The following "meta" files for the systemtap examples run "perf":
dc0ed7
#   testsuite/systemtap.examples/hw_watch_addr.meta
dc0ed7
#   testsuite/systemtap.examples/memory/hw_watch_sym.meta
dc0ed7
Requires: perf
dc0ed7
dc0ed7
%description testsuite
dc0ed7
This package includes the dejagnu-based systemtap stress self-testing
dc0ed7
suite.  This may be used by system administrators to thoroughly check
dc0ed7
systemtap on the current system.
dc0ed7
dc0ed7
dc0ed7
%if %{with_java}
dc0ed7
%package runtime-java
dc0ed7
Summary: Systemtap Java Runtime Support
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
Requires: byteman > 2.0
dc0ed7
Requires: iproute
dc0ed7
Requires: java-devel
dc0ed7
dc0ed7
%description runtime-java
dc0ed7
This package includes support files needed to run systemtap scripts
dc0ed7
that probe Java processes running on the OpenJDK runtimes using Byteman.
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python2_probes}
dc0ed7
%package runtime-python2
dc0ed7
Summary: Systemtap Python 2 Runtime Support
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
dc0ed7
%description runtime-python2
dc0ed7
This package includes support files needed to run systemtap scripts
dc0ed7
that probe python 2 processes.
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python3_probes}
dc0ed7
%package runtime-python3
dc0ed7
Summary: Systemtap Python 3 Runtime Support
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
dc0ed7
%if ! (%{with_python2_probes})
dc0ed7
# Provide an clean upgrade path when the python2 package is removed
dc0ed7
Obsoletes: %{name}-runtime-python2 < %{version}-%{release}
dc0ed7
%endif
dc0ed7
dc0ed7
%description runtime-python3
dc0ed7
This package includes support files needed to run systemtap scripts
dc0ed7
that probe python 3 processes.
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python3}
dc0ed7
%package exporter
dc0ed7
Summary: Systemtap-prometheus interoperation mechanism
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
dc0ed7
%description exporter
dc0ed7
This package includes files for a systemd service that manages
dc0ed7
systemtap sessions and relays prometheus metrics from the sessions
dc0ed7
to remote requesters on demand.
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virthost}
dc0ed7
%package runtime-virthost
dc0ed7
Summary: Systemtap Cross-VM Instrumentation - host
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: libvirt >= 1.0.2
dc0ed7
Requires: libxml2
dc0ed7
dc0ed7
%description runtime-virthost
dc0ed7
This package includes the components required to run systemtap scripts
dc0ed7
inside a libvirt-managed domain from the host without using a network
dc0ed7
connection.
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
%package runtime-virtguest
dc0ed7
Summary: Systemtap Cross-VM Instrumentation - guest
dc0ed7
License: GPLv2+
dc0ed7
URL: http://sourceware.org/systemtap/
dc0ed7
Requires: %{?scl_prefix}systemtap-runtime = %{version}-%{release}
dc0ed7
%if %{with_systemd}
dc0ed7
Requires(post): findutils coreutils
dc0ed7
Requires(preun): grep coreutils
dc0ed7
Requires(postun): grep coreutils
dc0ed7
%else
dc0ed7
Requires(post): chkconfig initscripts
dc0ed7
Requires(preun): chkconfig initscripts
dc0ed7
Requires(postun): initscripts
dc0ed7
%endif
dc0ed7
dc0ed7
%description runtime-virtguest
dc0ed7
This package installs the services necessary on a virtual machine for a
dc0ed7
systemtap-runtime-virthost machine to execute systemtap scripts.
dc0ed7
%endif
dc0ed7
dc0ed7
# ------------------------------------------------------------------------
dc0ed7
dc0ed7
%prep
dc0ed7
%setup -q -n systemtap-%{version}
dc0ed7
dc0ed7
%build
dc0ed7
dc0ed7
# Enable/disable the dyninst pure-userspace backend
dc0ed7
%if %{with_dyninst}
dc0ed7
%global dyninst_config --with-dyninst
dc0ed7
%else
dc0ed7
%global dyninst_config --without-dyninst
dc0ed7
%endif
dc0ed7
dc0ed7
# Enable/disable the sqlite coverage testing support
dc0ed7
%if %{with_sqlite}
dc0ed7
%global sqlite_config --enable-sqlite
dc0ed7
%else
dc0ed7
%global sqlite_config --disable-sqlite
dc0ed7
%endif
dc0ed7
dc0ed7
# Enable/disable the crash extension
dc0ed7
%if %{with_crash}
dc0ed7
%global crash_config --enable-crash
dc0ed7
%else
dc0ed7
%global crash_config --disable-crash
dc0ed7
%endif
dc0ed7
dc0ed7
# Enable/disable the code to find and suggest needed rpms
dc0ed7
%if %{with_rpm}
dc0ed7
%global rpm_config --with-rpm
dc0ed7
%else
dc0ed7
%global rpm_config --without-rpm
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_docs}
dc0ed7
%if %{with_htmldocs}
dc0ed7
%global docs_config --enable-docs --enable-htmldocs
dc0ed7
%else
dc0ed7
%global docs_config --enable-docs --disable-htmldocs
dc0ed7
%endif
dc0ed7
%else
dc0ed7
%global docs_config --enable-docs=prebuilt
dc0ed7
%endif
dc0ed7
dc0ed7
# Enable pie as configure defaults to disabling it
dc0ed7
%if %{pie_supported}
dc0ed7
%global pie_config --enable-pie
dc0ed7
%else
dc0ed7
%global pie_config --disable-pie
dc0ed7
%endif
dc0ed7
dc0ed7
dc0ed7
%if %{with_java}
dc0ed7
%global java_config --with-java=%{_jvmdir}/java
dc0ed7
%else
dc0ed7
%global java_config --without-java
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python3}
dc0ed7
%global python3_config --with-python3
dc0ed7
%else
dc0ed7
%global python3_config --without-python3
dc0ed7
%endif
dc0ed7
%if %{with_python2_probes}
dc0ed7
%global python2_probes_config --with-python2-probes
dc0ed7
%else
dc0ed7
%global python2_probes_config --without-python2-probes
dc0ed7
%endif
dc0ed7
%if %{with_python3_probes}
dc0ed7
%global python3_probes_config --with-python3-probes
dc0ed7
%else
dc0ed7
%global python3_probes_config --without-python3-probes
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virthost}
dc0ed7
%global virt_config --enable-virt
dc0ed7
%else
dc0ed7
%global virt_config --disable-virt
dc0ed7
%endif
dc0ed7
dc0ed7
#CPPFLAGS="-I%{_includedir}/dyninst %{optflags}"
dc0ed7
CPPFLAGS="-I%{_includedir} -I%{_includedir}/dyninst %{optflags}"
dc0ed7
export CPPFLAGS
dc0ed7
#LDFLAGS="-L%{_libdir}/dyninst"
dc0ed7
#
dc0ed7
# -rpath-link needed because new dts dyninst doesn't get its shlibs into the ld.so.cache
dc0ed7
# directories, so ld doesn't find them.
dc0ed7
LDFLAGS="-L%{_libdir} -Wl,-rpath-link,%{_libdir}/dyninst -L%{_libdir}/dyninst -L%{_libdir}/elfutils"
dc0ed7
export LDFLAGS
dc0ed7
dc0ed7
%if %{with_dracut}
dc0ed7
%global dracut_config --with-dracutstap=%{dracutstap} --with-dracutbindir=%{dracutbindir}
dc0ed7
%else
dc0ed7
%global dracut_config %{nil}
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_httpd}
dc0ed7
%global httpd_config --enable-httpd
dc0ed7
%else
dc0ed7
%global httpd_config --disable-httpd
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_bpf}
dc0ed7
%global bpf_config --with-bpf
dc0ed7
%else
dc0ed7
%global bpf_config --without-bpf
dc0ed7
%endif
dc0ed7
dc0ed7
# We don't ship compileworthy python code, just oddball samples
dc0ed7
%global py_auto_byte_compile 0
dc0ed7
dc0ed7
%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}"
dc0ed7
make %{?_smp_mflags}
dc0ed7
dc0ed7
%install
dc0ed7
make DESTDIR=$RPM_BUILD_ROOT install
dc0ed7
%find_lang systemtap
dc0ed7
for dir in $(ls -1d $RPM_BUILD_ROOT%{_mandir}/{??,??_??}) ; do
dc0ed7
    dir=$(echo $dir | sed -e "s|^$RPM_BUILD_ROOT||")
dc0ed7
    lang=$(basename $dir)
dc0ed7
    echo "%%lang($lang) $dir/man*/*" >> systemtap.lang
dc0ed7
done
dc0ed7
dc0ed7
ln -s %{_datadir}/systemtap/examples
dc0ed7
dc0ed7
# Fix paths in the example scripts.
dc0ed7
find $RPM_BUILD_ROOT%{_datadir}/systemtap/examples -type f -name '*.stp' -print0 | xargs -0 sed -i -r -e '1s@^#!.+stap@#!%{_bindir}/stap@'
dc0ed7
dc0ed7
# To make rpmlint happy, remove any .gitignore files in the testsuite.
dc0ed7
find testsuite -type f -name '.gitignore' -print0 | xargs -0 rm -f
dc0ed7
dc0ed7
# Because "make install" may install staprun with whatever mode, the
dc0ed7
# post-processing programs rpmbuild runs won't be able to read it.
dc0ed7
# So, we change permissions so that they can read it.  We'll set the
dc0ed7
# permissions back to 04110 in the %files section below.
dc0ed7
chmod 755 $RPM_BUILD_ROOT%{_bindir}/staprun
dc0ed7
dc0ed7
#install the useful stap-prep script
dc0ed7
install -c -m 755 stap-prep $RPM_BUILD_ROOT%{_bindir}/stap-prep
dc0ed7
dc0ed7
# Copy over the testsuite
dc0ed7
cp -rp testsuite $RPM_BUILD_ROOT%{_datadir}/systemtap
dc0ed7
dc0ed7
# We want the manuals in the special doc dir, not the generic doc install dir.
dc0ed7
# We build it in place and then move it away so it doesn't get installed
dc0ed7
# twice. rpm can specify itself where the (versioned) docs go with the
dc0ed7
# %doc directive.
dc0ed7
mkdir docs.installed
dc0ed7
mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/*.pdf docs.installed/
dc0ed7
%if %{with_docs}
dc0ed7
%if %{with_htmldocs}
dc0ed7
mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/tapsets docs.installed/
dc0ed7
mv $RPM_BUILD_ROOT%{_datadir}/doc/systemtap/SystemTap_Beginners_Guide docs.installed/
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
dc0ed7
install -D -m 644 macros.systemtap $RPM_BUILD_ROOT%{_rpmmacrodir}/macros.%{?scl_prefix}systemtap
dc0ed7
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/stap-server
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/stap-server
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/stap-server/.systemtap
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/stap-server
dc0ed7
touch $RPM_BUILD_ROOT%{_localstatedir}/log/stap-server/log
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/systemtap
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/systemtap
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
dc0ed7
install -m 644 initscript/logrotate.stap-server $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/stap-server
dc0ed7
dc0ed7
# If using systemd systemtap.service file, retain the old init script in %{_libexecdir} as a helper.
dc0ed7
%if %{with_systemd}
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
dc0ed7
touch $RPM_BUILD_ROOT%{_unitdir}/systemtap.service
dc0ed7
install -m 644 initscript/systemtap.service $RPM_BUILD_ROOT%{_unitdir}/systemtap.service
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
dc0ed7
install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{_sbindir}/systemtap-service
dc0ed7
%else
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{initdir}
dc0ed7
install -m 755 initscript/systemtap $RPM_BUILD_ROOT%{initdir}/%{?scl_prefix}systemtap
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
dc0ed7
ln -sf %{initdir}/systemtap $RPM_BUILD_ROOT%{_sbindir}/systemtap-service
dc0ed7
# TODO CHECK CORRECTNESS: symlink %{_sbindir}/systemtap-service to %{initdir}/systemtap
dc0ed7
%endif
dc0ed7
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/systemtap
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/conf.d
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/script.d
dc0ed7
install -m 644 initscript/config.systemtap $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/config
dc0ed7
dc0ed7
%if %{with_systemd}
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
dc0ed7
touch $RPM_BUILD_ROOT%{_unitdir}/stap-server.service
dc0ed7
install -m 644 stap-server.service $RPM_BUILD_ROOT%{_unitdir}/stap-server.service
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_tmpfilesdir}
dc0ed7
install -m 644 stap-server.conf $RPM_BUILD_ROOT%{_tmpfilesdir}/stap-server.conf
dc0ed7
%else
dc0ed7
install -m 755 initscript/stap-server $RPM_BUILD_ROOT%{initdir}/%{?scl_prefix}stap-server
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/stap-server/conf.d
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
dc0ed7
install -m 644 initscript/config.stap-server $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/stap-server
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_emacsvim}
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_emacs_sitelispdir}
dc0ed7
install -p -m 644 emacs/systemtap-mode.el* $RPM_BUILD_ROOT%{_emacs_sitelispdir}
dc0ed7
mkdir -p $RPM_BUILD_ROOT%{_emacs_sitestartdir}
dc0ed7
install -p -m 644 emacs/systemtap-init.el $RPM_BUILD_ROOT%{_emacs_sitestartdir}/systemtap-init.el
dc0ed7
for subdir in ftdetect ftplugin indent syntax
dc0ed7
do
dc0ed7
    mkdir -p $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/$subdir
dc0ed7
    install -p -m 644 vim/$subdir/*.vim $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/$subdir
dc0ed7
done
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
   mkdir -p $RPM_BUILD_ROOT%{udevrulesdir}
dc0ed7
   %if %{with_systemd}
dc0ed7
      install -p -m 644 staprun/guest/99-stapsh.rules $RPM_BUILD_ROOT%{udevrulesdir}
dc0ed7
      mkdir -p $RPM_BUILD_ROOT%{_unitdir}
dc0ed7
      install -p -m 644 staprun/guest/stapsh@.service $RPM_BUILD_ROOT%{_unitdir}
dc0ed7
   %else
dc0ed7
      install -p -m 644 staprun/guest/99-stapsh-init.rules $RPM_BUILD_ROOT%{udevrulesdir}
dc0ed7
      install -p -m 755 staprun/guest/stapshd $RPM_BUILD_ROOT%{initdir}
dc0ed7
      mkdir -p $RPM_BUILD_ROOT%{_libexecdir}/systemtap
dc0ed7
      install -p -m 755 staprun/guest/stapsh-daemon $RPM_BUILD_ROOT%{_libexecdir}/systemtap
dc0ed7
      mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules
dc0ed7
      # Technically, this is only needed for RHEL5, in which the MODULE_ALIAS is missing, but
dc0ed7
      # it does no harm in RHEL6 as well
dc0ed7
      install -p -m 755 staprun/guest/virtio_console.modules $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules
dc0ed7
   %endif
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_dracut}
dc0ed7
   mkdir -p $RPM_BUILD_ROOT%{dracutstap}
dc0ed7
   install -p -m 755 initscript/99stap/module-setup.sh $RPM_BUILD_ROOT%{dracutstap}
dc0ed7
   install -p -m 755 initscript/99stap/install $RPM_BUILD_ROOT%{dracutstap}
dc0ed7
   install -p -m 755 initscript/99stap/check $RPM_BUILD_ROOT%{dracutstap}
dc0ed7
   install -p -m 755 initscript/99stap/start-staprun.sh $RPM_BUILD_ROOT%{dracutstap}
dc0ed7
   touch $RPM_BUILD_ROOT%{dracutstap}/params.conf
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_specific_python}
dc0ed7
# Some files got ambiguous python shebangs, we fix them after everything else is done
dc0ed7
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch} %{buildroot}%{_bindir}/*
dc0ed7
%endif
dc0ed7
dc0ed7
%pre runtime
dc0ed7
getent group stapusr >/dev/null || groupadd -f -g 156 -r stapusr
dc0ed7
getent group stapsys >/dev/null || groupadd -f -g 157 -r stapsys
dc0ed7
getent group stapdev >/dev/null || groupadd -f -g 158 -r stapdev
dc0ed7
exit 0
dc0ed7
dc0ed7
%pre server
dc0ed7
getent group stap-server >/dev/null || groupadd -f -g 155 -r stap-server
dc0ed7
getent passwd stap-server >/dev/null || \
dc0ed7
  useradd -c "Systemtap Compile Server" -u 155 -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server 2>/dev/null || \
dc0ed7
  useradd -c "Systemtap Compile Server" -g stap-server -d %{_localstatedir}/lib/stap-server -r -s /sbin/nologin stap-server
dc0ed7
dc0ed7
%pre testsuite
dc0ed7
getent passwd stapusr >/dev/null || \
dc0ed7
    useradd -c "Systemtap 'stapusr' User" -g stapusr -r -s /sbin/nologin stapusr
dc0ed7
getent passwd stapsys >/dev/null || \
dc0ed7
    useradd -c "Systemtap 'stapsys' User" -g stapsys -G stapusr -r -s /sbin/nologin stapsys
dc0ed7
getent passwd stapdev >/dev/null || \
dc0ed7
    useradd -c "Systemtap 'stapdev' User" -g stapdev -G stapusr -r -s /sbin/nologin stapdev
dc0ed7
exit 0
dc0ed7
dc0ed7
%post server
dc0ed7
dc0ed7
# We have some duplication between the %files listings for the
dc0ed7
# ~stap-server directories and the explicit mkdir/chown/chmod bits
dc0ed7
# here.  Part of the reason may be that a preexisting stap-server
dc0ed7
# account may well be placed somewhere other than
dc0ed7
# %{_localstatedir}/lib/stap-server, but we'd like their permissions
dc0ed7
# set similarly.
dc0ed7
dc0ed7
test -e ~stap-server && chmod 750 ~stap-server
dc0ed7
dc0ed7
if [ ! -f ~stap-server/.systemtap/rc ]; then
dc0ed7
  mkdir -p ~stap-server/.systemtap
dc0ed7
  chown stap-server:stap-server ~stap-server/.systemtap
dc0ed7
  # PR16276: guess at a reasonable number for a default --rlimit-nproc
dc0ed7
  numcpu=`/usr/bin/getconf _NPROCESSORS_ONLN`
dc0ed7
  if [ -z "$numcpu" -o "$numcpu" -lt 1 ]; then numcpu=1; fi
dc0ed7
  nproc=`expr $numcpu \* 30`
dc0ed7
  echo "--rlimit-as=614400000 --rlimit-cpu=60 --rlimit-nproc=$nproc --rlimit-stack=1024000 --rlimit-fsize=51200000" > ~stap-server/.systemtap/rc
dc0ed7
  chown stap-server:stap-server ~stap-server/.systemtap/rc
dc0ed7
fi
dc0ed7
dc0ed7
test -e %{_localstatedir}/log/stap-server/log || {
dc0ed7
     touch %{_localstatedir}/log/stap-server/log
dc0ed7
     chmod 644 %{_localstatedir}/log/stap-server/log
dc0ed7
     chown stap-server:stap-server %{_localstatedir}/log/stap-server/log
dc0ed7
}
dc0ed7
# Prepare the service
dc0ed7
%if %{with_systemd}
dc0ed7
     # Note, Fedora policy doesn't allow network services enabled by default
dc0ed7
     # /bin/systemctl enable stap-server.service >/dev/null 2>&1 || :
dc0ed7
     /bin/systemd-tmpfiles --create %{_tmpfilesdir}/stap-server.conf >/dev/null 2>&1 || :
dc0ed7
%else
dc0ed7
    /sbin/chkconfig --add %{?scl_prefix}stap-server
dc0ed7
%endif
dc0ed7
exit 0
dc0ed7
dc0ed7
%triggerin client -- systemtap-server
dc0ed7
if test -e ~stap-server/.systemtap/ssl/server/stap.cert; then
dc0ed7
   # echo Authorizing ssl-peer/trusted-signer certificate for local systemtap-server
dc0ed7
   %{_libexecdir}/systemtap/stap-authorize-cert ~stap-server/.systemtap/ssl/server/stap.cert %{_sysconfdir}/systemtap/ssl/client >/dev/null
dc0ed7
   %{_libexecdir}/systemtap/stap-authorize-cert ~stap-server/.systemtap/ssl/server/stap.cert %{_sysconfdir}/systemtap/staprun >/dev/null
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
# XXX: corresponding %triggerun?
dc0ed7
dc0ed7
%preun server
dc0ed7
# Check that this is the actual deinstallation of the package, as opposed to
dc0ed7
# just removing the old package on upgrade.
dc0ed7
if [ $1 = 0 ] ; then
dc0ed7
    %if %{with_systemd}
dc0ed7
       /bin/systemctl --no-reload disable stap-server.service >/dev/null 2>&1 || :
dc0ed7
       /bin/systemctl stop stap-server.service >/dev/null 2>&1 || :
dc0ed7
    %else
dc0ed7
        /sbin/service %{?scl_prefix}stap-server stop >/dev/null 2>&1
dc0ed7
        /sbin/chkconfig --del %{?scl_prefix}stap-server
dc0ed7
    %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
dc0ed7
%postun server
dc0ed7
# Check whether this is an upgrade of the package.
dc0ed7
# If so, restart the service if it's running
dc0ed7
if [ "$1" -ge "1" ] ; then
dc0ed7
    %if %{with_systemd}
dc0ed7
        /bin/systemctl condrestart stap-server.service >/dev/null 2>&1 || :
dc0ed7
    %else
dc0ed7
        /sbin/service %{?scl_prefix}stap-server condrestart >/dev/null 2>&1 || :
dc0ed7
    %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
dc0ed7
%post initscript
dc0ed7
%if %{with_systemd}
dc0ed7
    /bin/systemctl enable systemtap.service >/dev/null 2>&1 || :
dc0ed7
%else
dc0ed7
    /sbin/chkconfig --add %{?scl_prefix}systemtap
dc0ed7
%endif
dc0ed7
exit 0
dc0ed7
dc0ed7
%preun initscript
dc0ed7
# Check that this is the actual deinstallation of the package, as opposed to
dc0ed7
# just removing the old package on upgrade.
dc0ed7
if [ $1 = 0 ] ; then
dc0ed7
    %if %{with_systemd}
dc0ed7
        /bin/systemctl --no-reload disable systemtap.service >/dev/null 2>&1 || :
dc0ed7
        /bin/systemctl stop systemtap.service >/dev/null 2>&1 || :
dc0ed7
    %else
dc0ed7
        /sbin/service %{?scl_prefix}systemtap stop >/dev/null 2>&1
dc0ed7
        /sbin/chkconfig --del %{?scl_prefix}systemtap
dc0ed7
    %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
dc0ed7
%postun initscript
dc0ed7
# Check whether this is an upgrade of the package.
dc0ed7
# If so, restart the service if it's running
dc0ed7
if [ "$1" -ge "1" ] ; then
dc0ed7
    %if %{with_systemd}
dc0ed7
        /bin/systemctl condrestart systemtap.service >/dev/null 2>&1 || :
dc0ed7
    %else
dc0ed7
        /sbin/service %{?scl_prefix}systemtap condrestart >/dev/null 2>&1 || :
dc0ed7
    %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
%post runtime-virtguest
dc0ed7
%if %{with_systemd}
dc0ed7
   # Start services if there are ports present
dc0ed7
   if [ -d /dev/virtio-ports ]; then
dc0ed7
      (find /dev/virtio-ports -iname 'org.systemtap.stapsh.[0-9]*' -type l \
dc0ed7
         | xargs -n 1 basename \
dc0ed7
         | xargs -n 1 -I {} /bin/systemctl start stapsh@{}.service) >/dev/null 2>&1 || :
dc0ed7
   fi
dc0ed7
%else
dc0ed7
   /sbin/chkconfig --add stapshd
dc0ed7
   /sbin/chkconfig stapshd on
dc0ed7
   /sbin/service stapshd start >/dev/null 2>&1 || :
dc0ed7
%endif
dc0ed7
exit 0
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
%preun runtime-virtguest
dc0ed7
# Stop service if this is an uninstall rather than an upgrade
dc0ed7
if [ $1 = 0 ]; then
dc0ed7
   %if %{with_systemd}
dc0ed7
      # We need to stop all stapsh services. Because they are instantiated from
dc0ed7
      # a template service file, we can't simply call disable. We need to find
dc0ed7
      # all the running ones and stop them all individually
dc0ed7
      for service in `/bin/systemctl --full | grep stapsh@ | cut -d ' ' -f 1`; do
dc0ed7
         /bin/systemctl stop $service >/dev/null 2>&1 || :
dc0ed7
      done
dc0ed7
   %else
dc0ed7
      /sbin/service stapshd stop >/dev/null 2>&1
dc0ed7
      /sbin/chkconfig --del stapshd
dc0ed7
   %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
%postun runtime-virtguest
dc0ed7
# Restart service if this is an upgrade rather than an uninstall
dc0ed7
if [ "$1" -ge "1" ]; then
dc0ed7
   %if %{with_systemd}
dc0ed7
      # We need to restart all stapsh services. Because they are instantiated from
dc0ed7
      # a template service file, we can't simply call restart. We need to find
dc0ed7
      # all the running ones and restart them all individually
dc0ed7
      for service in `/bin/systemctl --full | grep stapsh@ | cut -d ' ' -f 1`; do
dc0ed7
         /bin/systemctl condrestart $service >/dev/null 2>&1 || :
dc0ed7
      done
dc0ed7
   %else
dc0ed7
      /sbin/service stapshd condrestart >/dev/null 2>&1
dc0ed7
   %endif
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python3}
dc0ed7
%if %{with_systemd}
dc0ed7
%preun exporter
dc0ed7
if [ $1 = 0 ] ; then
dc0ed7
  /bin/systemctl stop stap-exporter.service >/dev/null 2>&1 || :
dc0ed7
  /bin/systemctl disable stap-exporter.service >/dev/null 2>&1 || :
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
dc0ed7
%postun exporter
dc0ed7
# Restart service if this is an upgrade rather than an uninstall
dc0ed7
if [ "$1" -ge "1" ]; then
dc0ed7
   /bin/systemctl condrestart stap-exporter >/dev/null 2>&1 || :
dc0ed7
fi
dc0ed7
exit 0
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
dc0ed7
%post
dc0ed7
# Remove any previously-built uprobes.ko materials
dc0ed7
(make -C %{_datadir}/systemtap/runtime/uprobes clean) >/dev/null 2>&1 || true
dc0ed7
(/sbin/rmmod uprobes) >/dev/null 2>&1 || true
dc0ed7
dc0ed7
%preun
dc0ed7
# Ditto
dc0ed7
(make -C %{_datadir}/systemtap/runtime/uprobes clean) >/dev/null 2>&1 || true
dc0ed7
(/sbin/rmmod uprobes) >/dev/null 2>&1 || true
dc0ed7
dc0ed7
# ------------------------------------------------------------------------
dc0ed7
dc0ed7
%if %{with_java}
dc0ed7
dc0ed7
%triggerin runtime-java -- java-1.8.0-openjdk, java-1.7.0-openjdk, java-1.6.0-openjdk
dc0ed7
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
dc0ed7
    %ifarch %{ix86}
dc0ed7
	arch=i386
dc0ed7
    %else
dc0ed7
        arch=`basename $f | cut -f2 -d_ | cut -f1 -d.`
dc0ed7
    %endif
dc0ed7
    for archdir in %{_jvmdir}/*openjdk*/jre/lib/${arch}; do
dc0ed7
	 if [ -d ${archdir} ]; then
dc0ed7
            ln -sf %{_libexecdir}/systemtap/libHelperSDT_${arch}.so ${archdir}/libHelperSDT_${arch}.so
dc0ed7
            ln -sf %{_libexecdir}/systemtap/HelperSDT.jar ${archdir}/../ext/HelperSDT.jar
dc0ed7
	 fi
dc0ed7
    done
dc0ed7
done
dc0ed7
dc0ed7
%triggerun runtime-java -- java-1.8.0-openjdk, java-1.7.0-openjdk, java-1.6.0-openjdk
dc0ed7
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
dc0ed7
    %ifarch %{ix86}
dc0ed7
	arch=i386
dc0ed7
    %else
dc0ed7
        arch=`basename $f | cut -f2 -d_ | cut -f1 -d.`
dc0ed7
    %endif
dc0ed7
    for archdir in %{_jvmdir}/*openjdk*/jre/lib/${arch}; do
dc0ed7
        rm -f ${archdir}/libHelperSDT_${arch}.so
dc0ed7
        rm -f ${archdir}/../ext/HelperSDT.jar
dc0ed7
    done
dc0ed7
done
dc0ed7
dc0ed7
%triggerpostun runtime-java -- java-1.8.0-openjdk, java-1.7.0-openjdk, java-1.6.0-openjdk
dc0ed7
# Restore links for any JDKs remaining after a package removal:
dc0ed7
for f in %{_libexecdir}/systemtap/libHelperSDT_*.so; do
dc0ed7
    %ifarch %{ix86}
dc0ed7
	arch=i386
dc0ed7
    %else
dc0ed7
        arch=`basename $f | cut -f2 -d_ | cut -f1 -d.`
dc0ed7
    %endif
dc0ed7
    for archdir in %{_jvmdir}/*openjdk*/jre/lib/${arch}; do
dc0ed7
	 if [ -d ${archdir} ]; then
dc0ed7
            ln -sf %{_libexecdir}/systemtap/libHelperSDT_${arch}.so ${archdir}/libHelperSDT_${arch}.so
dc0ed7
            ln -sf %{_libexecdir}/systemtap/HelperSDT.jar ${archdir}/../ext/HelperSDT.jar
dc0ed7
	 fi
dc0ed7
    done
dc0ed7
done
dc0ed7
dc0ed7
# XXX: analogous support for other types of JRE/JDK??
dc0ed7
dc0ed7
%endif
dc0ed7
dc0ed7
# ------------------------------------------------------------------------
dc0ed7
dc0ed7
%files
dc0ed7
# The master "systemtap" rpm doesn't include any files.
dc0ed7
dc0ed7
%files server -f systemtap.lang
dc0ed7
%{_bindir}/stap-server
dc0ed7
%dir %{_libexecdir}/systemtap
dc0ed7
%{_libexecdir}/systemtap/stap-serverd
dc0ed7
%{_libexecdir}/systemtap/stap-start-server
dc0ed7
%{_libexecdir}/systemtap/stap-stop-server
dc0ed7
%{_libexecdir}/systemtap/stap-gen-cert
dc0ed7
%{_libexecdir}/systemtap/stap-sign-module
dc0ed7
%{_libexecdir}/systemtap/stap-authorize-cert
dc0ed7
%{_libexecdir}/systemtap/stap-env
dc0ed7
%{_mandir}/man7/error*
dc0ed7
%{_mandir}/man7/stappaths.7*
dc0ed7
%{_mandir}/man7/warning*
dc0ed7
%{_mandir}/man8/stap-server.8*
dc0ed7
%if %{with_systemd}
dc0ed7
%{_unitdir}/stap-server.service
dc0ed7
%{_tmpfilesdir}/stap-server.conf
dc0ed7
%else
dc0ed7
%{initdir}/%{?scl_prefix}stap-server
dc0ed7
%dir %{_sysconfdir}/stap-server/conf.d
dc0ed7
%config(noreplace) %{_sysconfdir}/sysconfig/stap-server
dc0ed7
%endif
dc0ed7
%config(noreplace) %{_sysconfdir}/logrotate.d/stap-server
dc0ed7
%dir %{_sysconfdir}/stap-server
dc0ed7
%dir %attr(0750,stap-server,stap-server) %{_localstatedir}/lib/stap-server
dc0ed7
%dir %attr(0700,stap-server,stap-server) %{_localstatedir}/lib/stap-server/.systemtap
dc0ed7
%dir %attr(0755,stap-server,stap-server) %{_localstatedir}/log/stap-server
dc0ed7
%ghost %config(noreplace) %attr(0644,stap-server,stap-server) %{_localstatedir}/log/stap-server/log
dc0ed7
%ghost %attr(0755,stap-server,stap-server) %{_localstatedir}/run/stap-server
dc0ed7
%doc README README.unprivileged AUTHORS NEWS 
dc0ed7
%{!?_licensedir:%global license %%doc}
dc0ed7
%license COPYING
dc0ed7
dc0ed7
dc0ed7
%files devel -f systemtap.lang
dc0ed7
%{_bindir}/stap
dc0ed7
%{_bindir}/stap-prep
dc0ed7
%{_bindir}/stap-report
dc0ed7
%dir %{_datadir}/systemtap
dc0ed7
%{_datadir}/systemtap/runtime
dc0ed7
%{_datadir}/systemtap/tapset
dc0ed7
%{_mandir}/man1/stap.1*
dc0ed7
%{_mandir}/man1/stap-prep.1*
dc0ed7
%{_mandir}/man1/stap-report.1*
dc0ed7
%{_mandir}/man7/error*
dc0ed7
%{_mandir}/man7/stappaths.7*
dc0ed7
%{_mandir}/man7/warning*
dc0ed7
%doc README README.unprivileged AUTHORS NEWS 
dc0ed7
%{!?_licensedir:%global license %%doc}
dc0ed7
%license COPYING
dc0ed7
%if %{with_java}
dc0ed7
%dir %{_libexecdir}/systemtap
dc0ed7
%{_libexecdir}/systemtap/libHelperSDT_*.so
dc0ed7
%endif
dc0ed7
%if %{with_emacsvim}
dc0ed7
%{_emacs_sitelispdir}/*.el*
dc0ed7
%{_emacs_sitestartdir}/systemtap-init.el
dc0ed7
%{_datadir}/vim/vimfiles/*/*.vim
dc0ed7
%endif
dc0ed7
# Notice that the stap-resolve-module-function.py file is used by
dc0ed7
# *both* the python2 and python3 subrpms.  Both subrpms use that same
dc0ed7
# python script to help list python probes.
dc0ed7
%if %{with_python3_probes} || %{with_python2_probes}
dc0ed7
%{_libexecdir}/systemtap/python/stap-resolve-module-function.py
dc0ed7
%exclude %{_libexecdir}/systemtap/python/*/*.pyc
dc0ed7
%endif
dc0ed7
dc0ed7
dc0ed7
%files runtime -f systemtap.lang
dc0ed7
%attr(4110,root,stapusr) %{_bindir}/staprun
dc0ed7
%{_bindir}/stapsh
dc0ed7
%{_bindir}/stap-merge
dc0ed7
%{_bindir}/stap-report
dc0ed7
%if %{with_dyninst}
dc0ed7
%{_bindir}/stapdyn
dc0ed7
%endif
dc0ed7
%if %{with_bpf}
dc0ed7
%{_bindir}/stapbpf
dc0ed7
%endif
dc0ed7
%dir %{_libexecdir}/systemtap
dc0ed7
%{_libexecdir}/systemtap/stapio
dc0ed7
%{_libexecdir}/systemtap/stap-authorize-cert
dc0ed7
%if %{with_crash}
dc0ed7
%dir %{_libdir}/systemtap
dc0ed7
%{_libdir}/systemtap/staplog.so*
dc0ed7
%endif
dc0ed7
%{_mandir}/man1/stap-report.1*
dc0ed7
%{_mandir}/man7/error*
dc0ed7
%{_mandir}/man7/stappaths.7*
dc0ed7
%{_mandir}/man7/warning*
dc0ed7
%{_mandir}/man8/stapsh.8*
dc0ed7
%{_mandir}/man8/staprun.8*
dc0ed7
%if %{with_dyninst}
dc0ed7
%{_mandir}/man8/stapdyn.8*
dc0ed7
%endif
dc0ed7
%if %{with_bpf}
dc0ed7
%{_mandir}/man8/stapbpf.8*
dc0ed7
%endif
dc0ed7
%doc README README.security AUTHORS NEWS 
dc0ed7
%{!?_licensedir:%global license %%doc}
dc0ed7
%license COPYING
dc0ed7
dc0ed7
dc0ed7
%files client -f systemtap.lang
dc0ed7
%doc README README.unprivileged AUTHORS NEWS
dc0ed7
%{_datadir}/systemtap/examples
dc0ed7
%exclude %{_datadir}/systemtap/examples/general/*/*.pyc
dc0ed7
%{!?_licensedir:%global license %%doc}
dc0ed7
%license COPYING
dc0ed7
%doc docs.installed/*.pdf
dc0ed7
%if %{with_docs}
dc0ed7
%if %{with_htmldocs}
dc0ed7
%doc docs.installed/tapsets/*.html
dc0ed7
%doc docs.installed/SystemTap_Beginners_Guide
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
%{_bindir}/stap
dc0ed7
%{_bindir}/stap-prep
dc0ed7
%{_bindir}/stap-report
dc0ed7
%{_mandir}/man1/stap.1*
dc0ed7
%{_mandir}/man1/stap-prep.1*
dc0ed7
%{_mandir}/man1/stap-merge.1*
dc0ed7
%{_mandir}/man1/stap-report.1*
dc0ed7
%{_mandir}/man1/stapref.1*
dc0ed7
%{_mandir}/man3/*
dc0ed7
%{_mandir}/man7/error*
dc0ed7
%{_mandir}/man7/stappaths.7*
dc0ed7
%{_mandir}/man7/warning*
dc0ed7
%dir %{_datadir}/systemtap
dc0ed7
%{_datadir}/systemtap/tapset
dc0ed7
dc0ed7
dc0ed7
dc0ed7
%files initscript
dc0ed7
%if %{with_systemd}
dc0ed7
%{_unitdir}/systemtap.service
dc0ed7
%{_sbindir}/systemtap-service
dc0ed7
%else
dc0ed7
%{initdir}/%{?scl_prefix}systemtap
dc0ed7
%{_sbindir}/systemtap-service
dc0ed7
%endif
dc0ed7
%dir %{_sysconfdir}/systemtap
dc0ed7
%dir %{_sysconfdir}/systemtap/conf.d
dc0ed7
%dir %{_sysconfdir}/systemtap/script.d
dc0ed7
%config(noreplace) %{_sysconfdir}/systemtap/config
dc0ed7
%dir %{_localstatedir}/cache/systemtap
dc0ed7
%ghost %{_localstatedir}/run/systemtap
dc0ed7
%{_mandir}/man8/systemtap-service.8*
dc0ed7
%if %{with_dracut}
dc0ed7
   %dir %{dracutstap}
dc0ed7
   %{dracutstap}/*
dc0ed7
%endif
dc0ed7
dc0ed7
dc0ed7
%files sdt-devel
dc0ed7
%{_bindir}/dtrace
dc0ed7
%{_includedir}/sys/sdt.h
dc0ed7
%{_includedir}/sys/sdt-config.h
dc0ed7
%{_mandir}/man1/dtrace.1*
dc0ed7
%{_rpmmacrodir}/macros.%{?scl_prefix}systemtap
dc0ed7
%doc README AUTHORS NEWS 
dc0ed7
%{!?_licensedir:%global license %%doc}
dc0ed7
%license COPYING
dc0ed7
dc0ed7
dc0ed7
%files testsuite
dc0ed7
%dir %{_datadir}/systemtap
dc0ed7
%{_datadir}/systemtap/testsuite
dc0ed7
dc0ed7
dc0ed7
%if %{with_java}
dc0ed7
%files runtime-java
dc0ed7
%dir %{_libexecdir}/systemtap
dc0ed7
%{_libexecdir}/systemtap/libHelperSDT_*.so
dc0ed7
%{_libexecdir}/systemtap/HelperSDT.jar
dc0ed7
%{_libexecdir}/systemtap/stapbm
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python2_probes}
dc0ed7
%files runtime-python2
dc0ed7
%{python_sitearch}/HelperSDT
dc0ed7
%{python_sitearch}/HelperSDT-*.egg-info
dc0ed7
%endif
dc0ed7
%if %{with_python3_probes}
dc0ed7
%files runtime-python3
dc0ed7
# this should be _root_prefix but that's b0rked
dc0ed7
%{SCLROOT}%{python3_sitearch}/HelperSDT
dc0ed7
%{SCLROOT}%{python3_sitearch}/HelperSDT-*.egg-info
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virthost}
dc0ed7
%files runtime-virthost
dc0ed7
%{_mandir}/man1/stapvirt.1*
dc0ed7
%{_bindir}/stapvirt
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_virtguest}
dc0ed7
%files runtime-virtguest
dc0ed7
%if %{with_systemd}
dc0ed7
   %{udevrulesdir}/99-stapsh.rules
dc0ed7
   %{_unitdir}/stapsh@.service
dc0ed7
%else
dc0ed7
   %{udevrulesdir}/99-stapsh-init.rules
dc0ed7
   %dir %{_libexecdir}/systemtap
dc0ed7
   %{_libexecdir}/systemtap/stapsh-daemon
dc0ed7
   %{initdir}/stapshd
dc0ed7
   %{_sysconfdir}/sysconfig/modules/virtio_console.modules
dc0ed7
%endif
dc0ed7
%endif
dc0ed7
dc0ed7
%if %{with_python3}
dc0ed7
%files exporter
dc0ed7
%{_sysconfdir}/stap-exporter
dc0ed7
%{_sysconfdir}/sysconfig/stap-exporter
dc0ed7
%{SCLROOT}%{_unitdir}/stap-exporter.service
dc0ed7
%{_mandir}/man8/stap-exporter.8*
dc0ed7
%{_sbindir}/stap-exporter
dc0ed7
%endif
dc0ed7
dc0ed7
# ------------------------------------------------------------------------
dc0ed7
dc0ed7
# Future new-release entries should be of the form
dc0ed7
# * DDD MMM DD YYYY YOURNAME <youremail> - V-R
dc0ed7
# - Upstream release, see wiki page below for detailed notes.
dc0ed7
#   http://sourceware.org/systemtap/wiki/SystemTapReleases
dc0ed7
dc0ed7
# PRERELEASE
dc0ed7
%changelog
dc0ed7
* Mon Jun 22 2020 Martin Cermak <mcermak@redhat.com> - 4.3-5
dc0ed7
- Fix file conflicts between x86_64 and i686
dc0ed7
dc0ed7
* Fri Jun 19 2020 Martin Cermak <mcermak@redhat.com> - 4.3-4
dc0ed7
- Avod conflicts with base rhel systemtap
dc0ed7
dc0ed7
* Fri Jun 19 2020 Martin Cermak <mcermak@redhat.com> - 4.3-3
dc0ed7
- Fix gcc-toolset-10-systemtap-exporter Requires
dc0ed7
dc0ed7
* Fri Jun 19 2020 Martin Cermak <mcermak@redhat.com> - 4.3-2
dc0ed7
- rhbz1848952: Fix a file conflict
dc0ed7
dc0ed7
* Thu Jun 11 2020 Stan Cox <scox@redhat.com> - 4.3-1
dc0ed7
- rhbz1818419: Upstream release.
dc0ed7
dc0ed7
* Tue Jun 2 2020 Martin Cermak <mcermak@redhat.com> - 4.1-6
dc0ed7
- n-v-r gating respin
dc0ed7
dc0ed7
* Mon Jun 1 2020 Frank Ch. Eigler <fche@redhat.com> - 4.1-5
dc0ed7
- n-v-r gating respin
dc0ed7
dc0ed7
* Mon Jul 29 2019 Frank Ch. Eigler <fche@redhat.com> - 4.1-4
dc0ed7
- rhbz1732173 (arm64 syscall parameters)
dc0ed7
dc0ed7
* Fri Jun 14 2019 Frank Ch. Eigler <fche@redhat.com> - 4.1-2
dc0ed7
- Disable various host-service-related options.
dc0ed7
- Correct GNU_parameter_ref dwarf feature typo.
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon Dec 17 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-7
dc0ed7
- rhbz1657909: vfs tapset fixes for $cred
dc0ed7
dc0ed7
* Mon Dec 10 2018 William Cohen <wcohen@redhat.com> - 4.0-6
dc0ed7
- rhbz1657857: Please, backport periodic.stp from current upstream aacee6563.
dc0ed7
dc0ed7
* Fri Dec 07 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-5
dc0ed7
- rhbz1657186: fix/port nfsd.proc4.[read,commit] tapset aliases
dc0ed7
dc0ed7
* Thu Dec 06 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-4
dc0ed7
- rhbz1656795: support bdflush syscall
dc0ed7
dc0ed7
* Tue Dec 04 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-3
dc0ed7
- rhbz1655631: change kernel-devel* deps to Recommends:
dc0ed7
dc0ed7
* Wed Nov 14 2018 Serhei Makarov <smakarov@redhat.com> - 4.0-2
dc0ed7
- rhbz1643997: backported string tapset functionality and bugfixes
dc0ed7
dc0ed7
* Sat Oct 13 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Aug 30 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-0.20180830git
dc0ed7
- Enable brp-mangle for python scripts (rhbz1619413).
dc0ed7
dc0ed7
* Fri Aug 10 2018 Frank Ch. Eigler <fche@redhat.com> - 4.0-0.20180810git
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Mon May 14 2018 Frank Ch. Eigler <fche@redhat.com> - 3.3-0.20180508git9c6ac6cda49e.2
dc0ed7
- respin w/ fixed glibc
dc0ed7
dc0ed7
* Tue May 08 2018 Frank Ch. Eigler <fche@redhat.com> - 3.3-0.20180508git9c6ac6cda49e
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Thu Apr 19 2018 Mark Wielaard <mjw@fedoraproject.org> - 3.2-11
dc0ed7
- Add rhbz1549063.patch (/bin/env -> /usr/bin/env)
dc0ed7
- Add rhbz1566745.patch (4.15 kernel tapset updates)
dc0ed7
- Enable accidentially disabled Suggests: kernel-devel again.
dc0ed7
dc0ed7
* Wed Apr 18 2018 Mark Wielaard <mjw@fedoraproject.org> - 3.2-10
dc0ed7
- Add unwind-fallback.patch
dc0ed7
- rhbz1566422.patch
dc0ed7
dc0ed7
* Tue Apr 17 2018 Mark Wielaard <mjw@fedoraproject.org> - 3.2-9
dc0ed7
- Add unwind-fallback.patch.
dc0ed7
dc0ed7
* Tue Mar 27 2018 Björn Esser <besser82@fedoraproject.org> - 3.2-8
dc0ed7
- Rebuilt for libjson-c.so.4 (json-c v0.13.1) on fc28
dc0ed7
dc0ed7
* Thu Feb 22 2018 Sergey Avseyev <sergey.avseyev@gmail.com> - 3.2-7
dc0ed7
- rhbz1546563 (backport fix for removed timers in kernel 4.15)
dc0ed7
dc0ed7
* Tue Feb 13 2018 Stan Cox <scox@redhat.com> - 3.2-6
dc0ed7
- rebuilt
dc0ed7
dc0ed7
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.2-5
dc0ed7
- Escape macros in %%changelog
dc0ed7
dc0ed7
* Wed Feb 07 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.2-4
dc0ed7
- Fix very old Requires
dc0ed7
dc0ed7
* Sun Dec 10 2017 Björn Esser <besser82@fedoraproject.org> - 3.2-3
dc0ed7
- Rebuilt for libjson-c.so.3
dc0ed7
dc0ed7
* Fri Oct 20 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-2 
dc0ed7
- rhbz1504009 (dtrace -G -o /dev/null)
dc0ed7
dc0ed7
* Wed Oct 18 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Aug 11 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.2-0.20170516gitc67d8f274b21
dc0ed7
- Rebuilt after RPM update (№ 3)
dc0ed7
dc0ed7
* Thu Aug 10 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.2-0.20170515gitc67d8f274b21
dc0ed7
- Rebuilt for RPM soname bump
dc0ed7
dc0ed7
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2-0.20170514gitc67d8f274b21
dc0ed7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
dc0ed7
dc0ed7
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2-0.20170513gitc67d8f274b21
dc0ed7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
dc0ed7
dc0ed7
* Fri May 12 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-0.20170512gitc67d8f274b21
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Mon Apr 10 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-0.20170410gitcbf2583808d6
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Thu Apr 06 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-0.20170406git83d186dc7f5c
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Tue Mar 21 2017 Frank Ch. Eigler <fche@redhat.com> - 3.2-0.20170321git272146660f54
dc0ed7
- Automated weekly rawhide release
dc0ed7
- Applied spec changes from upstream git
dc0ed7
dc0ed7
* Fri Mar 10 2017 Stan Cox <scox@redhat.com> - 3.1-2
dc0ed7
- Rebuild for dyninst 9.3
dc0ed7
dc0ed7
* Fri Feb 17 2017 Frank Ch. Eigler <fche@redhat.com> - 3.1-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Sun Mar 27 2016 Frank Ch. Eigler <fche@redhat.com> - 3.0-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Oct 08 2015 Frank Ch. Eigler <fche@redhat.com> - 2.9-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Jun 17 2015 Abegail Jakop <ajakop@redhat.com> - 2.8-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Feb 18 2015 Frank Ch. Eigler <fche@redhat.com> - 2.7-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Sep 05 2014 Josh Stone <jistone@redhat.com> - 2.6-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon Jul 07 2014 Josh Stone <jistone@redhat.com>
dc0ed7
- Flip with_dyninst to an %%ifarch whitelist.
dc0ed7
dc0ed7
* Wed Apr 30 2014 Jonathan Lebon <jlebon@redhat.com> - 2.5-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Feb 13 2014 Lukas Berk <lberk@redhat.com>
dc0ed7
- Add directory checks for runtime-java sym links
dc0ed7
dc0ed7
* Mon Jan 06 2014 Jonathan Lebon <jlebon@redhat.com>
dc0ed7
- Added dracut module to initscript package
dc0ed7
dc0ed7
* Wed Nov 06 2013 Frank Ch. Eigler <fche@redhat.com> - 2.4-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Oct 09 2013 Jonathan Lebon <jlebon@redhat.com>
dc0ed7
- Added runtime-virthost and runtime-virtguest packages.
dc0ed7
dc0ed7
* Thu Jul 25 2013 Frank Ch. Eigler <fche@redhat.com> - 2.3-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu May 16 2013 Frank Ch. Eigler <fche@redhat.com> - 2.2.1-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Tue May 14 2013 Frank Ch. Eigler <fche@redhat.com> - 2.2-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Feb 13 2013 Serguei Makarov <smakarov@redhat.com> - 2.1-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Tue Oct 09 2012 Josh Stone <jistone@redhat.com> - 2.0-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Jul 13 2012 Peter Robinson <pbrobinson@fedoraproject.org>
dc0ed7
- Fix ifarch statement
dc0ed7
- use file based requires for glibc-devel on x86_64 so that we work in koji
dc0ed7
dc0ed7
* Sun Jun 17 2012 Frank Ch. Eigler <fche@redhat.com> - 1.8-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Feb 01 2012 Frank Ch. Eigler <fche@redhat.com> - 1.7-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Jan 13 2012 David Smith <dsmith@redhat.com> - 1.6-2
dc0ed7
- Fixed /bin/mktemp require.
dc0ed7
dc0ed7
* Mon Jul 25 2011 Stan Cox <scox@redhat.com> - 1.6-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon May 23 2011 Stan Cox <scox@redhat.com> - 1.5-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon Jan 17 2011 Frank Ch. Eigler <fche@redhat.com> - 1.4-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Jul 21 2010 Josh Stone <jistone@redhat.com> - 1.3-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon Mar 22 2010 Frank Ch. Eigler <fche@redhat.com> - 1.2-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Mon Dec 21 2009 David Smith <dsmith@redhat.com> - 1.1-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Tue Sep 22 2009 Josh Stone <jistone@redhat.com> - 1.0-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Tue Aug  4 2009 Josh Stone <jistone@redhat.com> - 0.9.9-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Jun 11 2009 Josh Stone <jistone@redhat.com> - 0.9.8-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Apr 23 2009 Josh Stone <jistone@redhat.com> - 0.9.7-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Mar 27 2009 Josh Stone <jistone@redhat.com> - 0.9.5-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Wed Mar 18 2009 Will Cohen <wcohen@redhat.com> - 0.9-2
dc0ed7
- Add location of man pages.
dc0ed7
dc0ed7
* Tue Feb 17 2009 Frank Ch. Eigler <fche@redhat.com> - 0.9-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Thu Nov 13 2008 Frank Ch. Eigler <fche@redhat.com> - 0.8-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Tue Jul 15 2008 Frank Ch. Eigler <fche@redhat.com> - 0.7-1
dc0ed7
- Upstream release.
dc0ed7
dc0ed7
* Fri Feb  1 2008 Frank Ch. Eigler <fche@redhat.com> - 0.6.1-3
dc0ed7
- Add zlib-devel to buildreq; missing from crash-devel
dc0ed7
- Process testsuite .stp files for #!stap->#!/usr/bin/stap
dc0ed7
dc0ed7
* Fri Jan 18 2008 Frank Ch. Eigler <fche@redhat.com> - 0.6.1-1
dc0ed7
- Add crash-devel buildreq to build staplog.so crash(8) module.
dc0ed7
- Many robustness & functionality improvements:
dc0ed7
dc0ed7
* Wed Dec  5 2007 Will Cohen <wcohen@redhat.com> - 0.6-2
dc0ed7
- Correct Source to point to location contain code.
dc0ed7
dc0ed7
* Thu Aug  9 2007 David Smith <dsmith@redhat.com> - 0.6-1
dc0ed7
- Bumped version, added libcap-devel BuildRequires.
dc0ed7
dc0ed7
* Wed Jul 11 2007 Will Cohen <wcohen@redhat.com> - 0.5.14-2
dc0ed7
- Fix Requires and BuildRequires for sqlite.
dc0ed7
dc0ed7
* Mon Jul  2 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.14-1
dc0ed7
- Many robustness improvements: 1117, 1134, 1305, 1307, 1570, 1806,
dc0ed7
  2033, 2116, 2224, 2339, 2341, 2406, 2426, 2438, 2583, 3037,
dc0ed7
  3261, 3282, 3331, 3428 3519, 3545, 3625, 3648, 3880, 3888, 3911,
dc0ed7
  3952, 3965, 4066, 4071, 4075, 4078, 4081, 4096, 4119, 4122, 4127,
dc0ed7
  4146, 4171, 4179, 4183, 4221, 4224, 4254, 4281, 4319, 4323, 4326,
dc0ed7
  4329, 4332, 4337, 4415, 4432, 4444, 4445, 4458, 4467, 4470, 4471,
dc0ed7
  4518, 4567, 4570, 4579, 4589, 4609, 4664
dc0ed7
dc0ed7
* Mon Mar 26 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.13-1
dc0ed7
- An emergency / preliminary refresh, mainly for compatibility
dc0ed7
  with 2.6.21-pre kernels.
dc0ed7
dc0ed7
* Mon Jan  1 2007 Frank Ch. Eigler <fche@redhat.com> - 0.5.12-1
dc0ed7
- Many changes, see NEWS file.
dc0ed7
dc0ed7
* Tue Sep 26 2006 David Smith <dsmith@redhat.com> - 0.5.10-1
dc0ed7
- Added 'systemtap-runtime' subpackage.
dc0ed7
dc0ed7
* Wed Jul 19 2006 Roland McGrath <roland@redhat.com> - 0.5.9-1
dc0ed7
- PRs 2669, 2913
dc0ed7
dc0ed7
* Fri Jun 16 2006 Roland McGrath <roland@redhat.com> - 0.5.8-1
dc0ed7
- PRs 2627, 2520, 2228, 2645
dc0ed7
dc0ed7
* Fri May  5 2006 Frank Ch. Eigler <fche@redhat.com> - 0.5.7-1
dc0ed7
- PRs 2511 2453 2307 1813 1944 2497 2538 2476 2568 1341 2058 2220 2437
dc0ed7
  1326 2014 2599 2427 2438 2465 1930 2149 2610 2293 2634 2506 2433
dc0ed7
dc0ed7
* Tue Apr  4 2006 Roland McGrath <roland@redhat.com> - 0.5.5-1
dc0ed7
- Many changes, affected PRs include: 2068, 2293, 1989, 2334,
dc0ed7
  1304, 2390, 2425, 953.
dc0ed7
dc0ed7
* Wed Feb  1 2006 Frank Ch. Eigler <fche@redhat.com> - 0.5.4-1
dc0ed7
- PRs 1916, 2205, 2142, 2060, 1379
dc0ed7
dc0ed7
* Mon Jan 16 2006 Roland McGrath <roland@redhat.com> - 0.5.3-1
dc0ed7
- Many changes, affected PRs include: 2056, 1144, 1379, 2057,
dc0ed7
  2060, 1972, 2140, 2148
dc0ed7
dc0ed7
* Mon Dec 19 2005 Roland McGrath <roland@redhat.com> - 0.5.2-1
dc0ed7
- Fixed build with gcc 4.1, various tapset changes.
dc0ed7
dc0ed7
* Wed Dec  7 2005 Roland McGrath <roland@redhat.com> - 0.5.1-1
dc0ed7
- elfutils update, build changes
dc0ed7
dc0ed7
* Fri Dec 02 2005  Frank Ch. Eigler  <fche@redhat.com> - 0.5-1
dc0ed7
- Many fixes and improvements: 1425, 1536, 1505, 1380, 1329, 1828, 1271,
dc0ed7
  1339, 1340, 1345, 1837, 1917, 1903, 1336, 1868, 1594, 1564, 1276, 1295
dc0ed7
dc0ed7
* Mon Oct 31 2005 Roland McGrath <roland@redhat.com> - 0.4.2-1
dc0ed7
- Many fixes and improvements: PRs 1344, 1260, 1330, 1295, 1311, 1368,
dc0ed7
  1182, 1131, 1332, 1366, 1456, 1271, 1338, 1482, 1477, 1194.
dc0ed7
dc0ed7
* Wed Sep 14 2005 Roland McGrath <roland@redhat.com> - 0.4.1-1
dc0ed7
- Many fixes and improvements since 0.2.2; relevant PRs include:
dc0ed7
  1122, 1134, 1155, 1172, 1174, 1175, 1180, 1186, 1187, 1191, 1193, 1195,
dc0ed7
  1197, 1205, 1206, 1209, 1213, 1244, 1257, 1258, 1260, 1265, 1268, 1270,
dc0ed7
  1289, 1292, 1306, 1335, 1257
dc0ed7
dc0ed7
* Wed Sep  7 2005 Frank Ch. Eigler <fche@redhat.com>
dc0ed7
- Bump version.
dc0ed7
dc0ed7
* Tue Aug 16 2005 Frank Ch. Eigler <fche@redhat.com>
dc0ed7
- Bump version.
dc0ed7
dc0ed7
* Wed Aug  3 2005 Martin Hunt <hunt@redhat.com> - 0.2.2-1
dc0ed7
- Add directory /var/cache/systemtap
dc0ed7
- Add stp_check to /usr/libexec/systemtap
dc0ed7
dc0ed7
* Wed Aug  3 2005 Roland McGrath <roland@redhat.com> - 0.2.1-1
dc0ed7
- New version 0.2.1, various fixes.
dc0ed7
dc0ed7
* Fri Jul 29 2005 Roland McGrath <roland@redhat.com> - 0.2-1
dc0ed7
- New version 0.2, requires elfutils 0.111
dc0ed7
dc0ed7
* Mon Jul 25 2005 Roland McGrath <roland@redhat.com>
dc0ed7
- Clean up spec file, build bundled elfutils.
dc0ed7
dc0ed7
* Thu Jul 21 2005 Martin Hunt <hunt@redhat.com>
dc0ed7
- Set Version to use version from autoconf.
dc0ed7
- Fix up some of the path names.
dc0ed7
- Add Requires and BuildRequires.
dc0ed7
dc0ed7
* Tue Jul 19 2005 Will Cohen <wcohen@redhat.com>
dc0ed7
- Initial creation of RPM.