anchor.diff:  # script that sets up the right environment variables so that the
   # compiler and the linker just "work".
   
  -{ name ? "", stdenvNoCC, nativeTools, noLibc ? false, nativeLibc, nativePrefix ? ""
  +{ name ? ""
  +, stdenvNoCC, nativeTools, propagateDoc ? !nativeTools, noLibc ? false, nativeLibc, nativePrefix ? ""
   , bintools ? null, libc ? null
   , coreutils ? null, shell ? stdenvNoCC.shell, gnugrep ? null
   , extraPackages ? [], extraBuildCommands ? ""
  
positive.code:     '')
  
      + optionalString (!nativeTools) ''
  
        ##
        ## User env support
        ##
  
        # Propagate the underling unwrapped bintools so that if you
        # install the wrapper, you get tools like objdump, the manpages,
        # etc. as well (same for any binaries of libc).
        printWords ${bintools_bin} ${if libc == null then "" else libc_bin} > $out/nix-support/propagated-user-env-packages
  
        ##
        ## Man page and info support
        ##
  
        printWords ${bintools.info or ""} \
          >> $info/nix-support/propagated-build-inputs
        printWords ${bintools.man or ""} \
          >> $man/nix-support/propagated-build-inputs
      ''
  
      + ''
  
        ##
        ## Hardening support
        ##
  
negative.code: 
  with stdenvNoCC.lib;
  
  assert nativeTools -> !propagateDoc && nativePrefix != "";
  assert !nativeTools ->
    bintools != null && coreutils != null && gnugrep != null;
  assert !(nativeLibc && noLibc);
  