加载特定版本的 Fuchsia IDK。
属性
名称 | 说明 | 类型 | 强制 | 默认 |
---|---|---|---|---|
name | 此代码库的唯一名称。 | 名称 | 必需 | - |
repo_mapping | 仅在 WORKSPACE 上下文中:一个字典,用于将本地代码库名称转换为全局代码库名称。这样,您就可以控制此代码库的依赖项的 Workspace 依赖项解析。例如,条目 "@foo": "@bar" 声明,每当此代码库依赖于 @foo (例如依赖于 @foo//some:target )时,它实际上应在全局声明的 @bar (@bar//some:target ) 中解析该依赖项。MODULE.bazel 上下文(在模块扩展程序的实现函数内调用代码库规则时)不支持此属性。 |
字符串字典 | 可选 | - |
parent_sdk | 如果指定了此属性,当前 SDK 中同时存在于父级 SDK 中的库将始终解析为父级。在实践中, 这意味着,如果当前 SDK 中定义的库在 parent_sdk 中也定义了,则当前 SDK 会忽略该库, 并且对该库的引用将替换为 @<parent_sdk>//<library>。当 SDK 分层时(例如内部 SDK 和公共 SDK),这一点非常有用。 |
标签 | 可选 | None |
parent_sdk_local_paths | 如果指定了 parent_sdk,则 parent_sdk_local_paths 必须包含与父级 SDK 的 local_paths 属性相同的值。 这是必需的,因为 Bazel 没有评估标签是否存在的方法,因此在使用分层 SDK 时,我们会再次处理父级 SDK 的元数据。 TODO:如果这会造成限制或导致性能问题,请寻找更好的方法。 |
字符串列表 | 可选 | [] |
local_paths | 本地 SDK 目录的路径。 | 字符串列表 | 可选 | [] |
local_sdk_version_file | 一个可选文件,用于标记 local_paths 指向的 SDK 版本。 | 标签 | 可选 | None |
use_rules_fuchsia | 使用 @rules_fuchsia 代码库名称在生成的 代码库文件中加载所有 Fuchsia Bazel SDK 规则。否则,出于兼容性原因,默认为 @fuchsia_sdk。如需了解详情,请 参阅 https://fxbug.dev/381126633。 |
Boolean | 可选 | False |
buildifier | 可选的 buildifier 工具标签,用于重新设置所有生成的 Bazel 文件的格式。 | 标签 | 可选 | None |
环境变量
此代码库规则依赖于以下环境变量:
LOCAL_FUCHSIA_PLATFORM_BUILD