如何在Android工作室的外部本机构建的CMakeLists.txt文件中将android构建类型(调试,发布)作为变量?

Kab*_*abu 6 android build cmake gradle

我需要将android构建类型(debug,release)引用到我用于构建外部本机库的CMakeLists.txt文件中.更确切地说:

set_target_properties( # Specifies the target library.
                   mylibname

                   # Specifies the parameter you want to define.
                   PROPERTIES IMPORTED_LOCATION

                   # Provides the path to the library you want to import.                                                            

                   $ENV{LIBRARY_HOME}/${ANDROID_BUILD_TYPE}/libs/${ANDROID_ABI}/libMylib.a
Run Code Online (Sandbox Code Playgroud)

我需要相当于$ {ANDROID_ABI},它改变每个abi类型的构建,代替$ {ANDROID_BUILD_TYPE},当然,这是一个例子的名称.那就是:那个变量的名称是什么?而且,更一般地说,它们是否都列在某处?

小智 3

我发现您可以使用${CMAKE_BUILD_TYPE}它,其计算结果为Releaseor Debug。我不确定这是否与实际的 Android 构建配置或 CMake 的单独配置相同,但至少对于调试/发布配置的简单情况来说它是有效的。在区分大小写的平台上,您可能必须将结果转换为小写。

https://developer.android.com/ndk/guides/cmake中列出的构建参数可能直接以它们设置的变量命名。