Application.mk的目的是描述你的andorid应用程序中所需要的模块
APP_PROJECT_PATH 强制性变量,给出应用程序工程的根目录的一个绝对路径
APP_MODULES 这个变量时可选的,----如果没有定义,NDK将由在Android.mk中声明的默认的模块编译,并且包含所有的子文件 ----如果定义了,这个模块的名字呗定义在Android.mk文件中的LOCAL_MODULES中, **NDK会自动计算模块的依赖 **NDK在R4开始改变了这个变量的行为,在此之前必须列出所有需要的模块
APP_OPTIM 可选(会根据android应用程序的配置文件manifest文件中android:debuggable的属性来定义),用来定义release和debug。在编译你的应用程序模块的时候,可以用来改变优先级。默认为release,并且会生成高度优化的二进制代码。debug模式生成的是未优化的二进制代码,但可以检测出很多的Bug,可以用于调试 。
APP_CFLAGS 当编译模块中有任何C文件或者C++文件的时候,C编译器的信号就会被发出。这里可以在你的应用中需要这些模块时,进行编译的调整,这样就不需要直接更改Android.mk文件
APP_CPPFLAGS 当编译C++源文件的时候,通过这个变量设置
APP_BUILD_SCRIPT 设置Android.mk文件,可以定义指定一个备用的编译脚本,注意使用绝对路径
APP_ABI 设置支持的设备,要支持多种设备用空格分开
APP_STL 将C++的实现链接到自己的应用程序