aboutsummaryrefslogtreecommitdiff
path: root/build/algorithm.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-07-15 14:44:15 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-07-15 14:44:15 +0200
commit243da3993c138d33063f633aa3996a8a710ea396 (patch)
tree6d49a3f964f395773c06e258b6550a4d386fbec3 /build/algorithm.ixx
parent3c2bc8595e9d6cf6ff35079231c3aab474a38130 (diff)
Implement project-qualified names/prerequisites, two-stage import
Diffstat (limited to 'build/algorithm.ixx')
-rw-r--r--build/algorithm.ixx9
1 files changed, 7 insertions, 2 deletions
diff --git a/build/algorithm.ixx b/build/algorithm.ixx
index c4f5815..a1e2129 100644
--- a/build/algorithm.ixx
+++ b/build/algorithm.ixx
@@ -4,6 +4,7 @@
#include <utility> // pair
+#include <build/rule>
#include <build/prerequisite>
#include <build/context>
@@ -22,7 +23,8 @@ namespace build
search (const target_type& t, const prerequisite_key& k)
{
return search (
- prerequisite_key {{&t, k.tk.dir, k.tk.name, k.tk.ext}, k.scope});
+ prerequisite_key
+ {k.proj, {&t, k.tk.dir, k.tk.name, k.tk.ext}, k.scope});
}
inline target&
@@ -32,7 +34,10 @@ namespace build
const std::string* ext,
scope* scope)
{
- return search (prerequisite_key {{&type, &dir, &name, &ext}, scope});
+ const std::string* proj (nullptr);
+ return search (
+ prerequisite_key
+ {&proj, {&type, &dir, &name, &ext}, scope});
}
template <typename T>