diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-02-02 15:35:44 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-02-13 12:42:41 +0200 |
commit | 63f6a8256e3f9fb47cb941be63baa70e2be48d3b (patch) | |
tree | d2799d1d605a27fa0a13d63f974f26fa78306e36 /build2/target.ixx | |
parent | d263455d5ac0d87541144dd7a37eb6255b721a89 (diff) |
Implement target_set locking, including extension update
Diffstat (limited to 'build2/target.ixx')
-rw-r--r-- | build2/target.ixx | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/build2/target.ixx b/build2/target.ixx index f3417aa..19e0dfa 100644 --- a/build2/target.ixx +++ b/build2/target.ixx @@ -4,6 +4,27 @@ namespace build2 { + // target + // + inline const string* target:: + ext () const + { + slock l (targets.mutex_); + return *ext_ ? &**ext_ : nullptr; + } + + inline target_key target:: + key () const + { + const string* e (ext ()); + return target_key { + &type (), + &dir, + &out, + &name, + e != nullptr ? optional<string> (*e) : nullopt}; + } + // prerequisite_member // inline prerequisite prerequisite_member:: |