commit:     a66f4c45b4a569ef492385fb6952e10948fb58a3
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  9 15:36:34 2018 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Mon Apr  9 15:36:34 2018 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=a66f4c45

sys-process/procps - remove unused macro and glibc header, thanks parazyd

 sys-process/procps/Manifest                        |  1 +
 .../files/procps-3.3.11-sysctl-manpage.patch       | 32 +++++++++
 .../procps/files/procps-3.3.12-proc-tests.patch    | 47 ++++++++++++
 .../files/procps-3.3.13-remove_libio_h.patch       | 25 +++++++
 .../procps-3.3.13-remove_unneeded_macros.patch     | 38 ++++++++++
 .../procps/files/procps-3.3.8-kill-neg-pid.patch   | 46 ++++++++++++
 sys-process/procps/metadata.xml                    | 17 +++++
 sys-process/procps/procps-3.3.13.ebuild            | 83 ++++++++++++++++++++++
 8 files changed, 289 insertions(+)

diff --git a/sys-process/procps/Manifest b/sys-process/procps/Manifest
new file mode 100644
index 0000000..66b6b52
--- /dev/null
+++ b/sys-process/procps/Manifest
@@ -0,0 +1 @@
+DIST procps-ng-3.3.13.tar.xz 901156 BLAKE2B 
ee172016800d3570855873e38fc6ce1b05bb4f43e960097adf6ae806ca8140636d14b0fa8185b19b5580476f5943370d2f128f56ef7274bc66b30c80e0fe9c8b
 SHA512 
9419a54b9875d4e33dd63face5c85cdbef1b8376416d469609128c9370c337a32b9b951c865e53c2ae6cfc8ce8eb7657f724a997cd3206d7af97ddf8a978e008

diff --git a/sys-process/procps/files/procps-3.3.11-sysctl-manpage.patch 
b/sys-process/procps/files/procps-3.3.11-sysctl-manpage.patch
new file mode 100644
index 0000000..3523aad
--- /dev/null
+++ b/sys-process/procps/files/procps-3.3.11-sysctl-manpage.patch
@@ -0,0 +1,32 @@
+--- procps-ng-3.3.11-orig/sysctl.8
++++ procps-ng-3.3.11/sysctl.8
+@@ -123,21 +123,21 @@
+ \fB\-V\fR, \fB\-\-version\fR
+ Display version information and exit.
+ .SH EXAMPLES
+-/sbin/sysctl \-a
++/usr/sbin/sysctl \-a
+ .br
+-/sbin/sysctl \-n kernel.hostname
++/usr/sbin/sysctl \-n kernel.hostname
+ .br
+-/sbin/sysctl \-w kernel.domainname="example.com"
++/usr/sbin/sysctl \-w kernel.domainname="example.com"
+ .br
+-/sbin/sysctl \-p/etc/sysctl.conf
++/usr/sbin/sysctl \-p/etc/sysctl.conf
+ .br
+-/sbin/sysctl \-a \-\-pattern forward
++/usr/sbin/sysctl \-a \-\-pattern forward
+ .br
+-/sbin/sysctl \-a \-\-pattern forward$
++/usr/sbin/sysctl \-a \-\-pattern forward$
+ .br
+-/sbin/sysctl \-a \-\-pattern 'net.ipv4.conf.(eth|wlan)0.arp'
++/usr/sbin/sysctl \-a \-\-pattern 'net.ipv4.conf.(eth|wlan)0.arp'
+ .br
+-/sbin/sysctl \-\-system \-\-pattern '^net.ipv6'
++/usr/sbin/sysctl \-\-system \-\-pattern '^net.ipv6'
+ .SH DEPRECATED PARAMETERS
+ The
+ .B base_reachable_time

