diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2021-10-07 08:36:29 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2021-10-07 08:36:29 +0200 |
commit | 7ee735c0a99b29979594920262db13b4939b3c2c (patch) | |
tree | 114c36104ea2cc1e1c83001d404616dd803ae954 /libbuild2/bash/rule.cxx | |
parent | 45ee1a71a27a938db9ffe7218f3a19b585de63b4 (diff) |
Verify libraries and targets they are linked to a for-install-compatible
Diffstat (limited to 'libbuild2/bash/rule.cxx')
-rw-r--r-- | libbuild2/bash/rule.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libbuild2/bash/rule.cxx b/libbuild2/bash/rule.cxx index 1138227..e0391e3 100644 --- a/libbuild2/bash/rule.cxx +++ b/libbuild2/bash/rule.cxx @@ -91,6 +91,11 @@ namespace build2 if (!md.for_install) md.for_install = false; + //@@ TODO: need to verify all the modules we depend on are compatible + // with our for_install value, similar to cc::link_rule's + // append_libraries() (and which is the other half of the check + // in install_rule). + return rule::perform_update (a, t); } @@ -415,7 +420,8 @@ namespace build2 if (md.for_install) { if (!*md.for_install) - fail << "target " << t << " already updated but not for install"; + fail << "incompatible " << t << " build" << + info << "target already built not for install"; } else md.for_install = true; |