diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2016-04-11 07:57:19 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2016-04-11 07:57:19 +0200 |
commit | 0342dc2fcdd78ef28a4e59d84193a3807068d726 (patch) | |
tree | e750c3062d6ff54f0d409fe1a25984b7e78592c8 /build2/config/module | |
parent | 5f7c3f923de106f9d204a8f3500274731ae84fd9 (diff) |
New configuration logic, iteration 1
Diffstat (limited to 'build2/config/module')
-rw-r--r-- | build2/config/module | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/build2/config/module b/build2/config/module index 5f3c826..6012442 100644 --- a/build2/config/module +++ b/build2/config/module @@ -5,21 +5,35 @@ #ifndef BUILD2_CONFIG_MODULE #define BUILD2_CONFIG_MODULE +#include <butl/prefix-map> + #include <build2/types> #include <build2/utility> #include <build2/module> +#include <build2/variable> namespace build2 { namespace config { + struct module: module_base + { + // A sorted list of config.* variables and flags (currently unused) that + // are used (as opposed to just specified) in this configuration. + // Populated by the config utility functions (required(), optional()) + // + butl::prefix_map<variable_cref, uint64_t, '.'> vars; + + static const string name; + }; + extern "C" void - config_boot (scope&, const location&, unique_ptr<module>&); + config_boot (scope&, const location&, unique_ptr<module_base>&); extern "C" bool config_init ( - scope&, scope&, const location&, unique_ptr<module>&, bool, bool); + scope&, scope&, const location&, unique_ptr<module_base>&, bool, bool); } } |