載入特定版本的 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 情境 (在模組擴充功能的實作函式中叫用存放區規則時)。 |
字串字典 | 選用 | - |
cipd_tag | 要載入的版本的 CIPD 標記。 | 字串 | 選用 | "" |
sha256 | Clang 封存檔的選用 SHA-256 雜湊值。有效的鍵為 mac 和 linux | 字串字典 | 選用 | {} |
local_archive | 本機的 clang 封存檔案。 | 字串 | 選用 | "" |
local_path | 本機 clang 安裝路徑、完整標籤或相對於工作區目錄的相對路徑 | 字串 | 選用 | "" |
from_workspace | 任何標籤,可指向包含 clang 安裝的 bazel 外部工作區。 | 標籤 | 選用 | None |
local_version_file | 這個 Clang 安裝版本的版本檔案,相對於工作區的選用路徑。 | 標籤 | 選用 | None |
sdk_root_label | 已淘汰 - Fuchsia SDK 根標籤。例如:@fuchsia_sdk | 標籤 | 選用 | "@fuchsia_sdk" |
sysroot_paths | 依 Bazel arch 而定的 sysroot 路徑 (相對於 execroot) | 字串字典 | 選用 | {"aarch64": "external/rules_fuchsia++fuchsia_sdk_ext+fuchsia_sdk/arch/arm64/sysroot", "x86_64": "external/rules_fuchsia++fuchsia_sdk_ext+fuchsia_sdk/arch/x64/sysroot", "riscv64": "external/rules_fuchsia++fuchsia_sdk_ext+fuchsia_sdk/arch/riscv64/sysroot"} |
sysroot_headers | 依 Bazel arch 分類的 Sysroot 標頭檔案群組。這些檔案會加入 cc_toolchain 的編譯器檔案。值應為指向檔案群組的標籤,涵蓋 C++ 編譯動作的沙箱中必須顯示的所有標頭。請參閱預設值範例。 | 字串字典 | 選用 | {"aarch64": "@fuchsia_sdk//:fuchsia-sysroot-headers-aarch64", "x86_64": "@fuchsia_sdk//:fuchsia-sysroot-headers-x86_64", "riscv64": "@fuchsia_sdk//:fuchsia-sysroot-headers-riscv64"} |
sysroot_libs | 依 Bazel arch 分類的 sysroot 程式庫檔案群組。這些檔案會新增至 cc_toolchain 的連結器檔案。值應為指向檔案群組的標籤,涵蓋所有必須顯示在 C++ 連結動作沙箱中的程式庫。請參閱預設值範例。 | 字串字典 | 選用 | {"aarch64": "@fuchsia_sdk//:fuchsia-sysroot-libraries-aarch64", "x86_64": "@fuchsia_sdk//:fuchsia-sysroot-libraries-x86_64", "riscv64": "@fuchsia_sdk//:fuchsia-sysroot-libraries-riscv64"} |
rules_fuchsia_root_label | Fuchsia 工作區規則的根標籤,例如:@fuchsia_sdk | 標籤 | 選用 | "@fuchsia_sdk" |
cipd_ensure_file | 使用 cipd 確保檔案可用於下載 clang。 | 標籤 | 選用 | None |
cipd_bin | 用於下載 SDK 的 cipd 二進位檔 | 標籤 | 選用 | None |
環境變數
此存放區規則依據下列環境變數:
LOCAL_FUCHSIA_PLATFORM_BUILD
*LOCAL_FUCHSIA_CLANG_VERSION_FILE