419 lines
13 KiB
RPMSpec
419 lines
13 KiB
RPMSpec
#
|
|
# spec file for package procps
|
|
#
|
|
# Copyright (c) 2014 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/
|
|
#
|
|
|
|
|
|
%bcond_with bin2usr
|
|
%bcond_with pidof
|
|
%define somajor 3
|
|
%define libname libprocps%{somajor}
|
|
|
|
Name: procps
|
|
#Also: http://gitorious.org/procps/
|
|
Url: http://sf.net/projects/procps-ng/
|
|
BuildRequires: automake
|
|
%ifarch ia64 x86_64 ppc64 ppc %sparc
|
|
BuildRequires: libnuma-devel
|
|
%endif
|
|
BuildRequires: libselinux-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: ncurses-devel
|
|
BuildRequires: pkg-config
|
|
%if 0%{?suse_version} > 1310
|
|
BuildRequires: pkgconfig(libsystemd-login)
|
|
%else
|
|
%if 0%{?suse_version} > 1230
|
|
BuildRequires: pkgconfig(libsystemd)
|
|
%endif
|
|
%endif
|
|
BuildRequires: xz
|
|
Version: 3.3.9
|
|
Release: 0
|
|
Provides: ps = %version-%release
|
|
Obsoletes: ps < %version-%release
|
|
Requires(post): %fillup_prereq
|
|
Requires(post): %insserv_prereq
|
|
Requires(postun): %insserv_prereq
|
|
Summary: The ps utilities for /proc
|
|
License: GPL-2.0+ and LGPL-2.1+
|
|
Group: System/Monitoring
|
|
Source: http://downloads.sourceforge.net/project/procps-ng/Production/procps-ng-3.3.9.tar.xz
|
|
Source1: procps-pmap-legacy.tar.bz2
|
|
Source2: boot.sysctl
|
|
Source3: systat.xinetd
|
|
Patch0: procps-ng-3.3.9-watch.patch
|
|
Patch1: procps-v3.3.3-ia64.diff
|
|
Patch3: procps-ng-3.3.9-w-notruncate.diff
|
|
Patch4: procps-v3.3.4-w-simply-work.diff
|
|
Patch5: procps-ng-3.3.8-top.1.diff
|
|
Patch6: procps-v3.3.3-buffersize.diff
|
|
Patch7: procps-ng-3.3.8-readeof.patch
|
|
Patch8: procps-v3.3.3-slab.patch
|
|
Patch9: procps-ng-3.3.8-selinux.patch
|
|
Patch10: procps-ng-3.3.8-accuracy.dif
|
|
Patch11: procps-v3.3.4-xen.dif
|
|
Patch12: procps-v3.3.3-fdleak.dif
|
|
Patch13: procps-v3.3.3-columns.dif
|
|
Patch14: procps-v3.3.3-integer-overflow.patch
|
|
Patch15: procps-ng-3.3.8-bnc634071_procstat2.diff
|
|
Patch16: procps-ng-3.3.8-bnc634840.patch
|
|
Patch17: procps-v3.3.3-read-sysctls-also-from-boot-sysctl.conf-kernelversion.diff
|
|
Patch18: procps-ng-3.3.8-petabytes.patch
|
|
Patch19: procps-v3.3.4-large_pcpu.patch
|
|
Patch20: procps-ng-3.3.8-tinfo.dif
|
|
Patch21: procps-v3.3.3-pwdx.patch
|
|
# PATCH-FIX-OPENSUSE -- trifle rest of the old terabyte patch
|
|
Patch28: procps-ng-3.3.8-vmstat-terabyte.dif
|
|
# PATCH-FIX-SUSE -- Ignore scan_unevictable_pages in sysctl
|
|
Patch31: procps-ng-3.3.8-ignore-scan_unevictable_pages.patch
|
|
|
|
Patch60: 0024-sysctl-system-loads-default-config-file.patch
|
|
Patch61: 0025-Split-help-lines-to-help-translators.patch
|
|
Patch62: 0026-library-fixing-uninitialized-variable-pos-in-whattim.patch
|
|
Patch63: 0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch
|
|
Patch64: 0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch
|
|
Patch65: 0029-ps-ignore-SIGCONT.patch
|
|
Patch66: 0031-vmstat-wide-output-still-not-wide-enough.patch
|
|
Patch67: 0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch
|
|
Patch68: 0033-kill-for-PID-1-restored.patch
|
|
Patch69: 0034-Check-for-presence-of-disks-in-vmstat.patch
|
|
Patch70: 0035-PID-2-to-9-for-kill-too.patch
|
|
Patch71: 0036-pgrep-fails-to-show-full-command-line-with-au.patch
|
|
Patch72: 0037-fail-on-null-string-for-arguments.patch
|
|
Patch73: 0038-Update-help-files.patch
|
|
Patch74: 0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch
|
|
Patch75: 0040-watch-Don-t-leak-extra-fds-to-the-child.patch
|
|
Patch76: 0041-vmstat-Fixing-format-security-flaws.patch
|
|
Patch77: 0043-Added-get-trans-target-to-Makefile.patch
|
|
Patch78: 0045-library-properly-handle-memory-used-by-tmpfs.patch
|
|
Patch79: 0046-Minor-i18n-fixes.patch
|
|
Patch80: 0047-sysctl-increase-max-supported-line-length-of-the-con.patch
|
|
Patch81: 0049-fix-url-for-rsync.patch
|
|
Patch82: 0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch
|
|
Patch83: 0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch
|
|
|
|
# Top patches
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch121: 0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch122: 0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch123: 0036-top-restore-the-former-behavior-after-stderr-redirec.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch124: 0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch125: 0038-top-protect-against-distortion-when-system-time-rese.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch126: 0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch127: 0045-top-standardize-Esc-key-support-with-prompted-input.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/15
|
|
Patch128: 0046-top-miscellaneous-accumulated-changes-to-program-cod.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch129: 0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch130: 0052-top-refactor-man-document-so-as-to-allow-translation.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch131: 0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch132: 0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch
|
|
# PATCH-FIX-UPSTREAM added at 2014/05/16
|
|
Patch133: 0060-top-miscellaneous-accumulated-changes-to-man-documen.patch
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%description
|
|
The procps package contains a set of system utilities that provide
|
|
system information. Procps includes ps, free, skill, snice, tload, top,
|
|
uptime, vmstat, w, and watch. The ps command displays a snapshot of
|
|
running processes. The top command provides a repetitive update of the
|
|
statuses of running processes. The free command displays the amounts of
|
|
free and used memory on your system. The skill command sends a
|
|
terminate command (or another specified signal) to a specified set of
|
|
processes. The snice command is used to change the scheduling priority
|
|
of specified processes. The tload command prints a graph of the current
|
|
system load average to a specified tty. The uptime command displays the
|
|
current time, how long the system has been running, how many users are
|
|
logged on, and system load averages for the past one, five, and fifteen
|
|
minutes. The w command displays a list of the users who are currently
|
|
logged on and what they are running. The watch program watches a
|
|
running program. The vmstat command displays virtual memory statistics
|
|
about processes, memory, paging, block I/O, traps, and CPU activity.
|
|
|
|
%package devel
|
|
Summary: Include Files and Libraries mandatory for Development
|
|
License: GPL-2.0+ and LGPL-2.1+
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{libname} = %{version}
|
|
|
|
%description devel
|
|
This package contains all necessary include files and libraries needed
|
|
to develop applications that require these.
|
|
|
|
%package -n %{libname}
|
|
Summary: The props library
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
Requires(post): /sbin/ldconfig
|
|
Requires(postun): /sbin/ldconfig
|
|
|
|
%description -n %{libname}
|
|
The props library can be used to read informations out from /proc
|
|
the process information pseudo-file system,
|
|
|
|
%prep
|
|
%setup -q -n %{name}-ng-%{version}
|
|
%patch0
|
|
%patch1
|
|
%patch3
|
|
%patch4
|
|
%patch5
|
|
%patch6
|
|
%patch7
|
|
%patch8
|
|
%patch9
|
|
%patch10
|
|
%patch11
|
|
%patch12
|
|
%patch13
|
|
%patch14
|
|
%patch15
|
|
%patch16
|
|
%patch17
|
|
%patch18
|
|
%patch19
|
|
%patch20
|
|
%patch21
|
|
%patch28
|
|
%patch31 -p1
|
|
%patch60
|
|
%patch61
|
|
%patch62
|
|
%patch63
|
|
%patch64
|
|
%patch65
|
|
%patch66
|
|
%patch67
|
|
%patch68
|
|
%patch69
|
|
%patch70
|
|
%patch71
|
|
%patch72
|
|
%patch73
|
|
%patch74
|
|
%patch75
|
|
%patch76
|
|
%patch77
|
|
%patch78
|
|
%patch79
|
|
%patch80
|
|
%patch81
|
|
%patch82
|
|
%patch83 -b .xyz
|
|
# Patches for top
|
|
%patch121
|
|
%patch122
|
|
%patch123
|
|
%patch124
|
|
%patch125
|
|
%patch126
|
|
%patch127
|
|
%patch128
|
|
%patch129
|
|
%patch130
|
|
%patch131
|
|
%patch132
|
|
%patch133
|
|
|
|
%build
|
|
tar --strip-components=1 -xf %{S:1}
|
|
test -s .tarball-version || echo %{version} > .tarball-version
|
|
#./autogen.sh
|
|
autoreconf
|
|
export NCURSESW_CFLAGS="$(ncursesw5-config --cflags)"
|
|
export NCURSESW_LIBS="$(ncursesw5-config --libs)"
|
|
export LFS_CFLAGS="$(getconf LFS_CFLAGS)"
|
|
%global optflags %{optflags} -D_GNU_SOURCE $LFS_CFLAGS -DCPU_ZEROTICS -DUSE_X_COLHDR -pipe
|
|
%configure \
|
|
--disable-static \
|
|
--disable-nls \
|
|
--disable-rpath \
|
|
--disable-kill \
|
|
%if !%{with pidof}
|
|
--disable-pidof \
|
|
%endif
|
|
--enable-watch8bit \
|
|
--enable-shared \
|
|
--enable-skill \
|
|
--enable-oomem \
|
|
--enable-w-from \
|
|
--enable-sigwinch \
|
|
--enable-wide-percent \
|
|
--enable-wide-memory \
|
|
--enable-w-from \
|
|
--enable-libselinux \
|
|
--with-pic=yes \
|
|
%if 0%{?suse_version} > 1230
|
|
--with-systemd \
|
|
%else
|
|
--without-systemd \
|
|
%endif
|
|
--with-gnu-ld
|
|
make %{?_smp_mflags}
|
|
|
|
./pmap $$ || {
|
|
uname -a
|
|
echo /proc/$$/maps
|
|
cat /proc/$$/maps
|
|
echo /proc/$$/smaps
|
|
cat /proc/$$/smaps
|
|
exit 1
|
|
}
|
|
|
|
%install
|
|
make DESTDIR=%{buildroot} install
|
|
install -d %{buildroot}/etc/xinetd.d
|
|
install -d %{buildroot}/bin
|
|
install -d %{buildroot}/sbin
|
|
%if 0%{?suse_version} < 1230
|
|
install -d %{buildroot}/etc/init.d
|
|
install -m 755 %{S:2} %{buildroot}/etc/init.d
|
|
%endif
|
|
install -m 644 %{S:3} %{buildroot}/etc/xinetd.d/systat
|
|
|
|
# clean unwanted files (e.g. coreutils)
|
|
rm -f %{buildroot}/usr/bin/kill
|
|
rm -f %{buildroot}/usr/bin/uptime
|
|
rm -f %{buildroot}%{_mandir}/man1/kill.1
|
|
rm -f %{buildroot}%{_mandir}/man1/uptime.1
|
|
rm -f %{buildroot}%{_libdir}/*.la
|
|
rm -rf %{buildroot}%{_datadir}/doc/procps-ng
|
|
|
|
%if %{with bin2usr}
|
|
ln -s %{_bindir}/ps %{buildroot}/bin/
|
|
ln -s %{_bindir}/pgrep %{buildroot}/bin/
|
|
ln -s %{_bindir}/pkill %{buildroot}/bin/
|
|
ln -s %{_sbindir}/sysctl %{buildroot}/sbin/
|
|
%else
|
|
mv %{buildroot}%{_bindir}/ps %{buildroot}/bin/
|
|
mv %{buildroot}%{_bindir}/pgrep %{buildroot}/bin/
|
|
mv %{buildroot}%{_bindir}/pkill %{buildroot}/bin/
|
|
mv %{buildroot}%{_sbindir}/sysctl %{buildroot}/sbin/
|
|
ln -s /bin/ps %{buildroot}%{_bindir}/ps
|
|
ln -s /bin/pgrep %{buildroot}%{_bindir}/pgrep
|
|
ln -s /bin/pkill %{buildroot}%{_bindir}/pkill
|
|
ln -s /sbin/sysctl %{buildroot}%{_sbindir}/sysctl
|
|
%endif
|
|
|
|
%post
|
|
%if 0%{?suse_version} < 1230
|
|
%{fillup_and_insserv -ny boot.sysctl boot.sysctl}
|
|
%endif
|
|
#
|
|
%postun
|
|
%insserv_cleanup
|
|
|
|
%post -n %{libname} -p /sbin/ldconfig
|
|
|
|
%postun -n %{libname} -p /sbin/ldconfig
|
|
|
|
%check
|
|
make check
|
|
|
|
%files
|
|
%defattr (-,root,root,755)
|
|
%doc NEWS README COPYING Documentation/BUGS Documentation/FAQ top/README.top
|
|
%if 0%{?suse_version} < 1230
|
|
%config /etc/init.d/boot.sysctl
|
|
%endif
|
|
%config(noreplace) /etc/xinetd.d/systat
|
|
%if %{with bin2usr}
|
|
%verify(link) /bin/ps
|
|
%verify(link) /bin/pgrep
|
|
%verify(link) /bin/pkill
|
|
%verify(link) /sbin/sysctl
|
|
%{_bindir}/ps
|
|
%{_bindir}/pgrep
|
|
%{_bindir}/pkill
|
|
%{_sbindir}/sysctl
|
|
%else
|
|
/bin/ps
|
|
/bin/pgrep
|
|
/bin/pkill
|
|
/sbin/sysctl
|
|
%verify(link) %{_bindir}/ps
|
|
%verify(link) %{_bindir}/pgrep
|
|
%verify(link) %{_bindir}/pkill
|
|
%verify(link) %{_sbindir}/sysctl
|
|
%endif
|
|
%{_bindir}/free
|
|
%if %{with pidof}
|
|
%{_bindir}/pidof
|
|
%endif
|
|
%{_bindir}/pmap
|
|
%{_bindir}/pwdx
|
|
%{_bindir}/skill
|
|
%{_bindir}/slabtop
|
|
%{_bindir}/snice
|
|
%{_bindir}/tload
|
|
%{_bindir}/top
|
|
%{_bindir}/vmstat
|
|
%{_bindir}/w
|
|
%{_bindir}/watch
|
|
%_mandir/man1/free.1.gz
|
|
%_mandir/man1/pgrep.1.gz
|
|
%if %{with pidof}
|
|
%_mandir/man1/pidof.1.gz
|
|
%endif
|
|
%_mandir/man1/pkill.1.gz
|
|
%_mandir/man1/pmap.1.gz
|
|
%_mandir/man1/ps.1.gz
|
|
%_mandir/man1/pwdx.1.gz
|
|
%_mandir/man1/skill.1.gz
|
|
%_mandir/man1/slabtop.1.gz
|
|
%_mandir/man1/snice.1.gz
|
|
%_mandir/man1/tload.1.gz
|
|
%_mandir/man1/top.1.gz
|
|
%_mandir/man1/w.1.gz
|
|
%_mandir/man1/watch.1.gz
|
|
%_mandir/man5/sysctl.conf.5.gz
|
|
%_mandir/man8/vmstat.8.gz
|
|
%_mandir/man8/sysctl.8.gz
|
|
|
|
%files devel
|
|
%defattr (-,root,root,755)
|
|
%dir %{_includedir}/proc
|
|
%{_includedir}/proc/alloc.h
|
|
%{_includedir}/proc/devname.h
|
|
%{_includedir}/proc/escape.h
|
|
%{_includedir}/proc/procps.h
|
|
%{_includedir}/proc/pwcache.h
|
|
%{_includedir}/proc/readproc.h
|
|
%{_includedir}/proc/sig.h
|
|
%{_includedir}/proc/slab.h
|
|
%{_includedir}/proc/sysinfo.h
|
|
%{_includedir}/proc/version.h
|
|
%{_includedir}/proc/wchan.h
|
|
%{_includedir}/proc/whattime.h
|
|
%{_libdir}/libprocps.so
|
|
%{_libdir}/pkgconfig/libprocps.pc
|
|
|
|
%files -n %{libname}
|
|
%defattr (-,root,root,755)
|
|
%{_libdir}/libprocps.so.%{somajor}*
|
|
|
|
%changelog
|