aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/store-api.hh
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2006-11-30 18:02:04 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2006-11-30 18:02:04 +0000
commit6ecb840fd118019f879de60007e13321b7c080d3 (patch)
tree29f9db5fbf0da0b3e08af282db1a0fedba81decf /src/libstore/store-api.hh
parente2ef5e07fdc142670f7f3161d3133ff04e99d342 (diff)
* Put building in the store API.
Diffstat (limited to 'src/libstore/store-api.hh')
-rw-r--r--src/libstore/store-api.hh13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh
index 91beba50f..abf27a346 100644
--- a/src/libstore/store-api.hh
+++ b/src/libstore/store-api.hh
@@ -72,6 +72,19 @@ public:
a regular file containing the given string. */
virtual Path addTextToStore(const string & suffix, const string & s,
const PathSet & references) = 0;
+
+ /* Ensure that the output paths of the derivation are valid. If
+ they are already valid, this is a no-op. Otherwise, validity
+ can be reached in two ways. First, if the output paths have
+ substitutes, then those can be used. Second, the output paths
+ can be created by running the builder, after recursively
+ building any sub-derivations. */
+ virtual void buildDerivations(const PathSet & drvPaths) = 0;
+
+ /* Ensure that a path is valid. If it is not currently valid, it
+ may be made valid by running a substitute (if defined for the
+ path). */
+ virtual void ensurePath(const Path & storePath) = 0;
};