aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/install/utility.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2021-09-13 17:00:08 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2021-09-14 09:48:59 +0200
commitd552de5d028e1dfb108f343810604d0dfd74c2e6 (patch)
tree3ed1a320b0c3788001a1c61ff468f3392630f789 /libbuild2/install/utility.hxx
parentb9ea935ac2e31144db8ebdc2a98ebfc3f94357cc (diff)
Consistently install prerequisites from any scope by default
It is also now possible to adjust this behavior with global config.install.scope override. Valid values for this variable are: project -- only from project strong -- from strong amalgamation weak -- from weak amalgamation global -- from all projects (default)
Diffstat (limited to 'libbuild2/install/utility.hxx')
-rw-r--r--libbuild2/install/utility.hxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/libbuild2/install/utility.hxx b/libbuild2/install/utility.hxx
index 2c0ca56..cc5cd53 100644
--- a/libbuild2/install/utility.hxx
+++ b/libbuild2/install/utility.hxx
@@ -56,6 +56,14 @@ namespace build2
return install_mode (s, T::static_type, move (m));
}
+ // Return the "installation scope". We do not install prerequisites (for
+ // example, shared libraries) of targets (for example, executables) that
+ // belong to projects outside of this scope. If it's NULL, install
+ // prerequisites from all projects. See also config.install.scope.
+ //
+ LIBBUILD2_SYMEXPORT const scope*
+ install_scope (const target&);
+
// Resolve relative installation directory path (e.g., include/libfoo) to
// its absolute directory path (e.g., /usr/include/libfoo). If the
// resolution encountered an unknown directory, issue diagnostics and fail