Знакомая проблема. У меня NDK тоже почему то любить не находить пути к исходникам и бинарям. Я с некоторого времени стал для всех модулей где есть нейтив заводить переменную типа:
def PROJECT_DIR = "${projectDir.getParent()}/mymodulewithnativestuff"
которую можно потом юзать и во флагах:
defaultConfig {
externalNativeBuild {
cmake {
arguments "-DANDROID_STL=gnustl_shared", "-DPROJECT_DIR=$PROJECT_DIR", "-DFSDK_DIR=$PROJECT_DIR/native/sdk/"
}
}
}
И в скриптах Cmake:
cmake_minimum_required(VERSION 3.4.1)
set(CMAKE_ANDROID_STL_TYPE "gnustl_shared")
set(ASSETS_DIR "${PROJECT_DIR}/native/sdk/data")
...
Знаю что это довольно деревянное решение, зато удобно
в моем случае под ndk-build
ndkBuild {
targets 'app'
arguments 'NDK_PROJECT_PATH='app'
}
все аргументы передаются и только NDK_PROJECT_PATH всегда null
Вобщем насколько я понял, дефолтные пути по которым билдер ищет исходники, что-то типа /app/src/main
мне нужно сбилдить cocos2d, там вобще поразному могут распологаться ресурсы, от проекта зависит, и даже если задавать пути в jniLibs.srcDir 'src/main/libs', не спасает, да и как оказалась исходники не выше ndk r16 а у меня r18, вобщем куча нюансов, спасает только взять шаблон от девелоперов cocos2d, запустить его, и так-же повторить на своем проекте