# # spec file for package psmisc # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # 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 http://bugs.opensuse.org/ # Name: psmisc BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: gettext-devel BuildRequires: glibc-devel BuildRequires: libselinux-devel BuildRequires: ncurses-devel Url: https://gitlab.com/psmisc/psmisc/ Version: 23.0 Release: 0 Provides: ps:/usr/bin/killall Recommends: %{name}-lang Summary: Utilities for managing processes on your system License: GPL-2.0+ Group: System/Monitoring %define hash 67b1da268f4c0ce6859980e3dfcfaec5b2448e80 Source: https://gitlab.com/%{name}/%{name}/repository/archive.tar.bz2?ref=v%{version}#/%{name}-%{version}.tar.bz2 Patch0: %{name}-%{version}.dif Patch2: %{name}-22.21-pstree.patch # PATCH-FIX-SUSE boo#908068 -- fuser -m not handling block devices properly Patch4: %{name}-22.21-mntpt.patch # PATCH-ADD-SUSE use string comparision only for nfs shares Patch5: %{name}-22.21-lessnfs.patch # PATCH-FIX_UPSTREAM boo#1046237 -- Debug output in killall from psmisc package Patch6: %{name}-%{version}-killall.patch # PATCH-FIX-SUSE broken net support as the mntstat does not work with fd of sockets Patch7: %{name}-%{version}-net.patch %define have_peekfd %ix86 x86_64 ppc ppc64 ppc64le %arm mipsel m68k %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 ln -sf %{name}-v%{version}-%{hash} %{name}-%version %setup -q -D -n %{name}-%version %patch2 -p0 -b .pstree %patch4 -p0 -b .mntpt %patch5 -p0 -b .lessnfs %patch6 -p0 -b .ka exit 1 %patch7 -p0 -b .net %patch0 -p0 -b .0 %build grep -h src/ po/*.po|\ sed -r 's/^#: //'|\ tr ' ' '\n'|\ sort -t : -k1,1 -u|\ sed -r 's/:[0-9]+$//' > po/POTFILES.in autoreconf -fi CFLAGS="-D_GNU_SOURCE -D_DEFAULT_SOURCE ${RPM_OPT_FLAGS} -pipe" CXXFLAGS="$CFLAGS" export 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=%{buildroot} install mkdir -p %{buildroot}/bin/ ln -sf %{_bindir}/fuser %{buildroot}/bin/ %ifnarch %have_peekfd rm -f %{buildroot}%{_mandir}/man1/peekfd.1* %endif %find_lang psmisc %files %defattr (-,root,root,755) /bin/fuser %{_bindir}/fuser %{_bindir}/killall %ifarch %have_peekfd %{_bindir}/peekfd %endif %{_bindir}/prtstat %{_bindir}/pslog %{_bindir}/pstree %{_bindir}/pstree.x11 %{_mandir}/man1/fuser.1* %{_mandir}/man1/killall.1* %ifarch %have_peekfd %{_mandir}/man1/peekfd.1* %endif %{_mandir}/man1/prtstat.1* %{_mandir}/man1/pslog.1* %{_mandir}/man1/pstree.1* %files lang -f %{name}.lang %changelog