bazel - 在 Bazel 中,有没有办法根据 cpu / 平台的命令行选择以编程方式设置 host_cpu / host_platform ?
问题描述
我有一个项目,其中包含针对多种架构的二进制文件。每种架构的工具链都与主机工具链的版本略有不同。
此时用户需要手动指定 --host_cpu 和 --cpu 标志,但 host_cpu 总是可以直接从 cpu 的值导出。
是在 BUILD 文件/Starlark 级别完成它的方法吗?
编辑:当我的问题非常狭窄时,我可能已经把问题说得太宽泛了:有没有办法通过将代码放入 WORKSPACE/BUILD/.bzl 文件中来使下面的两个 bazel 调用等效,该文件将在内部编辑host_cpu 标志等于根据 cpu 标志的值计算的值。
bazel build --cpu=CPU_A --host_cpu=HOST_CPU_A
相当于
bazel build --cpu=CPU_A
和
bazel build --cpu=CPU_B --host_cpu=HOST_CPU_B
相当于
bazel build --cpu=CPU_B
我知道可能有解决方法和替代解决方案,但我试图确定这个狭窄的问题是否有一个肯定的答案。
解决方案
推荐阅读
- web-services - 支付处理器使用 IP 地址进行欺诈检测
- python - 如何停止在python末尾显示图片?(我显示我的代码)
- angular - Angular Ionic 中的 API 密钥
- java - 如何在 JPA 中映射这些实体
- c# - 访问函数内的变量
- excel - 如何使用shell脚本将结果保存在excel中的单独列中
- r - 闪亮:如果取消确认,则恢复 radioGroupButtons 上的选择
- bioinformatics - HTSeq-count 为每个基因返回 0,而不是表达式值
- amazon-web-services - 使用 Glue 抓取 S3,添加一些要忽略的文件,并且仍然保留其 Athena 数据?
- keras - 在 Keras 中创建类似的头部