From 6c769243ef185782ba1ae08ef2a9f4ded17f3949 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 14 Dec 2015 16:47:39 +0200 Subject: Make sure we don't link up to lib{} targets that are derived from liba/so{} --- build/parser.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'build/parser.cxx') diff --git a/build/parser.cxx b/build/parser.cxx index e238628..1893b70 100644 --- a/build/parser.cxx +++ b/build/parser.cxx @@ -885,7 +885,11 @@ namespace build static target* derived_factory (const target_type& t, dir_path d, string n, const string* e) { - target* r (t.base->factory (*t.base, move (d), move (n), e)); + // Pass our type to the base factory so that it can detect that it is + // being called to construct a derived target. This can be used, for + // example, to decide whether to "link up" to the group. + // + target* r (t.base->factory (t, move (d), move (n), e)); r->derived_type = &t; return r; } -- cgit v1.1