Аргументы CMAKE для разных ABI в Gradle - PullRequest
0 голосов
/ 03 июня 2018

Я должен использовать разные параметры аргументов в 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"
            }
        }

Есть идеи?

1 Ответ

0 голосов
/ 03 июня 2018

Gradle установит ANDROID_ABI переменную CMake ( ссылка ), поэтому вы можете сделать это в 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...