加载特定版本的 Clang。
必须设置 cipd_tag 和 local_archive 中的一个。
如果设置了 cipd_tag,则可以选择设置 sha256 以验证下载的文件并允许 Bazel 缓存该文件。
如果未设置 cipd_tag,则必须将 local_archive 设置为核心 IDK 归档文件的路径。
属性
名称 | 说明 | 类型 | 强制 | 默认 |
---|---|---|---|---|
name | 此代码库的唯一名称。 | 名称 | 必需 | - |
repo_mapping | 仅在 WORKSPACE 上下文中:从本地代码库名称到全局代码库名称的字典。这样,您就可以控制此仓库的依赖项的工作区依赖项解析。例如, "@foo": "@bar" 条目声明,无论何时此仓库依赖于 @foo (例如 @foo//some:target 的依赖项),它实际上应在全局声明的 @bar (@bar//some:target ) 中解析该依赖项。此属性不受 MODULE.bazel 上下文的支持(在模块扩展的实现函数中调用仓库规则时)。 |
字符串 Dict | 可选 | - |
cipd_tag | 要加载的版本的 CIPD 标记。 | String | 可选 | "" |
sha256 | Clang 归档的可选 SHA-256 哈希。有效密钥为 Mac 和 linux | 字符串 Dict | 可选 | {} |
local_archive | 本地 Clang 归档文件 | String | 可选 | "" |
local_path | 本地 Clang 安装目录(相对于工作区根目录)。 | String | 可选 | "" |
from_workspace | 包含 clang 安装的 bazel 外部工作区的任何标签。 | 标签 | 可选 | None |
local_version_file | 此 Clang 安装版本文件的相对工作区路径(可选)。 | 标签 | 可选 | None |
sdk_root_label | 紫红色 SDK 根标签。例如:@fuchsia_sdk | 标签 | 可选 | "@fuchsia_sdk" |
rules_fuchsia_root_label | 紫红色工作区规则的根标签。例如:@fuchsia_sdk | 标签 | 可选 | "@fuchsia_sdk" |
cipd_ensure_file | 用于下载 Clang 的 cipd 确保文件。 | 标签 | 可选 | None |
cipd_bin | 将用于下载 SDK 的 cipd 二进制文件 | 标签 | 可选 | None |
环境变量
此仓库规则取决于以下环境变量:
LOCAL_FUCHSIA_PLATFORM_BUILD
*LOCAL_FUCHSIA_CLANG_VERSION_FILE