在的CMakeLists.txt文件,我做這樣的事情:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__ANDROID__ -DANDROID -DCUSTOM_FLAG")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DGL_GLEXT_PROTOTYPES=1 -DIOAPI_NO_64 -DUSE_FILE32API ")
但是,您可以使用gradle這個太,但externalNativeBuild
必須defaultConfig
或release
或debug
(構建味)下爲cmake options傳遞標誌。
例如:
android {
compileSdkVersion 25
buildToolsVersion '25.0.3'
defaultConfig {
applicationId "..."
externalNativeBuild {
cmake {
// here, arguments, cppFlags, cFlags, .. all work
arguments '-DANDROID_PLATFORM=android-15',
'-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=gnustl_static',
'-DANDROID_CPP_FEATURES=rtti exceptions'
}
}
}
externalNativeBuild {
cmake {
// only 'path' variable is valid here
path '../../gameSource/CMakeLists.txt'
}
}
buildTypes {
release {
// .. release flavor
}
debug {
//... debug flavor
}
}
}