forked from Mirrorlandia_minetest/minetest
6901c5fae5
From November 2021, the Play Store will no longer be accepting apps which use the deprecated getExternalStorageDirectory() API. Therefore, this commit replaces uses of deprecated API with the new scoped API (`getExternalFilesDir()` and `getExternalCacheDir()`). It also provides a temporary migration to move user data from the shared external directory to new storage. Fixes #2097, #11417 and #11118
103 lines
2.0 KiB
Groovy
103 lines
2.0 KiB
Groovy
apply plugin: 'com.android.library'
|
|
apply plugin: 'de.undercouch.download'
|
|
|
|
android {
|
|
compileSdkVersion 29
|
|
buildToolsVersion '30.0.3'
|
|
ndkVersion '22.0.7026061'
|
|
defaultConfig {
|
|
minSdkVersion 16
|
|
targetSdkVersion 29
|
|
externalNativeBuild {
|
|
ndkBuild {
|
|
arguments '-j' + Runtime.getRuntime().availableProcessors(),
|
|
"versionMajor=${versionMajor}",
|
|
"versionMinor=${versionMinor}",
|
|
"versionPatch=${versionPatch}",
|
|
"versionExtra=${versionExtra}"
|
|
}
|
|
}
|
|
}
|
|
|
|
externalNativeBuild {
|
|
ndkBuild {
|
|
path file('jni/Android.mk')
|
|
}
|
|
}
|
|
|
|
// supported architectures
|
|
splits {
|
|
abi {
|
|
enable true
|
|
reset()
|
|
include 'armeabi-v7a', 'arm64-v8a'//, 'x86'
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
externalNativeBuild {
|
|
ndkBuild {
|
|
arguments 'NDEBUG=1'
|
|
}
|
|
}
|
|
|
|
ndk {
|
|
debugSymbolLevel 'SYMBOL_TABLE'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// get precompiled deps
|
|
def folder = 'minetest_android_deps_binaries'
|
|
|
|
task downloadDeps(type: Download) {
|
|
src 'https://github.com/minetest/' + folder + '/archive/master.zip'
|
|
dest new File(buildDir, 'deps.zip')
|
|
overwrite false
|
|
}
|
|
|
|
task getDeps(dependsOn: downloadDeps, type: Copy) {
|
|
def deps = file('deps')
|
|
def f = file("$buildDir/" + folder + "-master")
|
|
|
|
if (!deps.exists() && !f.exists()) {
|
|
from zipTree(downloadDeps.dest)
|
|
into buildDir
|
|
}
|
|
|
|
doLast {
|
|
if (!deps.exists()) {
|
|
file(f).renameTo(file(deps))
|
|
}
|
|
}
|
|
}
|
|
|
|
// get sqlite
|
|
def sqlite_ver = '3340000'
|
|
task downloadSqlite(dependsOn: getDeps, type: Download) {
|
|
src 'https://www.sqlite.org/2020/sqlite-amalgamation-' + sqlite_ver + '.zip'
|
|
dest new File(buildDir, 'sqlite.zip')
|
|
overwrite false
|
|
}
|
|
|
|
task getSqlite(dependsOn: downloadSqlite, type: Copy) {
|
|
def sqlite = file('deps/Android/sqlite')
|
|
def f = file("$buildDir/sqlite-amalgamation-" + sqlite_ver)
|
|
|
|
if (!sqlite.exists() && !f.exists()) {
|
|
from zipTree(downloadSqlite.dest)
|
|
into buildDir
|
|
}
|
|
|
|
doLast {
|
|
if (!sqlite.exists()) {
|
|
file(f).renameTo(file(sqlite))
|
|
}
|
|
}
|
|
}
|
|
|
|
preBuild.dependsOn getDeps
|
|
preBuild.dependsOn getSqlite
|