Android CMake:如何在编译时检查是否考虑了cppFlags和参数



我有一个Android/NDK/JNI/Java/C++项目。

我有一个Gradle文件,看起来像这样:

....
cmake {
cppFlags "-std=c++11 -fexceptions"
arguments "-DANDROID_STL=c++_static"
}
....

我的问题是:在编译我的Android项目时,如何检查这些标志和参数是否得到了很好的考虑?

感谢

我有一个很大的cmake文件,其中包含这样的部分:

cmake {
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_STL=c++_static"
cFlags "-D__STDC_FORMAT_MACROS", "-fno-integrated-as", "-fvisibility=hidden"
cppFlags "-fexceptions", "-frtti", "-fno-integrated-as", "-fvisibility=hidden"
}
//...
flavorDimensions "mode"
productFlavors {
normal {
dimension "mode"
externalNativeBuild {
cmake {
cFlags "-DNORMAL"
cppFlags "-DNORMAL"
}
}
}
demo {
dimension "mode"
externalNativeBuild {
cmake {
cFlags "-DDEMO"
cppFlags "-DDEMO"
}
}
}
}

并且所有选项都被考虑在内。但是,如果您愿意,您可以检查cmake缓存文件。生成文件名为build.ninja,您可以在.cxx文件夹中的项目变体文件夹中找到它。

通常,arguments是传递给cmake的参数,但cppFlags是传递给编译器的标志。

最新更新