如何在子目录中编写包含源文件的Android.mk文件?

时间:2012-04-02 05:41:58

标签: android-ndk

我有这样的结构:

folder1

      |--subfolder1

          |--.cpp files .h files

      |--other .cpp files

folder1包含cpp文件和1个子文件夹,其中还包含cpp文件和头文件

如何编写我的Android.mk文件,以便在编译期间包含所有源文件,包括subfolder1中的文件?

我试过

LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/\*/\*.*) $(wildcard *.*) 

但它不起作用,它没有包含子目录中的源文件

2 个答案:

答案 0 :(得分:4)

尝试:

LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*/*.cpp)

答案 1 :(得分:4)

这可能会有所帮助。 引用:

  

如果要在子目录中定义Android.mk文件,则应该   将它们明确地包含在您的顶级Android.mk中。甚至有   辅助功能,即使用:

     

包括$(call all-subdir-makefiles)

     

这将包括当前构建文件路径的子目录中的所有Android.mk文件。

从android-ndk-r8d doc。

复制

这意味着您应该编写一个Android.mk文件来描述每个子目录中的.cpp,并编写一个顶级的Android.mk以包含它们“include $(call all-subdir-makefiles)”< / p>

现在可能会这样:

|-jni

|----Android.mk (top level one)

|--------subfolder1

|------------Android.mk (to describe your a.cpp)

|------------a.cpp/a.h

|----other .cpp/.h files