Magisk/build.gradle
topjohnwu 75306f658f Revert "Drop API 17 (Android 4.2) support"
Turns out that we cannot use AndroidKeystore anyways, so we don't
actually need to drop API 17. Revert this change.
2019-10-20 07:13:03 -04:00

99 lines
3.1 KiB
Groovy

// Top-level build file where you can add configuration options common to all sub-projects/modules.
def props = new Properties()
def configPath = project.hasProperty('configPath') ?
new File(project.configPath) : rootProject.file('config.prop')
if (configPath.exists())
configPath.withInputStream { is -> props.load(is) }
buildscript {
ext.vKotlin = '1.3.50'
repositories {
google()
jcenter()
maven { url 'http://storage.googleapis.com/r8-releases/raw' }
maven { url 'https://kotlin.bintray.com/kotlinx' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${vKotlin}"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
ext.props = props
subprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
maven { url "http://oss.sonatype.org/content/repositories/snapshots" }
}
afterEvaluate { module ->
if (getPlugins().hasPlugin('com.android.library') ||
getPlugins().hasPlugin('com.android.application')) {
android {
compileSdkVersion 29
buildToolsVersion '29.0.2'
defaultConfig {
if (minSdkVersion == null)
minSdkVersion 17
targetSdkVersion 28
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
}
if (module.name == 'app' || module.name == 'stub') {
android {
signingConfigs {
config {
storeFile new File(props['keyStore'])
storePassword props['keyStorePass']
keyAlias props['keyAlias']
keyPassword props['keyPass']
}
}
buildTypes {
debug {
// If keystore exists, sign the APK with custom signature
if (signingConfigs.config.storeFile.exists())
signingConfig signingConfigs.config
}
release {
signingConfig signingConfigs.config
}
}
lintOptions {
disable 'MissingTranslation'
}
aaptOptions {
// Handle resource IDs
File resId = project.file('res-ids.txt')
if (resId.exists())
additionalParameters "--stable-ids", "${resId.absolutePath}"
else
additionalParameters "--emit-ids", "${resId.absolutePath}"
}
}
}
}
}