procps: clarify compatibility

This commit is contained in:
Matthew Bauer 2018-07-08 19:19:01 -04:00
parent 8ab5cc3202
commit b802570fc2

View File

@ -1,4 +1,10 @@
{ lib, stdenv, fetchurl, ncurses, pkgconfig }:
{ lib, stdenv, fetchurl, ncurses, pkgconfig
# procps is mostly Linux-only. Most commands require a running Linux
# system (or very similar like that found in Cygwin). The one
# exception is watch which is portable enough to run on pretty much
# any UNIX-compatible system.
, watchOnly ? !(stdenv.isLinux || stdenv.isCygwin) }:
stdenv.mkDerivation rec {
name = "procps-${version}";
@ -14,7 +20,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ];
makeFlags = [ "usrbin_execdir=$(out)/bin" ]
++ lib.optionals stdenv.isDarwin [ "watch" "PKG_LDFLAGS="];
++ lib.optionals watchOnly [ "watch" "PKG_LDFLAGS="];
enableParallelBuilding = true;
@ -24,7 +30,7 @@ stdenv.mkDerivation rec {
[ "ac_cv_func_malloc_0_nonnull=yes"
"ac_cv_func_realloc_0_nonnull=yes" ];
installPhase = if stdenv.isDarwin then ''
installPhase = if watchOnly then ''
install -m 0755 -D watch $out/bin/watch
install -m 0644 -D watch.1 $out/share/man/man1/watch.1
'' else null;
@ -34,7 +40,7 @@ stdenv.mkDerivation rec {
description = "Utilities that give information about processes using the /proc filesystem";
priority = 10; # less than coreutils, which also provides "kill" and "uptime"
license = lib.licenses.gpl2;
platforms = lib.platforms.linux ++ lib.platforms.cygwin ++ lib.platforms.darwin;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.typetetris ];
};
}