diff --git a/sys-process/procps/files/procps-3.3.12-proc-tests.patch 
b/sys-process/procps/files/procps-3.3.12-proc-tests.patch
new file mode 100644
index 0000000..9549252
--- /dev/null
+++ b/sys-process/procps/files/procps-3.3.12-proc-tests.patch
@@ -0,0 +1,47 @@
+https://bugs.gentoo.org/583036
+http://www.freelists.org/post/procps/Patch-Test-suite-fails-if-procpidsmaps-is-absent,1
+
+From: to...@opentrash.com
+To: pro...@freelists.org
+Date: Sun, 11 Sep 2016 15:01:29 +0200
+Subject: [procps] [Patch] Test suite fails if /proc/<pid>/smaps is absent
+Message-Id: <20160911130129.9a8b3322...@astra4649.startdedicated.de>
+
+Summary: Some Linux systems do not have /proc/<pid>/smaps, hence the test
+suite fails. Attached a patch to skip tests in that case it.
+
+When pmap is called with either -c, -x, or -x it tries to read
+/proc/<pid>/smaps (pmap.c, l. 540). If not present it exits.
+The file /proc/<pid>/smaps exits on Linux systems only if the kernel is
+compiled with the option CONFIG_PROC_PAGE_MONITOR (see man page proc(5)).
+
+In the test suite some tests check the output of pmap -X et al, but they
+fail if /proc/<pid>/smaps is not present, because pmap does not produce
+their expected output.
+
+Attached a patch which checks if /proc/<pid>/smaps exits, if not it
+skipps the test related to it.
+
+Note: It is unclear what the 'expected' behaviour/output of pmap should
+be if the file /proc/<pid>/smaps is not present. Maybe add an additional
+test to check the return code if /proc/<pid>/smaps is absent.
+
+--- a/testsuite/pmap.test/pmap.exp
++++ b/testsuite/pmap.test/pmap.exp
+@@ -45,6 +45,11 @@
+ spawn $pmap -qd $mypid
+ expect_table $test $pmap_procname $pmap_device_items "\$"
+ 
++if  { [ file readable "/proc/self/smaps" ] == 0 } {
++    unsupported "Skipping test which require pmap to access 
/proc/<pid>/smaps, because kernel seems to be compiled without 
CONFIG_PROC_PAGE_MONITOR."
++
++} else {
++
+ set test "pmap extended output"
+ spawn $pmap -x $mypid
+ expect_table $test $pmap_ext_header $pmap_ext_items $pmap_ext_footer
+@@ -66,3 +71,4 @@
+ spawn $pmap -XX 1
+ expect_pass $test "$pmap_initname\$"
+ 
++}

diff --git a/sys-process/procps/files/procps-3.3.13-remove_libio_h.patch 
b/sys-process/procps/files/procps-3.3.13-remove_libio_h.patch
new file mode 100644
index 0000000..720f30a
--- /dev/null
+++ b/sys-process/procps/files/procps-3.3.13-remove_libio_h.patch
@@ -0,0 +1,25 @@
+From 66d5f81b58c072ec43b7ed60864142076c9f146f Mon Sep 17 00:00:00 2001
+From: parazyd <para...@dyne.org>
+Date: Mon, 9 Apr 2018 17:13:21 +0200
+Subject: [PATCH 1/2] procio: Remove libio.h include.
+
+This is not needed and restores musl-libc compatibility.
+---
+ procio.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/procio.c b/procio.c
+index 479243e..ad9b4de 100644
+--- a/procio.c
++++ b/procio.c
+@@ -24,7 +24,6 @@
+ #endif
+ #include <errno.h>
+ #include <fcntl.h>
+-#include <libio.h>
+ #include <limits.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-- 
+2.17.0
+

diff --git 
a/sys-process/procps/files/procps-3.3.13-remove_unneeded_macros.patch 
b/sys-process/procps/files/procps-3.3.13-remove_unneeded_macros.patch
new file mode 100644
index 0000000..8471fa3
--- /dev/null
+++ b/sys-process/procps/files/procps-3.3.13-remove_unneeded_macros.patch
@@ -0,0 +1,38 @@
+From d8a2fd4dc00c88d739add2dc653a0e7cee8f9d2e Mon Sep 17 00:00:00 2001
+From: parazyd <para...@dyne.org>
+Date: Mon, 9 Apr 2018 17:14:27 +0200
+Subject: [PATCH 2/2] proc/numa: Remove unneeded macros.
+
+These macros break compatibility with musl-libc, and are not needed.
+---
+ proc/numa.h | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/proc/numa.h b/proc/numa.h
+index c198d9d..1b2b4eb 100644
+--- a/proc/numa.h
++++ b/proc/numa.h
+@@ -22,7 +22,9 @@
+ 
+ #include <features.h>
+ 
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+ 
+ void numa_init (void);
+ void numa_uninit (void);
+@@ -30,6 +32,8 @@ void numa_uninit (void);
+ extern int (*numa_max_node) (void);
+ extern int (*numa_node_of_cpu) (int);
+ 
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+ 
+ #endif
+-- 
+2.17.0
+

diff --git a/sys-process/procps/files/procps-3.3.8-kill-neg-pid.patch 
b/sys-process/procps/files/procps-3.3.8-kill-neg-pid.patch
new file mode 100644
index 0000000..0039748
--- /dev/null
+++ b/sys-process/procps/files/procps-3.3.8-kill-neg-pid.patch
@@ -0,0 +1,46 @@
+From 396cbc4cf36166217d877e2ff7e0a290758b0bc2 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vap...@gentoo.org>
+Date: Thu, 27 Jun 2013 18:37:17 -0400
+Subject: [PATCH] kill: fix -PID handling
+
+Commit 19b6f48990b02aeca211b480625b95b2033c1017 tried to fix -PID
+handling, but the new logic ends up skipping over the arg.  This is
+because getopt increments optind after it processed the -PID (even
+though it was an unknown option).  We need to decrement it by one
+so the loop at the end of the code will process it for us.
+
+I also fixed some whitespace errors in that same commit.
+
+URL: http://code.google.com/p/chromium/issues/detail?id=255209
+Signed-off-by: Mike Frysinger <vap...@gentoo.org>
+---
+ skill.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/skill.c b/skill.c
+index fb57305..074c5d7 100644
+--- a/skill.c
++++ b/skill.c
+@@ -390,7 +390,7 @@ static void __attribute__ ((__noreturn__))
+       else
+               sigopt++;
+ 
+-      opterr=0; /* suppress errors on -123 */
++      opterr = 0; /* suppress errors on -123 */
+       while (loop == 1 && (i = getopt_long(argc, argv, "l::Ls:hV", longopts, 
NULL)) != -1)
+               switch (i) {
+               case 'l':
+@@ -423,7 +423,9 @@ static void __attribute__ ((__noreturn__))
+                               xwarnx(_("invalid argument %c"), optopt);
+                               kill_usage(stderr);
+                       }
+-                      loop=0;
++                      /* We need to back off by one since getopt() ate the 
-PID */
++                      --optind;
++                      loop = 0;
+                       break;
+               default:
+                       kill_usage(stderr);
+-- 
+1.8.2.1
+

