Backport Android cleanup parts from #7123 (#7513)
[oweals/minetest.git] / build / android / build.gradle
1 buildscript {
2         repositories {
3                 mavenCentral()
4                 jcenter()
5                 google()
6         }
7         dependencies {
8                 classpath "com.android.tools.build:gradle:2.3.0"
9         }
10 }
11
12 def curl_version = "7.60.0"
13 def gmp_version = "6.1.2"
14 def irrlicht_revision = "5150"
15 def openal_version = "1.18.2"
16 def openssl_version = "1.0.2n"
17 def sqlite3_version = "3240000"
18
19 apply plugin: "com.android.application"
20
21 android {
22         compileSdkVersion 26
23         buildToolsVersion "26.0.3"
24
25         defaultConfig {
26                 versionCode 20
27                 versionName "${System.env.VERSION_STR}.${versionCode}"
28                 minSdkVersion 14
29                 targetSdkVersion 14
30                 applicationId "net.minetest.minetest"
31                 manifestPlaceholders = [ package: "net.minetest.minetest", project: project.name ]
32                 ndk {
33                         // Specifies the ABI configurations of your native
34                         // libraries Gradle should build and package with your APK.
35                         abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a',
36                         'arm64-v8a'
37                 }
38         }
39
40         lintOptions {
41                 disable "OldTargetApi", "GoogleAppIndexingWarning"
42         }
43
44         Properties props = new Properties()
45         props.load(new FileInputStream(file("local.properties")))
46
47         if (props.getProperty("keystore") != null) {
48                 signingConfigs {
49                         release {
50                                 storeFile file(props["keystore"])
51                                 storePassword props["keystore.password"]
52                                 keyAlias props["key"]
53                                 keyPassword props["key.password"]
54                         }
55                 }
56
57                 buildTypes {
58                         release {
59                                 signingConfig signingConfigs.release
60                         }
61                 }
62         }
63 }
64
65 task cleanAssets(type:Delete) {
66         delete 'src/main/assets'
67 }
68
69 task cleanIconv(type:Delete) {
70         delete 'deps/libiconv'
71 }
72
73 task cleanIrrlicht(type:Delete) {
74         delete 'deps/irrlicht'
75 }
76
77 task cleanLevelDB(type:Delete) {
78         delete 'deps/leveldb'
79 }
80
81 task cleanCURL(type:Delete) {
82         delete 'deps/curl'
83         delete 'deps/curl-' + curl_version
84 }
85
86 task cleanOpenSSL(type:Delete) {
87         delete 'deps/openssl'
88         delete 'deps/openssl-' + openssl_version
89         delete 'deps/openssl-' + openssl_version + '.tar.gz'
90 }
91
92 task cleanOpenAL(type:Delete) {
93         delete 'deps/openal-soft'
94 }
95
96 task cleanFreetype(type:Delete) {
97         delete 'deps/freetype2-android'
98 }
99
100 task cleanOgg(type:Delete) {
101         delete 'deps/libvorbis-libogg-android'
102 }
103
104 task cleanSQLite3(type:Delete) {
105         delete 'deps/sqlite-amalgamation-' + sqlite3_version
106         delete 'deps/sqlite-amalgamation-' + sqlite3_version + '.zip'
107 }
108
109 task cleanGMP(type:Delete) {
110         delete 'deps/gmp'
111         delete 'deps/gmp-' + gmp_version
112 }
113
114 task cleanAll(type:Delete, dependsOn:[clean,cleanAssets,cleanIconv,
115         cleanFreetype,cleanIrrlicht,cleanLevelDB,cleanSQLite3,cleanCURL,
116         cleanOpenSSL,cleanOpenAL,cleanOgg,cleanGMP]) {
117         delete 'deps'
118         delete 'gen'
119         delete 'libs'
120         delete 'obj'
121         delete 'bin'
122         delete 'Debug'
123         delete 'and_env'
124 }