mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-10-31 07:25:22 +01:00 
			
		
		
		
	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
 |