aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/bash
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2019-08-22 14:38:57 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2019-08-23 18:14:07 +0200
commit5035f4ef68922ac758b1e4734e67d73c9228010b (patch)
tree271fdd5b1d6e995a058d97aacb3ac90a538d9ff1 /libbuild2/bash
parent8793941652d6aa1c3d02b2f87f691e6d06254b7d (diff)
Introduce notion of build context
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time.
Diffstat (limited to 'libbuild2/bash')
-rw-r--r--libbuild2/bash/rule.cxx16
-rw-r--r--libbuild2/bash/target.cxx4
2 files changed, 10 insertions, 10 deletions
diff --git a/libbuild2/bash/rule.cxx b/libbuild2/bash/rule.cxx
index d9bf857..2f2de2d 100644
--- a/libbuild2/bash/rule.cxx
+++ b/libbuild2/bash/rule.cxx
@@ -157,13 +157,13 @@ namespace build2
if (mt != timestamp_nonexistent)
{
- auto rp (targets.insert_locked (bash::static_type,
- ap.directory (),
- dir_path () /* out */,
- p.name,
- ext,
- true /* implied */,
- trace));
+ auto rp (t.ctx.targets.insert_locked (bash::static_type,
+ ap.directory (),
+ dir_path () /* out */,
+ p.name,
+ ext,
+ true /* implied */,
+ trace));
bash& pt (rp.first.as<bash> ());
@@ -281,7 +281,7 @@ namespace build2
continue;
}
- if (const scope* rs = scopes.find (b->dir).root_scope ())
+ if (const scope* rs = t.ctx.scopes.find (b->dir).root_scope ())
{
const dir_path& d (pp.sub (rs->src_path ())
? rs->src_path ()
diff --git a/libbuild2/bash/target.cxx b/libbuild2/bash/target.cxx
index 7313316..386842b 100644
--- a/libbuild2/bash/target.cxx
+++ b/libbuild2/bash/target.cxx
@@ -20,8 +20,8 @@ namespace build2
&file::static_type,
&target_factory<bash>,
nullptr, /* fixed_extension */
- &target_extension_var<var_extension, bash_ext_def>,
- &target_pattern_var<var_extension, bash_ext_def>,
+ &target_extension_var<bash_ext_def>,
+ &target_pattern_var<bash_ext_def>,
nullptr,
&file_search,
false