diff options
Diffstat (limited to 'sys-process')
-rw-r--r-- | sys-process/procps/Manifest | 2 | ||||
-rw-r--r-- | sys-process/procps/files/procps-3.3.12-elogind.patch | 265 | ||||
-rw-r--r-- | sys-process/procps/procps-3.3.12-r1.ebuild | 99 |
3 files changed, 366 insertions, 0 deletions
diff --git a/sys-process/procps/Manifest b/sys-process/procps/Manifest index 564de670..90504891 100644 --- a/sys-process/procps/Manifest +++ b/sys-process/procps/Manifest @@ -1,4 +1,5 @@ AUX procps-3.3.11-sysctl-manpage.patch 941 SHA256 1582675083410838e844e0f4f5b2da5835bb9653aadba42bea0b0f7002dc13d4 SHA512 df8b233bde879fa675742baf8b38d43dd7c306fe52013ace715dff02c126d8c5ea12bd93087da10f5e722294eef59577b264309cbdc6f9f3727fa7111c5db313 WHIRLPOOL dce1e4758eac97eee568acfaeb324b980c7786ffe021ee542b5495c1807e35549c45af03c897a5063f8d8f48395189c29ab014b82ee0961bf792d3ff6e739c8e +AUX procps-3.3.12-elogind.patch 8365 SHA256 6e5a2da7d9601a435c91d985e631015242b9a6763967f73ae4215b50b2f8dfea SHA512 090f523c1b06e60cb82e4b73a29fa192b164923315dcba0d1511e454ee06d0616ba4a2c3b2b5a62048fb289ff4ae81c36920c77177cce09ceda06be019efa271 WHIRLPOOL 92c487a35d9e5342a9cde0f025e8a72c47ad61e5b7abcfeefbb918862c676604e0c023d46087d3c6458e7e4ea2f3c05558ba7483c5a5d638cf80bc8fb70baa3b AUX procps-3.3.12-proc-tests.patch 1835 SHA256 a5e2be31c76f03be1ffe9c751286a617f94ede14173626e36bef793dcadec821 SHA512 ecc94717366a314ac4bba550b84472555f7b217be2174b68778d3364e16586ab9c21756d2041e2ac9d1449856fcd6aa691d8bd1a8558b4653d068dc1d59c2c71 WHIRLPOOL a698f3cdfcbcd9ea797febe92f6f185b424cc81d98aca6a734aafaf398901ac8b83a6be00d90dc727c23a7a39f6f8e344414fd1f8897826a4d5e9417e998291f AUX procps-3.3.12-strtod_nol_err.patch 3328 SHA256 37e5343596b99c609c3b64f763ad6b9c18d67ef1f3be9386b46fc9520055d21c SHA512 00618dcf62dd2c054060eb9cef223ab8d7d93a53649fc8d0cc8251d5763e98deca97433d0017f0118dcce9d4c920ccf0a60998865efb569544e1fa47cb1c11b3 WHIRLPOOL 6f5a6e2f1ebf137df3e71da4410b076323a119691bafd834a9d9e82e1939f53455f7d65a91c99a3bc362edee13fc19f5a9cb772858c807078b6451a4ba33172f AUX procps-3.3.8-kill-neg-pid.patch 1446 SHA256 847c21f6619c7aa0f2847726a17595f986ec2fe0f361d95e17812639abe32a79 SHA512 3ed4e83d81f7dd574ff68bbcae9ad9f8649a39d46a17de5fd4297f215d8f70cd28e415b1d3c7b5142e7719343af28f4b393061a60eb012caece81dfe5ff6c271 WHIRLPOOL cf452118312e60a0bab7a4ec87bed9a9d2f5fb8bb563769a0430f11c72348e5be79bdfc031f67f4e97e0bf9b32f6ccd1ac590f392c95ee935b77b857ce1b1739 @@ -6,4 +7,5 @@ DIST procps-3.3.11-remove_Unix98_output_limits.patch 7582 SHA256 0801b971c630d2d DIST procps-ng-3.3.11.tar.xz 815920 SHA256 e9493169a2d2adc0bc045538707310c8e877b385e4e296143b62607d2bb044ed SHA512 8ab4770adeba4c7e3cf75bc189278cf7a162ece0f23b862e7f726faccee11bd4524aec622b895f3b4e0b272a739a327a01e91f48834feea513544f0515b250df WHIRLPOOL 1da50ec4e8be9d76086a1112b00eea0daa39a7e579e846b92c12fea23a8303a7287e2d32d41feae93aad7b138768852b004544731fff882236ee3bd9511154ff DIST procps-ng-3.3.12.tar.xz 845484 SHA256 6ed65ab86318f37904e8f9014415a098bec5bc53653e5d9ab404f95ca5e1a7d4 SHA512 ea816740ff72cc53d99b5d2e78a511b627ea5b295e0efff67605c56d1ab075abc6b0e2da3df4facbfe903fc9d679e892d351b6884a966d37c6f4bfd9141a924b WHIRLPOOL f6ff034c09224fb819cdadc0fc6e456a5e11bffa298a7d005a1089378a6bf19c464bb09d278618daecebcd02228d831efbe4d65a4f9f850f83c9dd030a3ab98b EBUILD procps-3.3.11-r3.ebuild 2292 SHA256 eee8674898c6822b0fae800385a635ed64377bd44327026664dc87bb578e9418 SHA512 aff784c7b16c27e47611ed3061a8299b69e7dd07b314d824042dba306ba8fa3da6fdd1c82c4c8b03dd75b4619f10c6780984f59a0498249604f59cd2022580de WHIRLPOOL 1c3b98b93953f9ff068636cd2230fad578c52b240e4357d380c2e7ad025067340918801d444ca0a107b1444cf30c2bc27c4bd9bf3107d13dc92fd076061c8a69 +EBUILD procps-3.3.12-r1.ebuild 2490 SHA256 64206942766a3f6ae905d744fb77033365d1ab85c8adf5477a4ccf042ac0384d SHA512 56881282b18ca24ff1fedf1462fa0e3031aefe1e22ab70c3750a2d4cd09a4a1992e923b5b916eeb6c019e2fb632b1aa893921d56b8c713ce5513d2dea186fbdd WHIRLPOOL de012622c398cf3c4301fe5747186b794fc9d3b8a357f2492b687a74e7f0cea8dc3fd2142d2b89e9532407f0562f3f39222f8d87d39825e3fa8505aedf54d2aa EBUILD procps-3.3.12.ebuild 2193 SHA256 dcf5d6d0e65d5cfcd0d80779e0e3403845cf677f1c1f6eb59509d1665290788d SHA512 aff6492e0e9613dbbcea48f1e234363a8fbc5bedec3341c0392adb88ded05e6b33d10662228194ce5b7afb1130052942c496009285b05a8aa8db1a6bde1beee7 WHIRLPOOL d00d7bbcd35f0be7c3df9e3480a7a63e7e04a77bb6fdae7a3cb3b50f92b8f0f9c0f1e1b1a6adc805908cc091e67a1e6487e83650e5f7877ba9fc6d442aa497da diff --git a/sys-process/procps/files/procps-3.3.12-elogind.patch b/sys-process/procps/files/procps-3.3.12-elogind.patch new file mode 100644 index 00000000..07c16531 --- /dev/null +++ b/sys-process/procps/files/procps-3.3.12-elogind.patch @@ -0,0 +1,265 @@ +--- procps-ng-3.3.12/configure 2016-07-10 07:32:09.862265237 +0200 ++++ procps-ng-3.3.12/configure 2016-07-10 07:32:09.862265237 +0200 +@@ -650,6 +650,10 @@ + BUILD_KILL_TRUE + BUILD_PIDOF_FALSE + BUILD_PIDOF_TRUE ++WITH_ELOGIND_FALSE ++WITH_ELOGIND_TRUE ++ELOGIND_LIBS ++ELOGIND_CFLAGS + WITH_SYSTEMD_FALSE + WITH_SYSTEMD_TRUE + SYSTEMD_LIBS +@@ -815,6 +819,7 @@ + enable_libselinux + with_ncurses + with_systemd ++with_elogind + enable_pidof + enable_kill + enable_skill +@@ -845,7 +850,9 @@ + NCURSESW_CFLAGS + NCURSESW_LIBS + SYSTEMD_CFLAGS +-SYSTEMD_LIBS' ++SYSTEMD_LIBS ++ELOGIND_CFLAGS ++ELOGIND_LIBS' + + + # Initialize some variables set by options. +@@ -1521,6 +1528,7 @@ + --without-libintl-prefix don't search for libintl in includedir and libdir + --without-ncurses build only applications not needing ncurses + --with-systemd enable systemd support ++ --with-elogind enable elogind support + + Some influential environment variables: + CC C compiler command +@@ -1550,6 +1558,10 @@ + C compiler flags for SYSTEMD, overriding pkg-config + SYSTEMD_LIBS + linker flags for SYSTEMD, overriding pkg-config ++ ELOGIND_CFLAGS ++ C compiler flags for ELOGIND, overriding pkg-config ++ ELOGIND_LIBS ++ linker flags for ELOGIND, overriding pkg-config + + Use these variables to override the choices made by `configure' or to help + it to find libraries and programs with nonstandard names/locations. +@@ -17295,6 +17307,127 @@ + fi + + ++ ++# Check whether --with-elogind was given. ++if test "${with_elogind+set}" = set; then : ++ withval=$with_elogind; ++else ++ with_elogind=no ++ ++fi ++ ++# Do not allow elogind if systemd is wanted and found ++if test "x$with_systemd" != "xno"; then : ++ with_elogind=no ++fi ++ ++if test "x$with_elogind" != "xno"; then : ++ ++ ++pkg_failed=no ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libelogind" >&5 ++$as_echo_n "checking for libelogind... " >&6; } ++ ++if test -n "$ELOGIND_CFLAGS"; then ++ pkg_cv_ELOGIND_CFLAGS="$ELOGIND_CFLAGS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libelogind\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libelogind") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_ELOGIND_CFLAGS=`$PKG_CONFIG --cflags "libelogind" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++if test -n "$ELOGIND_LIBS"; then ++ pkg_cv_ELOGIND_LIBS="$ELOGIND_LIBS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libelogind\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libelogind") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_ELOGIND_LIBS=`$PKG_CONFIG --libs "libelogind" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++ ++ ++ ++if test $pkg_failed = yes; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi ++ if test $_pkg_short_errors_supported = yes; then ++ ELOGIND_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libelogind" 2>&1` ++ else ++ ELOGIND_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libelogind" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$ELOGIND_PKG_ERRORS" >&5 ++ ++ as_fn_error $? "Package requirements (libelogind) were not met: ++ ++$ELOGIND_PKG_ERRORS ++ ++Consider adjusting the PKG_CONFIG_PATH environment variable if you ++installed software in a non-standard prefix. ++ ++Alternatively, you may set the environment variables ELOGIND_CFLAGS ++and ELOGIND_LIBS to avoid the need to call pkg-config. ++See the pkg-config man page for more details." "$LINENO" 5 ++elif test $pkg_failed = untried; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it ++is in your PATH or set the PKG_CONFIG environment variable to the full ++path to pkg-config. ++ ++Alternatively, you may set the environment variables ELOGIND_CFLAGS ++and ELOGIND_LIBS to avoid the need to call pkg-config. ++See the pkg-config man page for more details. ++ ++To get pkg-config, see <http://pkg-config.freedesktop.org/>. ++See \`config.log' for more details" "$LINENO" 5; } ++else ++ ELOGIND_CFLAGS=$pkg_cv_ELOGIND_CFLAGS ++ ELOGIND_LIBS=$pkg_cv_ELOGIND_LIBS ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++$as_echo "yes" >&6; } ++ ++fi ++ ++$as_echo "#define WITH_ELOGIND 1" >>confdefs.h ++ ++ ++fi ++ if test x$with_elogind != xno; then ++ WITH_ELOGIND_TRUE= ++ WITH_ELOGIND_FALSE='#' ++else ++ WITH_ELOGIND_TRUE='#' ++ WITH_ELOGIND_FALSE= ++fi ++ ++ + # AC_ARG_ENABLEs + # Check whether --enable-pidof was given. + if test "${enable_pidof+set}" = set; then : +@@ -17712,6 +17845,10 @@ + as_fn_error $? "conditional \"WITH_SYSTEMD\" was never defined. + Usually this means the macro was only invoked conditionally." "$LINENO" 5 + fi ++if test -z "${WITH_ELOGIND_TRUE}" && test -z "${WITH_ELOGIND_FALSE}"; then ++ as_fn_error $? "conditional \"WITH_ELOGIND\" was never defined. ++Usually this means the macro was only invoked conditionally." "$LINENO" 5 ++fi + if test -z "${BUILD_PIDOF_TRUE}" && test -z "${BUILD_PIDOF_FALSE}"; then + as_fn_error $? "conditional \"BUILD_PIDOF\" was never defined. + Usually this means the macro was only invoked conditionally." "$LINENO" 5 +--- procps-ng-3.3.12/configure.ac 2016-07-09 23:49:25.817307031 +0200 ++++ procps-ng-3.3.12/configure.ac 2016-07-09 23:49:25.817307031 +0200 +@@ -155,6 +155,19 @@ + ]) + AM_CONDITIONAL([WITH_SYSTEMD], [test x$with_systemd != xno]) + ++AC_ARG_WITH([elogind], ++ [AS_HELP_STRING([--with-elogind], [enable elogind support])], ++ [], [with_elogind=no] ++) ++# Do not allow elogind if systemd is wanted and found ++AS_IF([test "x$with_systemd" != "xno"], [with_elogind=no]) ++ ++AS_IF([test "x$with_elogind" != "xno"], [ ++ PKG_CHECK_MODULES([ELOGIND], [libelogind]) ++ AC_DEFINE(WITH_ELOGIND, 1, [enable elogind support]) ++]) ++AM_CONDITIONAL([WITH_ELOGIND], [test x$with_elogind != xno]) ++ + # AC_ARG_ENABLEs + AC_ARG_ENABLE([pidof], + AS_HELP_STRING([--disable-pidof], [do not build pidof]), +--- procps-ng-3.3.12/Makefile.am 2016-07-10 00:40:44.235121270 +0200 ++++ procps-ng-3.3.12/Makefile.am 2016-07-10 00:40:44.235121270 +0200 +@@ -155,6 +155,10 @@ + proc_libprocps_la_LIBADD += @SYSTEMD_LIBS@ + endif + ++if WITH_ELOGIND ++proc_libprocps_la_LIBADD += @ELOGIND_LIBS@ ++endif ++ + proc_libprocps_la_LDFLAGS = \ + -version-info $(LIBprocps_CURRENT):$(LIBprocps_REVISION):$(LIBprocps_AGE) \ + -no-undefined \ +--- procps-ng-3.3.12/Makefile.in 2016-07-10 07:32:11.170237828 +0200 ++++ procps-ng-3.3.12/Makefile.in 2016-07-10 07:32:11.170237828 +0200 +@@ -126,6 +126,7 @@ + @BUILD_SKILL_FALSE@ snice.1 + + @WITH_SYSTEMD_TRUE@am__append_14 = @SYSTEMD_LIBS@ ++@WITH_ELOGIND_TRUE@am__append_15 = @ELOGIND_LIBS@ + TESTS = lib/test_strtod_nol$(EXEEXT) + check_PROGRAMS = $(am__EXEEXT_5) + noinst_PROGRAMS = lib/test_strutils$(EXEEXT) \ +@@ -688,6 +689,8 @@ + ECHO_N = @ECHO_N@ + ECHO_T = @ECHO_T@ + EGREP = @EGREP@ ++ELOGIND_CFLAGS = @ELOGIND_CFLAGS@ ++ELOGIND_LIBS = @ELOGIND_LIBS@ + EXEEXT = @EXEEXT@ + FGREP = @FGREP@ + GMSGFMT = @GMSGFMT@ +--- procps-ng-3.3.12/proc/readproc.c 2016-07-09 23:49:25.825306872 +0200 ++++ procps-ng-3.3.12/proc/readproc.c 2016-07-09 23:49:25.825306872 +0200 +@@ -40,6 +40,9 @@ + #ifdef WITH_SYSTEMD + #include <systemd/sd-login.h> + #endif ++#ifdef WITH_ELOGIND ++#include <elogind/sd-login.h> ++#endif + + // sometimes it's easier to do this manually, w/o gcc helping + #ifdef PROF +@@ -518,7 +521,7 @@ + } + + static void sd2proc(proc_t *restrict p) { +-#ifdef WITH_SYSTEMD ++#if defined(WITH_SYSTEMD) || defined(WITH_ELOGIND) + char buf[64]; + uid_t uid; + diff --git a/sys-process/procps/procps-3.3.12-r1.ebuild b/sys-process/procps/procps-3.3.12-r1.ebuild new file mode 100644 index 00000000..661e905e --- /dev/null +++ b/sys-process/procps/procps-3.3.12-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit epatch 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 + + # Upstream fixes + "${FILESDIR}"/${P}-strtod_nol_err.patch +) + +src_prepare() { + epatch "${PATCHES[@]}" + + # Requires special handling or autoreconf gets triggered which we don't + # want to happen in a base-system package. + EPATCH_OPTS="-Z" \ + epatch "${FILESDIR}"/${PN}-3.3.12-elogind.patch # 599504 + + epatch_user +} + +src_configure() { + # http://www.freelists.org/post/procps/PATCH-enable-transparent-large-file-support + append-lfs-flags #471102 + econf \ + --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) +} + +src_test() { + emake check </dev/null #461302 +} + +src_install() { + local binary + + default + #dodoc sysctl.conf + + dodir /bin + for binary in pidof ps; do + mv "${ED}"/usr/bin/"${binary}" "${ED}"/bin/ || die + done + if use kill; then + mv "${ED}"/usr/bin/kill "${ED}"/bin/ || die + fi + dodir /sbin + for binary in sysctl; do + mv "${ED}"/usr/sbin/"${binary}" "${ED}"/sbin/ || die + done + + gen_usr_ldscript -a procps + find "${D}" -name '*.la' -delete || die +} |