2012-04-02 128 views
10

在编写android.mk文件时,是否有简短的方式来包含位于不同文件夹和子文件夹中的许多源文件?像循环或迭代文件夹的代码?例如:Android.mk文件 - 包括不同文件夹和子文件夹中的所有源文件

文件夹1

| --- subfolder1.1

 |---subfolder1.1.1 

       |---some cpp files 

     |--subfolder1.1.2 

      |--some cpp files 

文件夹2

| --- subfolder2.1

 |--subfolder2.1.1 

      |--some cpp files 

| - (如此等等,另一个文件夹和子文件夹以及cpp 名的文件)

我知道我可以使用包括$(call all-subdir-makefiles)文件夹和子文件夹,但如果我有这么多的文件夹,有没有更好的办法,将花费太多时间?就像循环遍历文件夹一样?因此,我将有文件夹1和另一只是一个库文件夹2等等...

回答

7

可以使用通配符**从所有子目录包含文件:

LOCAL_SRC_FILES += $(patsubst $(LOCAL_PATH)/%, %, $(wildcard folder/**/*.cpp)) 
22
FILE_LIST := $(wildcard $(LOCAL_PATH)/*.cpp) 
FILE_LIST += $(wildcard $(LOCAL_PATH)/**/*.cpp) 
FILE_LIST += $(wildcard $(LOCAL_PATH)/**/**/*.cpp) 
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%) 
相关问题