buildscript {
repositories {
- mavenCentral()
- jcenter()
google()
+ jcenter()
}
dependencies {
- classpath "com.android.tools.build:gradle:2.3.0"
+ classpath 'com.android.tools.build:gradle:3.5.1'
}
}
+allprojects {
+ repositories {
+ google()
+ jcenter()
+ }
+}
+
+def curl_version = "7.60.0"
+def irrlicht_revision = "5150"
+def openal_version = "1.18.2"
+def openssl_version = "1.0.2n"
+def sqlite3_version = "3240000"
+
apply plugin: "com.android.application"
android {
- compileSdkVersion 26
- buildToolsVersion "26.0.3"
+ compileSdkVersion 29
+ buildToolsVersion '29.0.2'
defaultConfig {
- versionCode 19
+ versionCode 25
versionName "${System.env.VERSION_STR}.${versionCode}"
minSdkVersion 14
- targetSdkVersion 14
+ targetSdkVersion 29
applicationId "net.minetest.minetest"
- manifestPlaceholders = [ package: "net.minetest.minetest", project: project.name ]
+ manifestPlaceholders = [package: "net.minetest.minetest", project: project.name]
ndk {
// Specifies the ABI configurations of your native
// libraries Gradle should build and package with your APK.
- abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a',
- 'arm64-v8a'
+ // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
+ abiFilters 'armeabi-v7a', 'x86', 'arm64-v8a'
}
}
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
+
lintOptions {
disable "OldTargetApi", "GoogleAppIndexingWarning"
}
}
}
}
+
+task cleanAssets(type: Delete) {
+ delete 'src/main/assets'
+}
+
+task copyAssets {
+ dependsOn 'cleanAssets'
+ mkdir "src/main/assets"
+
+ def mtAssetsFolder = "src/main/assets/Minetest"
+ def projRoot = "../.."
+ def gameToCopy = "minetest_game"
+
+ doLast {
+ mkdir "${mtAssetsFolder}"
+ mkdir "${mtAssetsFolder}/client"
+ mkdir "${mtAssetsFolder}/fonts"
+ mkdir "${mtAssetsFolder}/games"
+ mkdir "${mtAssetsFolder}/media"
+
+ copy {
+ from "${projRoot}/minetest.conf.example", "${projRoot}/README.md" into mtAssetsFolder
+ }
+ copy {
+ from "${projRoot}/doc/lgpl-2.1.txt" into "${mtAssetsFolder}/LICENSE.txt"
+ }
+ copy {
+ from "${projRoot}/builtin" into "${mtAssetsFolder}/builtin"
+ }
+ copy {
+ from "${projRoot}/client/shaders" into "${mtAssetsFolder}/client/shaders"
+ }
+ copy {
+ from "${projRoot}/fonts" include "*.ttf" into "${mtAssetsFolder}/fonts"
+ }
+ copy {
+ from "${projRoot}/games/${gameToCopy}" into "${mtAssetsFolder}/games/${gameToCopy}"
+ }
+ copy {
+ from "${projRoot}/po" into "${mtAssetsFolder}/po"
+ }
+ copy {
+ from "${projRoot}/textures" into "${mtAssetsFolder}/textures"
+ }
+ }
+}
+
+task cleanIconv(type: Delete) {
+ delete 'deps/libiconv'
+}
+
+task cleanIrrlicht(type: Delete) {
+ delete 'deps/irrlicht'
+}
+
+task cleanLevelDB(type: Delete) {
+ delete 'deps/leveldb'
+}
+
+task cleanCURL(type: Delete) {
+ delete 'deps/curl'
+ delete 'deps/curl-' + curl_version
+}
+
+task cleanOpenSSL(type: Delete) {
+ delete 'deps/openssl'
+ delete 'deps/openssl-' + openssl_version
+ delete 'deps/openssl-' + openssl_version + '.tar.gz'
+}
+
+task cleanOpenAL(type: Delete) {
+ delete 'deps/openal-soft'
+}
+
+task cleanFreetype(type: Delete) {
+ delete 'deps/freetype2-android'
+}
+
+task cleanOgg(type: Delete) {
+ delete 'deps/libvorbis-libogg-android'
+}
+
+task cleanSQLite3(type: Delete) {
+ delete 'deps/sqlite-amalgamation-' + sqlite3_version
+ delete 'deps/sqlite-amalgamation-' + sqlite3_version + '.zip'
+}
+
+task cleanAll(type: Delete, dependsOn: [clean, cleanAssets, cleanIconv,
+ cleanFreetype, cleanIrrlicht, cleanLevelDB, cleanSQLite3, cleanCURL,
+ cleanOpenSSL, cleanOpenAL, cleanOgg]) {
+ delete 'deps'
+ delete 'gen'
+ delete 'libs'
+ delete 'obj'
+ delete 'bin'
+ delete 'Debug'
+ delete 'and_env'
+}
+
+dependencies {
+ implementation 'androidx.core:core:1.1.0'
+}