以recursion方式读取子目录中的Android.mk文件

我只想问什么应该写在Android.mk文件也调用当前目录的子目录中的mk文件。

例:
/packages/Android.mk
/package/groupA/Android.mk
/packages/groupA/AppA/Android.mk
/packages/groupA/AppB/Android.mk

我知道通过使用include $(call all-subdir-makefiles) ,直接子目录中的Android.mk文件将被读取(例如:/package/groupA/Android.mk)。 但是,/packages/groupA/AppA/Android.mk和/packages/groupA/AppB/Android.mk不会被读取。

我不知道是否有其他macros做所有子目录的Android.mk的recursion阅读。

谢谢,
artsylar

Solutions Collecting From Web of "以recursion方式读取子目录中的Android.mk文件"

最方便的解决scheme是在/package/groupA/Android.mk文件中放入include $(call all-subdir-makefiles)命令。

但是,如果只需要第三级mk文件,则可以使用以下命令:

 include $(wildcard $(call my-dir)/*/*/Android.mk) 

这里是一个完全recursion的解决scheme,但它依赖于来自shell的find命令:

 include $(filter-out $(call my-dir)/Android.mk,$(shell find $(call my-dir)/ -type f -name Android.mk))