1. 程式人生 > >all-makefiles-under函式不是遞迴遍歷子目錄

all-makefiles-under函式不是遞迴遍歷子目錄

include $(call all-makefiles-under,$(LOCAL_PATH))

在Android的原始碼中的mk檔案中,我們經常會看到上面這句話,從字面意思看是,include目錄下所有的mk檔案,那麼這裡面有兩個坑,

1.只include Android.mk檔案,叫其他名字的mk檔案,不include.
2.只include這個$(LOCAL_PATH)一級目錄下的Android.mk檔案,而不是所有子目錄以及子目錄下的Android.mk檔案。

最後,看一下這個函式的原始碼加強一下印象吧:

define all-makefiles-under
$(wildcard $(1)/*/Android.mk)
endef