* Creating a file nix-support/no-scan in the output path of a

derivation disables scanning for dependencies.  Use at your own
  risk.  This is a quick hack to speed up UML image generation (image
  are very big, say 1 GB).

  It would be better if the scanner were faster, and didn't read the
  whole file into memory.
This commit is contained in:
Eelco Dolstra 2004-08-04 09:25:21 +00:00
parent 18ebd7b030
commit e3a50f7e25
2 changed files with 6 additions and 3 deletions

View file

@ -1049,8 +1049,11 @@ void NormalisationGoal::createClosure()
in it. */
startNest(nest2, lvlChatty,
format("scanning for store references in `%1%'") % path);
Strings refPaths = filterReferences(path,
Strings(allPaths.begin(), allPaths.end()));
Strings refPaths;
if (!pathExists(path + "/nix-support/no-scan")) {
refPaths = filterReferences(path,
Strings(allPaths.begin(), allPaths.end()));
}
nest2.close();
/* Construct a closure element for this output path. */

View file

@ -115,7 +115,7 @@ bool pathExists(const Path & path)
struct stat st;
res = lstat(path.c_str(), &st);
if (!res) return true;
if (errno != ENOENT)
if (errno != ENOENT && errno != ENOTDIR)
throw SysError(format("getting status of %1%") % path);
return false;
}