summaryrefslogtreecommitdiff
path: root/SConstruct
diff options
context:
space:
mode:
authorDaniel Moody <daniel.moody@mongodb.com>2022-08-19 14:52:21 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-08-19 15:52:01 +0000
commit61b444d5fe82e6ebfd0bb847500b9aa2a5d4de96 (patch)
tree492eab15ca0cbca0ae5260a34c86691027c00e7b /SConstruct
parent36e1574c92a0d89844c55d678e0aea5f3e4cc891 (diff)
downloadmongo-61b444d5fe82e6ebfd0bb847500b9aa2a5d4de96.tar.gz
SERVER-68116 switch to no unittest alias for static builders.
Diffstat (limited to 'SConstruct')
-rwxr-xr-xSConstruct13
1 files changed, 13 insertions, 0 deletions
diff --git a/SConstruct b/SConstruct
index 7637ab4cabb..6a05dc2750f 100755
--- a/SConstruct
+++ b/SConstruct
@@ -6142,6 +6142,19 @@ env.Alias('configure', None)
# auto_install_binaries to finalize the installation setup.
env.FinalizeInstallDependencies()
+# Create a install-all-meta alias that excludes unittests. This is most useful in
+# static builds where the resource requirements of linking 100s of static unittest
+# binaries is prohibitive.
+candidate_nodes = set([
+ str(gchild) for gchild in env.Flatten(
+ [child.all_children() for child in env.Alias('install-all-meta')[0].all_children()])
+])
+names = [f'install-{env["AIB_META_COMPONENT"]}', 'install-tests', env["UNITTEST_ALIAS"]]
+env.Alias('install-all-meta-but-not-unittests', [
+ node for node in candidate_nodes if str(node) not in names
+ and not str(node).startswith(tuple([prefix_name + '-' for prefix_name in names]))
+])
+
# We don't want installing files to cause them to flow into the cache,
# since presumably we can re-install them from the origin if needed.
env.NoCache(env.FindInstalledFiles())