aboutsummaryrefslogtreecommitdiff
path: root/src/normalise.cc
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-07-21 20:07:12 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-07-21 20:07:12 +0000
commit249988a787d26046bf7b389594ff25029229e3d9 (patch)
tree6d44fafeb9979c0dee57706d8d0dcb64d9e13bc8 /src/normalise.cc
parent49231fbe419d37717b0d951377fbfc9bf445dd55 (diff)
* Allow the output/expression id to be forced to a certain
value; this potentially dangerous feature enables better sharing for those paths for which the content is known in advance (e.g., because a content hash is given). * Fast builds: if we can expand all output paths of a derive expression, we don't have to build.
Diffstat (limited to 'src/normalise.cc')
-rw-r--r--src/normalise.cc7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/normalise.cc b/src/normalise.cc
index fcb9c4d0d..d06c8bf36 100644
--- a/src/normalise.cc
+++ b/src/normalise.cc
@@ -88,19 +88,18 @@ Slice normaliseFState(FSId id)
/* We can skip running the builder if we can expand all output
paths from their ids. */
- bool fastBuild = false;
-#if 0
+ bool fastBuild = true;
for (OutPaths::iterator i = outPaths.begin();
i != outPaths.end(); i++)
{
try {
expandId(i->second, i->first);
- } catch (...) {
+ } catch (Error & e) {
+ debug(format("fast build failed: %1%") % e.what());
fastBuild = false;
break;
}
}
-#endif
if (!fastBuild) {