diff options
Diffstat (limited to 'build2/bin/target.cxx')
-rw-r--r-- | build2/bin/target.cxx | 69 |
1 files changed, 67 insertions, 2 deletions
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 <typename M, typename G> static target* @@ -111,6 +124,19 @@ namespace build2 false }; + const target_type hbmie::static_type + { + "hbmie", + &hbmix::static_type, + &m_factory<hbmie, hbmi>, + nullptr, /* fixed_extension */ + &target_extension_var<var_extension, nullptr>, + &target_pattern_var<var_extension, nullptr>, + 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<hbmia, hbmi>, + nullptr, /* fixed_extension */ + &target_extension_var<var_extension, nullptr>, + &target_pattern_var<var_extension, nullptr>, + 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<hbmis, hbmi>, + nullptr, /* fixed_extension */ + &target_extension_var<var_extension, nullptr>, + &target_pattern_var<var_extension, nullptr>, + nullptr, + &target_search, // Note: not _file(); don't look for an existing file. + false + }; + // libu*{} member factory. // template <typename M> @@ -224,7 +276,7 @@ namespace build2 false }; - // obj{}, bmi{}, and libu{} group factory. + // obj{}, [h]bmi{}, and libu{} group factory. // template <typename G, typename E, typename A, typename S> static target* @@ -277,6 +329,19 @@ namespace build2 false }; + const target_type hbmi::static_type + { + "hbmi", + &target::static_type, + &g_factory<hbmi, hbmie, hbmia, hbmis>, + nullptr, + nullptr, + nullptr, + nullptr, + &target_search, + false + }; + // The same as g_factory() but without E. // static target* |