nixpkgs/pkgs/development/tools/misc/strace/default.nix

33 lines
1.0 KiB
Nix

{ stdenv, fetchurl, perl, libunwind, buildPackages }:
stdenv.mkDerivation rec {
pname = "strace";
version = "5.8";
src = fetchurl {
url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
sha256 = "1abs3svkg9985f4jrxx34sj1dcpsf95vv1a0g01c777zgygncjnz";
};
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ perl ];
buildInputs = [ perl.out ] ++ stdenv.lib.optional libunwind.supportsHost libunwind; # support -k
postPatch = "patchShebangs --host strace-graph";
configureFlags = stdenv.lib.optional (!stdenv.hostPlatform.isx86) "--enable-mpers=check";
# fails 1 out of 523 tests with
# "strace-k.test: failed test: ../../strace -e getpid -k ../stack-fcall output mismatch"
doCheck = false;
meta = with stdenv.lib; {
homepage = "https://strace.io/";
description = "A system call tracer for Linux";
license = with licenses; [ lgpl21Plus gpl2Plus ]; # gpl2Plus is for the test suite
platforms = platforms.linux;
maintainers = with maintainers; [ globin ];
};
}