diff --git a/sys-process/procps/metadata.xml b/sys-process/procps/metadata.xml
new file mode 100644
index 0000000..263e639
--- /dev/null
+++ b/sys-process/procps/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+<maintainer type="project">
+       <email>base-sys...@gentoo.org</email>
+       <name>Gentoo Base System</name>
+</maintainer>
+<use>
+       <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session 
tracking.</flag>
+       <flag name="kill">Build the kill program</flag>
+       <flag name="modern-top">Enables new startup defaults of top. Keeps old 
defaults if disabled</flag>
+       <flag name="ncurses">Build programs that use ncurses: top, slabtop, 
watch</flag>
+</use>
+<upstream>
+       <remote-id type="sourceforge">procps</remote-id>
+</upstream>
+</pkgmetadata>

diff --git a/sys-process/procps/procps-3.3.13.ebuild 
b/sys-process/procps/procps-3.3.13.ebuild
new file mode 100644
index 0000000..bc1799b
--- /dev/null
+++ b/sys-process/procps/procps-3.3.13.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="standard informational utilities and process-handling tools"
+HOMEPAGE="http://procps-ng.sourceforge.net/ 
https://gitlab.com/procps-ng/procps";
+SRC_URI="mirror://sourceforge/${PN}-ng/${PN}-ng-${PV}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0/5" # libprocps.so
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="elogind +kill modern-top +ncurses nls selinux static-libs systemd test 
unicode"
+
+COMMON_DEPEND="
+       elogind? ( sys-auth/elogind )
+       ncurses? ( >=sys-libs/ncurses-5.7-r7:=[unicode?] )
+       selinux? ( sys-libs/libselinux )
+       systemd? ( sys-apps/systemd )
+"
+DEPEND="${COMMON_DEPEND}
+       elogind? ( virtual/pkgconfig )
+       ncurses? ( virtual/pkgconfig )
+       systemd? ( virtual/pkgconfig )
+       test? ( dev-util/dejagnu )"
+RDEPEND="
+       ${COMMON_DEPEND}
+       kill? (
+               !sys-apps/coreutils[kill]
+               !sys-apps/util-linux[kill]
+       )
+       !<sys-apps/sysvinit-2.88-r6
+"
+
+S="${WORKDIR}/${PN}-ng-${PV}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.3.8-kill-neg-pid.patch # http://crbug.com/255209
+       "${FILESDIR}"/${PN}-3.3.11-sysctl-manpage.patch # 565304
+       "${FILESDIR}"/${PN}-3.3.12-proc-tests.patch # 583036
+       "${FILESDIR}"/${PN}-3.3.13-remove_libio_h.patch
+       "${FILESDIR}"/${PN}-3.3.13-remove_unneeded_macros.patch
+
+       # Upstream fixes
+)
+
+src_configure() {
+       # 
http://www.freelists.org/post/procps/PATCH-enable-transparent-large-file-support
+       append-lfs-flags #471102
+       local myeconfargs=(
+               --docdir='$(datarootdir)'/doc/${PF}
+               $(use_with elogind)
+               $(use_enable kill)
+               $(use_enable modern-top)
+               $(use_with ncurses)
+               $(use_enable nls)
+               $(use_enable selinux libselinux)
+               $(use_enable static-libs static)
+               $(use_with systemd)
+               $(use_enable unicode watch8bit)
+       )
+       econf "${myeconfargs[@]}"
+}
+
+src_test() {
+       emake check </dev/null #461302
+}
+
+src_install() {
+       default
+       #dodoc sysctl.conf
+
+       dodir /bin
+       mv "${ED%/}"/usr/bin/ps "${ED%/}"/bin/ || die
+       if use kill; then
+               mv "${ED%/}"/usr/bin/kill "${ED}"/bin/ || die
+       fi
+
+       gen_usr_ldscript -a procps
+       find "${D}" -name '*.la' -delete || die
+}

Reply via email to