psmisc/psmisc.spec

118 lines
3.3 KiB
RPMSpec

#
# spec file for package psmisc
#
# Copyright (c) 2013 SUSE LINUX Products 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: glibc-devel
BuildRequires: libselinux-devel
BuildRequires: ncurses-devel
Url: http://sourceforge.net/projects/psmisc/
PreReq: %fillup_prereq %insserv_prereq
Version: 22.20
Release: 0
Provides: ps:/usr/bin/killall
%if %suse_version > 1020
Recommends: %{name}-lang = 6.18.00
%endif
Summary: Utilities for managing processes on your system
License: GPL-2.0+
Group: System/Monitoring
Source: http://sourceforge.net/projects/psmisc/files/psmisc/%{name}-%{version}.tar.gz
Patch0: %name-22.20.dif
Patch1: %name-22.12-tigetstr.patch
Patch2: %name-22.12-pstree.patch
Patch3: %name-22.20-pstree.patch
Patch42: %{name}-%{version}-upstream.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%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.
%package lang
Summary: Languages for package %{name}
Group: System/Localization
Requires: %{name} = %{version}
%description lang
Provides translations to the package %{name}
%prep
%setup -q
%patch42 -p0 -b .up
%patch1 -p0 -b .tigetstr
%patch2 -p0 -b .pstree
%patch3 -p0 -b .se
%patch0 -p0 -b .0
%build
autoreconf -fi
CFLAGS="-D_GNU_SOURCE ${RPM_OPT_FLAGS} -pipe"
CXXFLAGS="$CFLAGS"
CC=gcc
CXX=g++
export CFLAGS CXXFLAGS CC CXX
sh ./configure --prefix=%{_prefix} --mandir=%{_mandir} \
--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
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr (-,root,root,755)
/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 psmisc.lang
%changelog