aboutsummaryrefslogtreecommitdiff
path: root/build2/cxx/utility.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-02-29 10:57:40 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-02-29 10:57:40 +0200
commit3cf3b73ffc6881d5428a735736a347f6e143b366 (patch)
tree3559fa9d2d44cc11e07987752027f7c2a9e3e23e /build2/cxx/utility.cxx
parent2a4f52c46f2081aaeb2664e8026d3d067142e3d5 (diff)
Implement auxiliary dependency database (.d files), use in cxx.compile
This is part of the "High Fidelity Build" work.
Diffstat (limited to 'build2/cxx/utility.cxx')
-rw-r--r--build2/cxx/utility.cxx14
1 files changed, 14 insertions, 0 deletions
diff --git a/build2/cxx/utility.cxx b/build2/cxx/utility.cxx
index 0a26aea..15980d4 100644
--- a/build2/cxx/utility.cxx
+++ b/build2/cxx/utility.cxx
@@ -25,5 +25,19 @@ namespace build2
append_options (args, l, var);
}
+
+ void
+ hash_lib_options (sha256& csum, target& l, const char* var)
+ {
+ using namespace bin;
+
+ for (target* t: l.prerequisite_targets)
+ {
+ if (t->is_a<lib> () || t->is_a<liba> () || t->is_a<libso> ())
+ hash_lib_options (csum, *t, var);
+ }
+
+ hash_options (csum, l, var);
+ }
}
}