mirror of
https://github.com/minetest/minetest.git
synced 2024-12-25 23:47:29 +01:00
176 lines
3.7 KiB
Groovy
176 lines
3.7 KiB
Groovy
buildscript {
|
|
repositories {
|
|
google()
|
|
jcenter()
|
|
}
|
|
dependencies {
|
|
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 29
|
|
buildToolsVersion '29.0.2'
|
|
|
|
defaultConfig {
|
|
versionCode 25
|
|
versionName "${System.env.VERSION_STR}.${versionCode}"
|
|
minSdkVersion 14
|
|
targetSdkVersion 29
|
|
applicationId "net.minetest.minetest"
|
|
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 '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"
|
|
}
|
|
|
|
Properties props = new Properties()
|
|
props.load(new FileInputStream(file("local.properties")))
|
|
|
|
if (props.getProperty("keystore") != null) {
|
|
signingConfigs {
|
|
release {
|
|
storeFile file(props["keystore"])
|
|
storePassword props["keystore.password"]
|
|
keyAlias props["key"]
|
|
keyPassword props["key.password"]
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
signingConfig signingConfigs.release
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
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'
|
|
}
|