aboutsummaryrefslogtreecommitdiff
path: root/build2/context.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-01-31 15:17:28 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-02-13 12:42:41 +0200
commit9d6583056a82829f4512e6ba6a471a9b3e86a4a5 (patch)
tree45de2e29a509eb2404c4bd26ccf9cc4baa8cb782 /build2/context.cxx
parentb5e5368e59e038503d3c22e3ed9cbc24c0d99253 (diff)
Redo variable pattern-typing to match in more specific order
Diffstat (limited to 'build2/context.cxx')
-rw-r--r--build2/context.cxx20
1 files changed, 12 insertions, 8 deletions
diff --git a/build2/context.cxx b/build2/context.cxx
index a326002..466db0d 100644
--- a/build2/context.cxx
+++ b/build2/context.cxx
@@ -237,19 +237,23 @@ namespace build2
// Enter builtin variables and patterns.
//
- // file.cxx:import()
+ // All config. variables are by default overridable.
//
- // Note that the order is important (reverse application).
+ vp.insert_pattern ("config.**", nullopt, true, nullopt, true, false);
+
+ // file.cxx:import() (note that order is important; see insert_pattern()).
//
- vp.insert_pattern<path> ("config.import.**", true);
- vp.insert_pattern<abs_dir_path> ("config.import.*", true);
+ vp.insert_pattern<abs_dir_path> (
+ "config.import.*", true, variable_visibility::normal, true);
+ vp.insert_pattern<path> (
+ "config.import.**", true, variable_visibility::normal, true);
// module.cxx:load_module().
//
- vp.insert_pattern<bool> ("**.loaded", false, variable_visibility::project);
- vp.insert_pattern<bool> ("**.configured",
- false,
- variable_visibility::project);
+ vp.insert_pattern<bool> (
+ "**.loaded", false, variable_visibility::project);
+ vp.insert_pattern<bool> (
+ "**.configured", false, variable_visibility::project);
var_src_root = &vp.insert<dir_path> ("src_root");
var_out_root = &vp.insert<dir_path> ("out_root");