Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
1.4 kB · 41 lines
Nix
123456789101112131415161718192021222324252627282930313233343536373839404142{ glibc, perl }:
# Small wrapper which only exposes `mtrace(3)` from `glibc`. This can't be placed# into `glibc` itself because it depends on Perl which would mean that the final# `glibc` inside a stdenv bootstrap has a dependency `glibc -> perl -> bootstrap tools`,# so this is now in its own package that isn't used for bootstrapping.## `glibc` needs to be overridden here because it's still needed to `./configure` the source in order# to have a build environment where we can call the needed make target.
glibc.overrideAttrs (oldAttrs: { pname = "glibc-mtrace";
buildPhase = '' runHook preBuild
mkdir malloc make -C ../glibc-${glibc.minorRelease}/malloc objdir=`pwd` `pwd`/malloc/mtrace;
runHook postBuild '';
installPhase = '' mkdir -p $out/bin mv malloc/mtrace $out/bin/ '';
# Perl checked during configure nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ perl ]; # Perl shebang used for `mtrace`. buildInputs = oldAttrs.buildInputs ++ [ perl ];
# Reset a few things declared by `pkgs.glibc`. outputs = [ "out" ]; separateDebugInfo = false;
meta = oldAttrs.meta // { description = "Perl script used to interpret and provide human readable output of the trace log contained in the file mtracedata, whose contents were produced by mtrace(3)"; mainProgram = "mtrace"; };})