diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2019-08-22 14:38:57 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2019-08-22 16:16:32 +0200 |
commit | 4f5b6cb7ed4e05e98cce7e692462f49e24b7a39a (patch) | |
tree | 4184fa33e116ec74747feec0c15e30219c7d087b /build2/cli | |
parent | 739f68b9e45c925ccc5a28b9b796030272575e2b (diff) |
Targets, scopes, vars
Diffstat (limited to 'build2/cli')
-rw-r--r-- | build2/cli/init.cxx | 2 | ||||
-rw-r--r-- | build2/cli/rule.cxx | 4 | ||||
-rw-r--r-- | build2/cli/target.cxx | 11 |
3 files changed, 9 insertions, 8 deletions
diff --git a/build2/cli/init.cxx b/build2/cli/init.cxx index 6d20aa0..2e553f7 100644 --- a/build2/cli/init.cxx +++ b/build2/cli/init.cxx @@ -43,7 +43,7 @@ namespace build2 // if (first) { - auto& v (var_pool.rw (rs)); + auto& v (rs.ctx.var_pool.rw (rs)); // Note: some overridable, some not. // diff --git a/build2/cli/rule.cxx b/build2/cli/rule.cxx index f6bebee..f6c0763 100644 --- a/build2/cli/rule.cxx +++ b/build2/cli/rule.cxx @@ -112,7 +112,7 @@ namespace build2 // Check if there is a corresponding cli.cxx{} group. // - const cli_cxx* g (targets.find<cli_cxx> (t.dir, t.out, t.name)); + const cli_cxx* g (t.ctx.targets.find<cli_cxx> (t.dir, t.out, t.name)); // If not or if it has no prerequisites (happens when we use it to // set cli.options) and this target has a cli{} prerequisite, then @@ -124,7 +124,7 @@ namespace build2 prerequisite_members (a, t))) { if (g == nullptr) - g = &targets.insert<cli_cxx> (t.dir, t.out, t.name, trace); + g = &t.ctx.targets.insert<cli_cxx> (t.dir, t.out, t.name, trace); g->prerequisites (prerequisites {p->as_prerequisite ()}); } diff --git a/build2/cli/target.cxx b/build2/cli/target.cxx index 096295a..caa12b0 100644 --- a/build2/cli/target.cxx +++ b/build2/cli/target.cxx @@ -45,7 +45,8 @@ namespace build2 } static target* - cli_cxx_factory (const target_type&, dir_path d, dir_path o, string n) + cli_cxx_factory (context& ctx, + const target_type&, dir_path d, dir_path o, string n) { tracer trace ("cli::cli_cxx_factory"); @@ -55,11 +56,11 @@ namespace build2 // // Also required for the src-out remapping logic. // - targets.insert<cxx::hxx> (d, o, n, trace); - targets.insert<cxx::cxx> (d, o, n, trace); - targets.insert<cxx::ixx> (d, o, n, trace); + ctx.targets.insert<cxx::hxx> (d, o, n, trace); + ctx.targets.insert<cxx::cxx> (d, o, n, trace); + ctx.targets.insert<cxx::ixx> (d, o, n, trace); - return new cli_cxx (move (d), move (o), move (n)); + return new cli_cxx (ctx, move (d), move (o), move (n)); } const target_type cli_cxx::static_type |