aboutsummaryrefslogtreecommitdiff
path: root/build/cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-08-27 15:11:40 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-08-27 15:11:40 +0200
commitfd689eb883655dcb29e505b041cd02fac01f0bac (patch)
tree0d85ec32d95a1c96eaa7eff28734b900c44dd3ca /build/cxx
parent7f2d06258d57e39940e8fa959336da0ea66fe37f (diff)
Dist module/meta-operation initial implementation
Diffstat (limited to 'build/cxx')
-rw-r--r--build/cxx/compile.cxx2
-rw-r--r--build/cxx/link.cxx2
-rw-r--r--build/cxx/module.cxx31
3 files changed, 15 insertions, 20 deletions
diff --git a/build/cxx/compile.cxx b/build/cxx/compile.cxx
index ce921d2..bb42c30 100644
--- a/build/cxx/compile.cxx
+++ b/build/cxx/compile.cxx
@@ -151,7 +151,7 @@ namespace build
{
case perform_update_id: return &perform_update;
case perform_clean_id: return &perform_clean;
- default: return default_recipe; // Forward to prerequisites.
+ default: assert (false); return default_recipe;
}
}
diff --git a/build/cxx/link.cxx b/build/cxx/link.cxx
index 4023105..9602e75 100644
--- a/build/cxx/link.cxx
+++ b/build/cxx/link.cxx
@@ -722,7 +722,7 @@ namespace build
{
case perform_update_id: return &perform_update;
case perform_clean_id: return &perform_clean;
- default: return default_recipe; // Forward to prerequisites.
+ default: assert (false); return default_recipe;
}
}
diff --git a/build/cxx/module.cxx b/build/cxx/module.cxx
index 7f200cd..c2469d9 100644
--- a/build/cxx/module.cxx
+++ b/build/cxx/module.cxx
@@ -64,31 +64,26 @@ namespace build
auto& rs (b.rules);
- rs.insert<obja> (default_id, "cxx.compile", compile::instance);
- rs.insert<obja> (update_id, "cxx.compile", compile::instance);
- rs.insert<obja> (clean_id, "cxx.compile", compile::instance);
+ rs.insert<obja> (perform_id, update_id, "cxx", compile::instance);
+ rs.insert<obja> (perform_id, clean_id, "cxx", compile::instance);
- rs.insert<objso> (default_id, "cxx.compile", compile::instance);
- rs.insert<objso> (update_id, "cxx.compile", compile::instance);
- rs.insert<objso> (clean_id, "cxx.compile", compile::instance);
+ rs.insert<objso> (perform_id, update_id, "cxx", compile::instance);
+ rs.insert<objso> (perform_id, clean_id, "cxx", compile::instance);
- rs.insert<exe> (default_id, "cxx.link", link::instance);
- rs.insert<exe> (update_id, "cxx.link", link::instance);
- rs.insert<exe> (clean_id, "cxx.link", link::instance);
+ rs.insert<exe> (perform_id, update_id, "cxx", link::instance);
+ rs.insert<exe> (perform_id, clean_id, "cxx", link::instance);
- rs.insert<liba> (default_id, "cxx.link", link::instance);
- rs.insert<liba> (update_id, "cxx.link", link::instance);
- rs.insert<liba> (clean_id, "cxx.link", link::instance);
+ rs.insert<liba> (perform_id, update_id, "cxx", link::instance);
+ rs.insert<liba> (perform_id, clean_id, "cxx", link::instance);
- rs.insert<libso> (default_id, "cxx.link", link::instance);
- rs.insert<libso> (update_id, "cxx.link", link::instance);
- rs.insert<libso> (clean_id, "cxx.link", link::instance);
+ rs.insert<libso> (perform_id, update_id, "cxx", link::instance);
+ rs.insert<libso> (perform_id, clean_id, "cxx", link::instance);
//@@ Should we check if install module was loaded (see bin)?
//
- rs.insert<exe> (install_id, "cxx.install", install::instance);
- rs.insert<liba> (install_id, "cxx.install", install::instance);
- rs.insert<libso> (install_id, "cxx.install", install::instance);
+ rs.insert<exe> (perform_id, install_id, "cxx", install::instance);
+ rs.insert<liba> (perform_id, install_id, "cxx", install::instance);
+ rs.insert<libso> (perform_id, install_id, "cxx", install::instance);
}
// Enter module variables.