File psmisc.spec of Package psmisc

#
# spec file for package psmisc (Version 22.6)
#
# Copyright (c) 2009 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/
#

# norootforbuild


Name:           psmisc
BuildRequires:  gcc-c++ glibc-devel ncurses-devel
BuildRequires:  libselinux-devel
Url:            http://switch.dl.sourceforge.net/sourceforge/psmisc/
License:        GPL v2 or later
Group:          System/Monitoring
PreReq:         %fillup_prereq %insserv_prereq
AutoReqProv:    on
Version:        22.6
Release:        61.<RELEASE27>
Provides:       ps:/usr/bin/killall
Summary:        Utilities for managing processes on your system
Source:         http://switch.dl.sourceforge.net/sourceforge/psmisc/psmisc-%{version}.tar.bz2
Patch0:         %name-%version.dif
Patch1:         %name-22.5-pstree.patch
Patch2:         %name-22.6-nfs4fuser.patch
Patch3:         %name-22.6-netunix.patch
Patch4:         %name-22.6-writeonly.patch
Patch5:         %name-22.6-fdleak.patch
Patch6:         %name-22.6-tigetstr.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
%define nopeek  s390 s390x ia64

%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.



Authors:
--------
    Werner Almesberger

%prep
%setup -q
%patch1 -p0 -b .pstree
%patch2 -p0 -b .nfs4fuser
%patch3 -p0 -b .netunix
%patch4 -p0 -b .wrtonly
%patch5 -p0 -b .fdleak
%patch6 -p0 -b .tigetstr
%patch0 -p0

%build
autoreconf -fi
CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 ${RPM_OPT_FLAGS} -pipe"
CXXFLAGS="$CFLAGS"
CC=gcc
CXX=g++
export CFLAGS CXXFLAGS CC CXX
sh ./configure --prefix=%{_prefix} --mandir=%{_mandir} --enable-selinux
make 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 -f psmisc.lang
%defattr (-,root,root,755)
/bin/fuser
%{_bindir}/oldfuser
%{_bindir}/killall
%ifnarch %nopeek
%{_bindir}/peekfd
%endif
%{_bindir}/pstree
%{_bindir}/pstree.x11
%{_mandir}/man1/fuser.1*
%{_mandir}/man1/killall.1*
%ifnarch %nopeek
%{_mandir}/man1/peekfd.1*
%endif
%{_mandir}/man1/pstree.1*

%changelog
* Thu Mar 12 2009 werner@suse.de
- nfs4fuser: be able to detect the root file system (bnc#464295)
* Wed Mar 11 2009 werner@suse.de
- nfs4fuser: make sure not to stumble on short named mount points
  to avoid to terminate processes on wrong mount points
* Thu Oct 09 2008 werner@suse.de
- Make compiler happy: Don't compare pointer with zero (bnc#432986)
* Wed Oct 01 2008 werner@suse.de
- Avoid stat(2) for all network based file systems (bnc#409011)
* Tue Sep 23 2008 werner@suse.de
- Enhance NFS patch for fuser (bug #409011)
* Mon Sep 01 2008 werner@suse.de
- Do not leak on /proc/net/unix (bnc#417841)
- Read /proc/net/unix and /proc/mounts only once
* Fri Aug 22 2008 prusnak@suse.cz
- enabled SELinux support [Fate#303662]
* Thu Aug 07 2008 werner@suse.de
- Refine NFS patch
- Add option -w for killing only procs with write access
* Fri May 16 2008 werner@suse.de
- Add a warning about fusers option -m due NFS locks
- Strip @ symbol from file names read from /proc/net/unix
* Wed Dec 19 2007 werner@suse.de
- Enhance NFS patch for fuser (bug #346776)
* Fri Dec 14 2007 werner@suse.de
- Update to psmisc-22.6
  * killall.1 mentions you can use -SIGxxx as well as just -XXX for
  signal Debian #431082
  * Added support for PPC architecture for peekfd
  * Updated the Chinese simplified po file
  * Added support for x86_64 architecture for peekfd
  * Added Chinese simplified po file
  * Updated Dutch, Vietnamese, Polish and Italian translations
  * Patch for peekfd from Benno Schulenberg
  * Fixed up NLS for fuser, patch from Benno Schulenberg
  * killall asks for Signal (procname) if not SIGTERM
* Thu Oct 04 2007 bg@suse.de
- Disable peekfd on hppa
* Thu Apr 26 2007 werner@suse.de
- Args, peekfd is ix86 specific, disable on other architectures
* Thu Apr 26 2007 werner@suse.de
- Update to psmisc-22.5
  * fuser tcp works on 64bit
  * Added new tool peekfd
  * killall uses /proc/<pid>/exe if inode comparision fails
  * fuser correctly parses remote tcp ports
- Patched fuser to avoid to be locked on stalled NFS (bug #166912)
* Thu Mar 29 2007 rguenther@suse.de
- Add ncurses-devel BuildRequires
* Fri Sep 15 2006 werner@suse.de
- Update to psmisc version 22.3 which includes the previous fixes
* Wed Feb 08 2006 max@suse.de
- Fix exit code of fuser in silent mode [#148563].
* Fri Jan 27 2006 mmj@suse.de
- Fix finding AF_UNIX sockets [#142342]
- Fix minor nits with net_*
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Jan 12 2006 mmj@suse.de
- Update to psmisc-22.1 including:
  * Updated PO files
  * fuser signals eg -INT work better
  * removed space out of fuser man page for -signal
  * fuser -s flag works
  * fix grep lines in Makefile for i386 arches
* Fri Dec 16 2005 mmj@suse.de
- update to psmisc-21.9 including:
  * Fixed install-exec-hook so only symlink pstree.x11 if file does
  not exist already.
  * buffer overflow in killall scanf removed
  * Fixed segfault in pstree -a
  * fuser can not use IPv6, for things like uClibc
  * configure has --disable-ipv6 for above
  * fuser finds unix sockets
  * fixed print_matches to only print unmatched objects if -a is
  specified and to output the header for -v
  * fixed argument parsing to handle groups like -av again
* Fri Dec 09 2005 ro@suse.de
- disable selinux
* Tue Nov 08 2005 mmj@suse.de
- add patch to fix print_matches and commandline arguments parsing
* Sun Nov 06 2005 mmj@suse.de
- fuser returns 1 if no match found like before [#132180]
* Tue Nov 01 2005 mmj@suse.de
- Update to psmisc-21.7
* Mon Aug 08 2005 meissner@suse.de
- fixed buffer overflow in -k failure case with pids >= 10000
* Mon Aug 16 2004 garloff@suse.de
- Update to psmisc-21.5:
  * bugs fixed: UTF-8 line truncation (SF#757164), ss_family
  (SF#845292), docu (fuser, ...)
  * POSIX compat: -m option, ignore -f, fuser output, case
  insensitive options for -I.
  * Cleanups: dev_t and ino_t usage, automake update
  * pstree -A(SCII) flag
- Rediff patches.
* Tue Jul 20 2004 schwab@suse.de
- Use autoreconf.
* Sun Apr 04 2004 kukuk@suse.de
- Add split alias [Bug #38279]
* Sun Feb 15 2004 stepan@suse.de
- update to v21.4
* Sat Feb 14 2004 kukuk@suse.de
- Split from ps package
openSUSE Build Service is sponsored by