gpt4 book ai didi

bazel - bazel.rc 中的默认、特定于平台、Bazel 标志

转载 作者:行者123 更新时间:2023-12-02 03:42:21 28 4
gpt4 key购买 nike

我想知道特定于平台的默认 Bazel 构建标志是否可能。

例如,我们想要使用 --workspace_status_command,但这必须是 Linux 上的 shell 脚本,并且必须指向 Windows 的批处理脚本。

有没有办法我们可以在 tools/bazel.rc 文件中编写类似...的内容

if platform=WINDOWS build: --workspace_status_command=status_command.bat
if platform=LINUX build: --workspace_status_command=status_command.sh

我们可以通过让用户在构建之前运行脚本来生成 .bazelrc 文件,但如果没有必要,它会更干净/更好。

最佳答案

是的,有点。您可以指定特定于配置的 bazelrc 条目,您可以通过传递 --config=<configname> 来选择这些条目。 .

例如,您的 bazelrc 可能如下所示:

build:linux --cpu=k8
build:linux --workspace_status_command=/path/to/command.sh
build:windows --cpu=x64_windows
build:windows --workspace_status_command=c:/path/to/command.bat

你会像这样构建:

bazel build --config=linux //path/to:target

或者:

bazel build --config=windows //path/to:target

你必须小心,不要混合语义冲突的 --config标志(Bazel 不会阻止你这样做)。虽然它会起作用,但当配置修改相同的标志时,结果可能是不可预测的。

关于bazel - bazel.rc 中的默认、特定于平台、Bazel 标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48159516/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com