aboutsummaryrefslogtreecommitdiff
path: root/build2/cxx/module.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-06-26 16:06:54 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-06-26 16:06:54 +0200
commit4d1c02b736f4c1e827b11085cdc83ce4b46c03d1 (patch)
tree8d6a8318c23b1e9085d73c36843c90e875a52095 /build2/cxx/module.cxx
parent70d00b9f7f3266c1962f6d5a6fc8de1866c67949 (diff)
Add notion of ad hoc group, use to handle DLL/import library
Diffstat (limited to 'build2/cxx/module.cxx')
-rw-r--r--build2/cxx/module.cxx20
1 files changed, 14 insertions, 6 deletions
diff --git a/build2/cxx/module.cxx b/build2/cxx/module.cxx
index fba52b8..b4ce142 100644
--- a/build2/cxx/module.cxx
+++ b/build2/cxx/module.cxx
@@ -255,13 +255,21 @@ namespace build2
// Configure "installability" of our target types.
//
- {
- using build2::install::path;
+ using namespace install;
+
+ install_path<hxx> (b, dir_path ("include")); // Into install.include.
+ install_path<ixx> (b, dir_path ("include"));
+ install_path<txx> (b, dir_path ("include"));
+ install_path<h> (b, dir_path ("include"));
- path<hxx> (b, dir_path ("include")); // Install into install.include.
- path<ixx> (b, dir_path ("include"));
- path<txx> (b, dir_path ("include"));
- path<h> (b, dir_path ("include"));
+ // Create additional target types for certain target platforms.
+ //
+ const string& tclass (cast<string> (r["cxx.target.class"]));
+
+ if (tclass == "windows")
+ {
+ const target_type& dll (b.derive_target_type<file> ("dll").first);
+ install_path (dll, b, dir_path ("bin"));
}
return true;