我只需从另一个makefile导入一个变量。我不能只包含其他makefile,因为其他makefile中定义的某些变量不能导入。我认为使用grep会是一个解决方案,但我无法弄清楚究竟是怎样的。变量名为USE_SU,可以在文件
中找到$(ANDROID_BUILD_TOP)/设备/ * / $(BS_BUILD)/BoardConfig.mk
如何将此变量导入到当前的makefile中?
非常感谢!
答案 0 :(得分:0)
正确的解决方案是创建第三个makefile,它只定义变量,并拥有原始的makefile,而你的新makefile包含那个。但是,如果其他makefile是第三方makefile(你不能修改它),那么你可以使用这里描述的技术:https://blog.melski.net/2010/11/30/makefile-hacks-print-the-value-of-any-variable/
您创建print.mak
:
print-%:
@echo '$*=$($*)'
然后在你的新makefile中执行:
ORIG_MAKEFILE=$(ANDROID_BUILD_TOP)/device/*/$(BS_BUILD)/BoardConfig.mk
VAR:=$(shell $(MAKE) -f $(ORIG_MAKEFILE) -f print.mak print-VAR)