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

Android CMake: how to check if cppFlags and arguments are taken into account at compile time?

我有一个 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 是传递给编译器的标志。