aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/cc/functions.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2021-08-09 10:48:19 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2021-08-09 10:48:19 +0200
commitbe30decf3f777786a44b12920ac2d273b1c8d1f8 (patch)
tree12387f284a822fa1aa0e09ecfbdea8e24405d8c8 /libbuild2/cc/functions.cxx
parenteaeeb079c1715b5b0ecc0b20bd4e5f45d0655452 (diff)
Merge library hashing and collection into single traversal pass
It turns out this is a lot faster on deeply-dependent libraries like Boost while not having any noticeable differences for "sane" projects.
Diffstat (limited to 'libbuild2/cc/functions.cxx')
-rw-r--r--libbuild2/cc/functions.cxx12
1 files changed, 7 insertions, 5 deletions
diff --git a/libbuild2/cc/functions.cxx b/libbuild2/cc/functions.cxx
index 0394524..7f9a6c2 100644
--- a/libbuild2/cc/functions.cxx
+++ b/libbuild2/cc/functions.cxx
@@ -224,7 +224,8 @@ namespace build2
action a, const file& l, bool la, linfo li)
{
m.append_library_options (
- *static_cast<appended_libraries*> (ls), r, bs, a, l, la, li);
+ *static_cast<appended_libraries*> (ls), r,
+ bs, a, l, la, li);
}});
// $<module>.find_system_header(<name>)
@@ -322,9 +323,10 @@ namespace build2
bool self (vs.size () > 3 ? convert<bool> (vs[3]) : true);
- m.append_libraries (*static_cast<appended_libraries*> (ls), r,
- bs,
- a, l, la, lf, li, self, rel);
+ m.append_libraries (
+ *static_cast<appended_libraries*> (ls), r,
+ nullptr /* sha256 */, nullptr /* update */, timestamp_unknown,
+ bs, a, l, la, lf, li, self, rel);
}});
// $<module>.lib_rpaths(<lib-targets>, <otype> [, <link> [, <self>]])
@@ -391,7 +393,7 @@ namespace build2
if (const file* f = t.is_a<objx> ())
{
if (m.modules)
- m.append_binless_modules (r, bs, a, *f);
+ m.append_binless_modules (r, nullptr /* sha256 */, bs, a, *f);
}
else
fail << t << " is not an object file target";