Gradle中不同ABI的CMAKE参数



>我必须在 Gradle 中为不同的 ABI 使用不同的参数参数,如下所示:

externalNativeBuild {
cmake {
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64)$")
arguments "-UV_LIBRARY=src/main/cpp/libuv/lib/libuv_armv8.a"
else
arguments "-UV_LIBRARY=src/main/cpp/libuv/lib/libuv_armv7.a"
}
}

有什么想法吗?

Gradle 将设置ANDROID_ABICMake 变量(链接(,因此您可以在CMakeLists.txt而不是build.gradle中执行此操作:

if(ANDROID_ABI STREQUAL "armeabi-v7a")
target_link_libraries(target_name PUBLIC "src/main/cpp/libuv/lib/libuv_armv7.a")
elseif(ANDROID_ABI STREQUAL "arm64-v8a")
target_link_libraries(target_name PUBLIC "src/main/cpp/libuv/lib/libuv_armv8.a")
endif()

最新更新