aboutsummaryrefslogtreecommitdiff
path: root/build/context.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-08-14 15:48:34 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-08-14 15:48:34 +0200
commit47bf5cd6a167730ee06a1c7cffeae6540f67dde0 (patch)
tree7c9c07d33b41be75d1a5d6ec40c153beda2a2a19 /build/context.cxx
parentf62ff2e840fd92a03b4a3298de938d426f8b5c7a (diff)
Rework meta/operation registration
We now have global tables for meta/operation. Plus each can then be enabled on the per-project basis.
Diffstat (limited to 'build/context.cxx')
-rw-r--r--build/context.cxx15
1 files changed, 15 insertions, 0 deletions
diff --git a/build/context.cxx b/build/context.cxx
index e8ecf74..259c6ea 100644
--- a/build/context.cxx
+++ b/build/context.cxx
@@ -40,6 +40,21 @@ namespace build
scopes.clear ();
variable_pool.clear ();
+ // Reset meta/operation tables. Note that the order should match
+ // the id constants in <build/operation>.
+ //
+ meta_operation_table.clear ();
+ meta_operation_table.insert ("perform");
+ meta_operation_table.insert ("configure");
+ meta_operation_table.insert ("disfigure");
+
+ operation_table.clear ();
+ operation_table.insert ("default");
+ operation_table.insert ("update");
+ operation_table.insert ("clean");
+ operation_table.insert ("test");
+ operation_table.insert ("install");
+
// Enter builtin variables.
//
variable_pool.insert (variable ("subprojects", '='));