diff options
Diffstat (limited to 'SConstruct')
-rwxr-xr-x | SConstruct | 13 |
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()) |