Optimize multiple module loads

This commit is contained in:
Boris Kolpackov 2023-04-21 13:02:35 +02:00
parent 19cd67c1fa
commit f18022d006

View File

@ -19,13 +19,15 @@ namespace build2
init (scope& rs,
scope& bs,
const location& l,
bool,
bool first,
bool,
module_init_extra&)
{
tracer trace ("autoconf::init");
l5 ([&]{trace << "for " << bs;});
if (first)
{
// Load in.base (in.* variables, in{} target type).
//
load_module (rs, rs, "in.base", l);
@ -55,8 +57,8 @@ namespace build2
// Alias map. The key is the new name and the value is the aliased
// (old) name.
//
// Note that this map is only consulted when resolving build-in checks
// and the names should include the prefix, if any.
// Note that this map is only consulted when resolving build-in
// checks and the names should include the prefix, if any.
//
vp.insert<map<string, string>> ("autoconf.aliases");
}
@ -73,6 +75,7 @@ namespace build2
rs.insert_rule<file> (perform_update_id, "autoconf.in", rule_);
rs.insert_rule<file> (perform_clean_id, "autoconf.in", rule_);
rs.insert_rule<file> (configure_update_id, "autoconf.in", rule_);
}
return true;
}