如何知道genrule中的编译模式
How to know the compilation mode in a genrule
我正在使用 bazel 构建我的 android 项目。我需要访问一个环境变量 DEBUG
(自定义)来确定 BuildConfig.DEBUG
应该是什么值,但我在 Bazel 的文档中找不到关于此的任何描述。 Bazel 支持吗?或者我可以做些什么来实现我的意图?
非常感谢您的帮助!
PS:我使用genrule
规则生成我的BuildConfig.java
,但是BuildConfig.DEBUG
的值应该由环境变量[=11]决定=]:
genrule(
name = "build-config-genrule",
outs = [ "BuildConfig.java" ],
cmd = "echo 'package com.qzone;" +
"public class BuildConfig {" +
"public static final boolean DEBUG = ???;" +
"}' > $(@)"
)
您可以在 genrule.cmd
:
中使用 $(COMPILATION_MODE)
生成变量
COMPILATION_MODE
: "fastbuild", "dbg", or "opt".
编辑:值得一提的是 COMPILATION_MODE 反映了 -c
/ --compilation_mode
flag 的值,但通常无法在命令行上指定您可以在 genrule.cmd
中访问的值.
我正在使用 bazel 构建我的 android 项目。我需要访问一个环境变量 DEBUG
(自定义)来确定 BuildConfig.DEBUG
应该是什么值,但我在 Bazel 的文档中找不到关于此的任何描述。 Bazel 支持吗?或者我可以做些什么来实现我的意图?
非常感谢您的帮助!
PS:我使用genrule
规则生成我的BuildConfig.java
,但是BuildConfig.DEBUG
的值应该由环境变量[=11]决定=]:
genrule(
name = "build-config-genrule",
outs = [ "BuildConfig.java" ],
cmd = "echo 'package com.qzone;" +
"public class BuildConfig {" +
"public static final boolean DEBUG = ???;" +
"}' > $(@)"
)
您可以在 genrule.cmd
:
$(COMPILATION_MODE)
生成变量
COMPILATION_MODE
: "fastbuild", "dbg", or "opt".
编辑:值得一提的是 COMPILATION_MODE 反映了 -c
/ --compilation_mode
flag 的值,但通常无法在命令行上指定您可以在 genrule.cmd
中访问的值.