aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/config/module.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'libbuild2/config/module.cxx')
-rw-r--r--libbuild2/config/module.cxx13
1 files changed, 11 insertions, 2 deletions
diff --git a/libbuild2/config/module.cxx b/libbuild2/config/module.cxx
index bf68c4e..713d30c 100644
--- a/libbuild2/config/module.cxx
+++ b/libbuild2/config/module.cxx
@@ -12,7 +12,9 @@ namespace build2
namespace config
{
bool module::
- save_variable (const variable& var, optional<uint64_t> flags)
+ save_variable (const variable& var,
+ optional<uint64_t> flags,
+ save_variable_function* save)
{
const string& n (var.name);
@@ -43,7 +45,7 @@ namespace build2
return false;
}
- sv.push_back (saved_variable {var, flags});
+ sv.push_back (saved_variable {var, flags, save});
return true;
}
@@ -54,6 +56,13 @@ namespace build2
m->save_variable (var, flags);
}
+ void module::
+ save_environment (scope& rs, const char* var)
+ {
+ if (module* m = rs.find_module<module> (module::name))
+ m->save_environment (var);
+ }
+
bool module::
save_module (const char* name, int prio)
{