From 682836daacdd3dc486187c9d60479b372895a470 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 29 Jul 2017 10:32:36 +0200 Subject: Implement "see through" installation semantics for utility libraries --- build2/cc/install.hxx | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'build2/cc/install.hxx') diff --git a/build2/cc/install.hxx b/build2/cc/install.hxx index b7d92fb..a846fc8 100644 --- a/build2/cc/install.hxx +++ b/build2/cc/install.hxx @@ -19,10 +19,12 @@ namespace build2 { class link; - class install: public build2::install::file_rule, virtual common + // Installation rule for exe, liba{}, and libs{}. + // + class file_install: public install::file_rule, virtual common { public: - install (data&&, const link&); + file_install (data&&, const link&); virtual const target* filter (action, const target&, prerequisite_member) const override; @@ -42,6 +44,23 @@ namespace build2 private: const link& link_; }; + + // Installation rule for libux{}. + // + class alias_install: public install::alias_rule, virtual common + { + public: + alias_install (data&&, const link&); + + virtual const target* + filter (action, const target&, prerequisite_member) const override; + + virtual match_result + match (action, target&, const string&) const override; + + private: + const link& link_; + }; } } -- cgit v1.1