[android] - move example custom layer compilation to testapp
This commit is contained in:
@@ -17,6 +17,71 @@ android {
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
defaultPublishConfig project.hasProperty("mapbox.buildtype") ? project.getProperty("mapbox.buildtype") : "debug"
|
||||
|
||||
// We sometimes want to invoke Gradle without building a native dependency, e.g. when we just want
|
||||
// to invoke the Java tests. When we explicitly specify an ABI of 'none', no native dependencies are
|
||||
// added. When another ABI is specified explicitly, we're just going to build that ABI. In all other
|
||||
// cases, all ABIs are built.
|
||||
//
|
||||
// When invoking from the command line or to override the device default, set `-Pmapbox.abis=...` to
|
||||
// only build the desired architectures.
|
||||
//
|
||||
// When building from Android Studio, gradle.properties sets `android.buildOnlyTargetAbi=true` so that
|
||||
// only the architecture for the device you're running on gets built.
|
||||
def abi = 'all'
|
||||
if (!project.hasProperty('android.injected.invoked.from.ide') || project.hasProperty("mapbox.abis")) {
|
||||
// Errors when the user invokes Gradle from the command line and didn't set mapbox.abis
|
||||
abi = project.getProperty("mapbox.abis")
|
||||
}
|
||||
|
||||
if (abi != 'none') {
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
path "../../../CMakeLists.txt"
|
||||
version "3.10.2"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Allow determining the C++ STL we're using when building Mapbox GL.
|
||||
def stl = 'c++_static'
|
||||
if (project.hasProperty("mapbox.stl")) {
|
||||
stl = project.getProperty("mapbox.stl")
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
if (abi != 'none') {
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
arguments "-DANDROID_TOOLCHAIN=clang"
|
||||
arguments "-DANDROID_STL=" + stl
|
||||
arguments "-DANDROID_CPP_FEATURES=exceptions"
|
||||
arguments "-DMBGL_PLATFORM=android"
|
||||
arguments "-DMASON_PLATFORM=android"
|
||||
arguments "-DNodeJS_EXECUTABLE=" + node
|
||||
arguments "-Dnpm_EXECUTABLE=" + npm
|
||||
|
||||
// Enable ccache if the user has installed it.
|
||||
if (ccache?.trim()) {
|
||||
arguments "-DANDROID_CCACHE=" + ccache
|
||||
}
|
||||
|
||||
cFlags "-Qunused-arguments"
|
||||
cppFlags "-Qunused-arguments"
|
||||
|
||||
targets "example-custom-layer"
|
||||
|
||||
if (abi != 'all') {
|
||||
abiFilters abi.split(' ')
|
||||
} else {
|
||||
abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
packagingOptions {
|
||||
exclude 'META-INF/LICENSE.txt'
|
||||
exclude 'META-INF/NOTICE.txt'
|
||||
|
||||
Reference in New Issue
Block a user