anchor.diff:  , buildTools ? [], libraryToolDepends ? [], executableToolDepends ? [], testToolDepends ? [], benchmarkToolDepends ? []
   , configureFlags ? []
   , description ? ""
  -, doCheck ? !isCross && (stdenv.lib.versionOlder "7.4" ghc.version)
  +, doCheck ? !isCross && stdenv.lib.versionOlder "7.4" ghc.version
   , doBenchmark ? false
   , doHoogle ? true
   , editedCabalFile ? null
  
positive.code: // optionalAttrs (postConfigure != "")  { inherit postConfigure; }
  // optionalAttrs (preBuild != "")       { inherit preBuild; }
  // optionalAttrs (postBuild != "")      { inherit postBuild; }
  // optionalAttrs (doCheck)              { inherit doCheck; }
  // optionalAttrs (doBenchmark)          { inherit doBenchmark; }
  // optionalAttrs (checkPhase != "")     { inherit checkPhase; }
  // optionalAttrs (preCheck != "")       { inherit preCheck; }
  
negative.code:     runHook postBuild
    '';
  
    inherit doCheck;
  
    checkPhase = ''
      runHook preCheck
      ${setupCommand} test ${testTarget}
  