File psmisc.spec of Package psmisc.18695

#
# spec file for package psmisc
#
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           psmisc
BuildRequires:  automake
BuildRequires:  gcc-c++
BuildRequires:  glibc-devel
BuildRequires:  libselinux-devel
BuildRequires:  ncurses-devel
URL:            http://sourceforge.net/projects/psmisc/
Version:        22.21
Release:        0
Provides:       ps:/usr/bin/killall
Recommends:     %{name}-lang
Summary:        Utilities for managing processes on your system
License:        GPL-2.0-or-later
Group:          System/Monitoring
Source:         http://sourceforge.net/projects/psmisc/files/psmisc/%{name}-%{version}.tar.gz
Patch0:         %name-22.21.dif
Patch1:         %name-22.12-tigetstr.patch
Patch2:         %name-22.21-pstree.patch
# PATCH-FIX-SUSE boo#boo908063 -- partly upstream already
Patch3:         %name-22.21-boo908063.patch
Patch4:         0001-Use-mountinfo-to-be-able-to-use-the-mount-identity.patch
Patch42:        %{name}-22.21-upstream.patch
# PATCH-FIX-UPSTREAM psmisc-git-3638cc55b4d08851faba46635d737b24d016665b.patch bnc#874983
Patch43:        %{name}-git-3638cc55b4d08851faba46635d737b24d016665b.patch

%define nopeek  s390 s390x ia64 %sparc hppa aarch64

%description
The psmisc package contains utilities for managing processes on your
system: pstree, killall and fuser.  The pstree command displays a tree
structure of all of the running processes on your system.  The killall
command sends a specified signal (SIGTERM if nothing is specified) to
processes identified by name.  The fuser command identifies the PIDs of
processes that are using specified files or filesystems.

%lang_package

%prep
%setup -q
%patch42 -p0 -b .up
%patch1 -p0 -b .tigetstr
%patch2 -p0 -b .pstree
%patch3 -p0 -b .thread
%patch4 -p0 -b .mntinf
%patch0 -p0 -b .0
%patch43 -p1 -b .fuserfix

%build
autoreconf -fi
CC=gcc
CFLAGS="-D_GNU_SOURCE ${RPM_OPT_FLAGS} -pipe"
CXXFLAGS="$CFLAGS"
export CC CFLAGS CXXFLAGS
%configure	--disable-rpath \
	--with-gnu-ld		\
	--enable-selinux	\
	--enable-mountinfo-list	\
	--enable-timeout-stat=static
make %{?_smp_mflags} CFLAGS="$CFLAGS" "CC=$CC"

%install
make DESTDIR=$RPM_BUILD_ROOT install
mkdir -p $RPM_BUILD_ROOT/bin/
mv $RPM_BUILD_ROOT/usr/bin/fuser $RPM_BUILD_ROOT/bin/
%ifarch %nopeek
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/peekfd.1*
%endif
%find_lang psmisc

%files
%defattr (-,root,root,755)
%doc COPYING
/bin/fuser
%{_bindir}/killall
%ifnarch %nopeek
%{_bindir}/peekfd
%endif
%{_bindir}/prtstat
%{_bindir}/pstree
%{_bindir}/pstree.x11
%{_mandir}/man1/fuser.1*
%{_mandir}/man1/killall.1*
%ifnarch %nopeek
%{_mandir}/man1/peekfd.1*
%endif
%{_mandir}/man1/prtstat.1*
%{_mandir}/man1/pstree.1*

%files lang -f %{name}.lang

%changelog
openSUSE Build Service is sponsored by