Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions rust/private/rustc.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -184,14 +184,16 @@ def collect_deps(
deps,
proc_macro_deps,
aliases,
extra_named_deps = None):
extra_named_deps = None,
collect_linkstamps = True):
"""Walks through dependencies and collects the transitive dependencies.

Args:
deps (list): The deps from ctx.attr.deps.
proc_macro_deps (list): The proc_macro deps from `filter_deps(ctx)`.
aliases (dict): A dict mapping aliased targets to their actual Crate information.
extra_named_deps (depset[AliasableDepInfo], optional): Extra named dependencies.
collect_linkstamps (bool, optional): Whether to inspect C++ deps for linkstamps.

Returns:
tuple: Returns a tuple of:
Expand Down Expand Up @@ -242,7 +244,7 @@ def collect_deps(
cc_info = dep.cc_info
dep_build_info = dep.build_info

if cc_info:
if collect_linkstamps and cc_info:
for li in cc_info.linking_context.linker_inputs.to_list():
linkstamps.extend(li.linkstamps)

Expand Down Expand Up @@ -1983,6 +1985,7 @@ def rustc_compile(
proc_macro_deps = proc_macro_deps,
aliases = crate_info.aliases,
extra_named_deps = extra_named_deps,
collect_linkstamps = crate_info.type in ("bin", "cdylib", "proc-macro") and not experimental_use_cc_common_link,
)
extra_unsupported_features = [RUST_LINK_CC_FEATURE]
if crate_info.type in ["bin", "cdylib"] and dep_info.transitive_noncrates.to_list():
Expand Down
Loading