diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-05-31 16:35:50 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-05-31 16:36:49 +0200 |
commit | 9ae4897cfe935598333a5f709e967fefc4c161aa (patch) | |
tree | 16bfbcb21a10994a29db602f5cb77a0a50627bdf /build2/cc/module.cxx | |
parent | b2fc1fb4a13ffa58640333a3909dd0e53bd21995 (diff) |
C++ modules work: add target types
Diffstat (limited to 'build2/cc/module.cxx')
-rw-r--r-- | build2/cc/module.cxx | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/build2/cc/module.cxx b/build2/cc/module.cxx index cdc45e5..3755817 100644 --- a/build2/cc/module.cxx +++ b/build2/cc/module.cxx @@ -348,6 +348,8 @@ namespace build2 t.insert (x_src); + // Note: module (x_mod) is in x_hdr. + for (const target_type* const* ht (x_hdr); *ht != nullptr; ++ht) { t.insert (**ht); @@ -376,22 +378,37 @@ namespace build2 r.insert<obje> (perform_clean_id, x_compile, cr); r.insert<obje> (configure_update_id, x_compile, cr); - r.insert<exe> (perform_update_id, x_link, lr); - r.insert<exe> (perform_clean_id, x_link, lr); - r.insert<exe> (configure_update_id, x_link, lr); - r.insert<obja> (perform_update_id, x_compile, cr); r.insert<obja> (perform_clean_id, x_compile, cr); r.insert<obja> (configure_update_id, x_compile, cr); - r.insert<liba> (perform_update_id, x_link, lr); - r.insert<liba> (perform_clean_id, x_link, lr); - r.insert<liba> (configure_update_id, x_link, lr); - r.insert<objs> (perform_update_id, x_compile, cr); r.insert<objs> (perform_clean_id, x_compile, cr); r.insert<objs> (configure_update_id, x_compile, cr); + if (modules) + { + r.insert<bmie> (perform_update_id, x_compile, cr); + r.insert<bmie> (perform_clean_id, x_compile, cr); + r.insert<bmie> (configure_update_id, x_compile, cr); + + r.insert<bmia> (perform_update_id, x_compile, cr); + r.insert<bmia> (perform_clean_id, x_compile, cr); + r.insert<bmia> (configure_update_id, x_compile, cr); + + r.insert<bmis> (perform_update_id, x_compile, cr); + r.insert<bmis> (perform_clean_id, x_compile, cr); + r.insert<bmis> (configure_update_id, x_compile, cr); + } + + r.insert<exe> (perform_update_id, x_link, lr); + r.insert<exe> (perform_clean_id, x_link, lr); + r.insert<exe> (configure_update_id, x_link, lr); + + r.insert<liba> (perform_update_id, x_link, lr); + r.insert<liba> (perform_clean_id, x_link, lr); + r.insert<liba> (configure_update_id, x_link, lr); + r.insert<libs> (perform_update_id, x_link, lr); r.insert<libs> (perform_clean_id, x_link, lr); r.insert<libs> (configure_update_id, x_link, lr); |