From a14b9bc18431c6aed8441261d28b6ff20bd25935 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 11 Apr 2019 14:44:32 +0200 Subject: Initial take on header unit and include translation support --- build2/bin/target.cxx | 69 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 67 insertions(+), 2 deletions(-) (limited to 'build2/bin/target.cxx') diff --git a/build2/bin/target.cxx b/build2/bin/target.cxx index 8ff2f97..c602f3b 100644 --- a/build2/bin/target.cxx +++ b/build2/bin/target.cxx @@ -38,6 +38,19 @@ namespace build2 false }; + const target_type hbmix::static_type + { + "hbmix", + &bmix::static_type, + nullptr, + nullptr, + nullptr, + nullptr, + nullptr, + &target_search, + false + }; + const target_type libx::static_type { "libx", @@ -71,7 +84,7 @@ namespace build2 // running serial. For the members it is also safe to set the group during // creation. - // obj*{} and bmi*{} member factory. + // obj*{} and [h]bmi*{} member factory. // template static target* @@ -111,6 +124,19 @@ namespace build2 false }; + const target_type hbmie::static_type + { + "hbmie", + &hbmix::static_type, + &m_factory, + nullptr, /* fixed_extension */ + &target_extension_var, + &target_pattern_var, + nullptr, + &target_search, // Note: not _file(); don't look for an existing file. + false + }; + const target_type obja::static_type { "obja", @@ -137,6 +163,19 @@ namespace build2 false }; + const target_type hbmia::static_type + { + "hbmia", + &hbmix::static_type, + &m_factory, + nullptr, /* fixed_extension */ + &target_extension_var, + &target_pattern_var, + nullptr, + &target_search, // Note: not _file(); don't look for an existing file. + false + }; + const target_type objs::static_type { "objs", @@ -163,6 +202,19 @@ namespace build2 false }; + const target_type hbmis::static_type + { + "hbmis", + &hbmix::static_type, + &m_factory, + nullptr, /* fixed_extension */ + &target_extension_var, + &target_pattern_var, + nullptr, + &target_search, // Note: not _file(); don't look for an existing file. + false + }; + // libu*{} member factory. // template @@ -224,7 +276,7 @@ namespace build2 false }; - // obj{}, bmi{}, and libu{} group factory. + // obj{}, [h]bmi{}, and libu{} group factory. // template static target* @@ -277,6 +329,19 @@ namespace build2 false }; + const target_type hbmi::static_type + { + "hbmi", + &target::static_type, + &g_factory, + nullptr, + nullptr, + nullptr, + nullptr, + &target_search, + false + }; + // The same as g_factory() but without E. // static target* -- cgit v1.1