【发布时间】:2020-03-02 13:31:34
【问题描述】:
在device/vendor/rules.mk 我们有几个标志。例如:
INCLUDE_VENDOR_PACKAGES:=true
我正在编写一个 go 包来根据上述标志进行一些条件操作。我尝试了几种方法来获取这个标志的值,例如通过 Golang 的 os 包 API 和 $ 运算符,就像我们在 shell 脚本中所做的那样。但这些都不起作用。
在构建时是否可以在 go 包中从 Makefile 获取标志?
【问题讨论】:
-
创建一个全局变量
var INCLUDE_VENDOR_PACKAGES = ""。在构建脚本中添加--ldflags "-X main.INCLUDE_VENDOR_PACKAGES=${FLAG}"作为构建参数。 (而不是 main 可能是变量所在的包路径) -
我将该变量作为示例之一。可能有很多变量需要我编写 Golang 条件实现。这种方法需要大量不必要的代码添加。 @LaevusDexter
标签: go makefile android-source