如果我将外部 Bazel 项目作为 WORKSPACE 依赖项拉入,并且该项目有一个 tools/bazel.rc 添加了一些默认构建选项并定义了一些构建 --config 选项,那么它到底是如何工作的?
构建这些外部构建目标时是否使用这些默认选项?在项目中构建目标时,我可以传递外部 bazel.rc 文件中定义的 --config 选项吗?是否有配置 Bazel 外部工作空间依赖项构建的最佳实践?
此外,.bazelrc 是否写入构建时拾取的外部项目的根目录。
只是想了解其工作原理。
我想知道特定于平台的默认 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
Run Code Online (Sandbox Code Playgroud)
我们可以通过让用户在构建之前运行脚本来生成一个 .bazelrc 文件,但如果这不是必需的,它会更干净/更好。
bazel ×2