aboutsummaryrefslogtreecommitdiff
path: root/build/target.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-06-25 13:41:19 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-06-25 13:41:19 +0200
commit95239b7c5404965d4f5ef997b5b75bf542a25192 (patch)
tree1b4fc6229723babffa7c5d56ee0c2eae24215535 /build/target.cxx
parentf56b5a42b9aaaeb0c4e7dee894dea9686599b88c (diff)
Part one of dependency injection with auto-generation support
Diffstat (limited to 'build/target.cxx')
-rw-r--r--build/target.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/build/target.cxx b/build/target.cxx
index 87194fb..3b030ee 100644
--- a/build/target.cxx
+++ b/build/target.cxx
@@ -285,7 +285,15 @@ namespace build
n += *ext;
}
- path (dir / path_type (move (n)));
+ path_type p (dir / path_type (move (n)));
+ const path_type& ep (path ());
+
+ if (ep.empty ())
+ path (p);
+ else if (p != ep)
+ fail << "path mismatch for target " << *this <<
+ info << "assigned '" << ep << "'" <<
+ info << "derived '" << p << "'";
}
// file_target