* moved all settings from SQLite to SharedPreferences. The database now contains only dictionaries. * removed key remapping, dictionary backup and nuke functions along with a bunch of unused code and translations
120 lines
2.9 KiB
Groovy
120 lines
2.9 KiB
Groovy
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
google()
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:7.2.1'
|
|
}
|
|
}
|
|
apply plugin: 'com.android.application'
|
|
|
|
dependencies {
|
|
implementation "androidx.core:core:1.6.0"
|
|
implementation 'androidx.preference:preference:1.1.1'
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
google()
|
|
}
|
|
|
|
def execThing ( String cmdStr ) {
|
|
def stdout = new ByteArrayOutputStream()
|
|
String prefix = System.getenv("GITCMDPREFIX")
|
|
if (prefix != null) {
|
|
String cmd = prefix + cmdStr
|
|
exec {
|
|
commandLine cmd.tokenize()
|
|
standardOutput = stdout
|
|
}
|
|
} else {
|
|
exec {
|
|
commandLine cmdStr.tokenize()
|
|
standardOutput = stdout
|
|
}
|
|
}
|
|
return stdout.toString().trim()
|
|
}
|
|
|
|
def computeVersionCode = { ->
|
|
String commitsCount = execThing("git rev-list --count HEAD")
|
|
|
|
return Integer.valueOf(commitsCount)
|
|
}
|
|
|
|
def computeVersionName = { ->
|
|
String tagsCount = execThing('git tag').split('\n').size() + 1 // initially, versions were 1-based
|
|
String lastTag = execThing('git describe --tags --abbrev=0')
|
|
String commitsSinceLastTag = execThing("git log $lastTag..HEAD --oneline").split('\n').size() + 1
|
|
String currentHash = execThing('git log -1 --format=%h')
|
|
|
|
return "$tagsCount.$commitsSinceLastTag ($currentHash)"
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion 30
|
|
buildToolsVersion "32.0.0"
|
|
|
|
sourceSets {
|
|
main {
|
|
manifest.srcFile 'AndroidManifest.xml'
|
|
java.srcDirs = ['src']
|
|
resources.srcDirs = ['src']
|
|
aidl.srcDirs = ['src']
|
|
renderscript.srcDirs = ['src']
|
|
res.srcDirs = ['res']
|
|
assets.srcDirs = ['assets']
|
|
}
|
|
|
|
// Move the build types to build-types/<type>
|
|
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
|
|
// This moves them out of them default location under src/<type>/... which would
|
|
// conflict with src/ being used by the main source set.
|
|
// Adding new build types or product flavors should be accompanied
|
|
// by a similar customization.
|
|
debug.setRoot('build-types/debug')
|
|
release.setRoot('build-types/release')
|
|
}
|
|
|
|
defaultConfig {
|
|
minSdkVersion 19
|
|
targetSdk 30
|
|
versionCode computeVersionCode()
|
|
versionName computeVersionName()
|
|
}
|
|
|
|
// http://stackoverflow.com/a/19130098
|
|
// signingConfigs {
|
|
// release {
|
|
// storeFile file(System.getenv("KEYSTORE"))
|
|
// storePassword System.getenv("KEYSTORE_PASS")
|
|
// keyAlias System.getenv("KEYALIAS")
|
|
// keyPassword System.getenv("KEYALIAS_PASS")
|
|
// }
|
|
// }
|
|
//
|
|
// buildTypes {
|
|
// release {
|
|
// signingConfig android.signingConfigs.release
|
|
// }
|
|
// }
|
|
}
|
|
|
|
task getDictSizes {
|
|
inputs.dir fileTree(dir:'assets', excludes:['dict.properties'])
|
|
outputs.file "t9build.properties"
|
|
doLast {
|
|
println "Calculating dict size..."
|
|
|
|
inputs.getFiles().each {File file ->
|
|
println "dict: "+ file.name
|
|
ant.propertyfile(file:"assets/dict.properties") {
|
|
entry(key: "size."+ file.name, value: file.length())
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
preBuild.dependsOn getDictSizes
|
|
preBuild.mustRunAfter getDictSizes
|