bd464556b6
This simplifies project setup in both CI and for individual contributors
99 lines
3.6 KiB
Text
99 lines
3.6 KiB
Text
/*
|
|
* Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved.
|
|
* SPDX-License-Identifier: GPL-3.0-only
|
|
*/
|
|
|
|
plugins { `kotlin-dsl` }
|
|
|
|
private val jvmToolchainAction = Action<JavaToolchainSpec> {
|
|
languageVersion.set(JavaLanguageVersion.of(17))
|
|
vendor.set(JvmVendorSpec.ADOPTIUM)
|
|
}
|
|
|
|
java.toolchain(jvmToolchainAction)
|
|
kotlin.jvmToolchain(jvmToolchainAction)
|
|
|
|
gradlePlugin {
|
|
plugins {
|
|
register("android-application") {
|
|
id = "com.github.android-password-store.android-application"
|
|
implementationClass = "app.passwordstore.gradle.ApplicationPlugin"
|
|
}
|
|
register("android-library") {
|
|
id = "com.github.android-password-store.android-library"
|
|
implementationClass = "app.passwordstore.gradle.LibraryPlugin"
|
|
}
|
|
register("crowdin") {
|
|
id = "com.github.android-password-store.crowdin-plugin"
|
|
implementationClass = "app.passwordstore.gradle.crowdin.CrowdinDownloadPlugin"
|
|
}
|
|
register("git-hooks") {
|
|
id = "com.github.android-password-store.git-hooks"
|
|
implementationClass = "app.passwordstore.gradle.GitHooksPlugin"
|
|
}
|
|
register("kotlin-android") {
|
|
id = "com.github.android-password-store.kotlin-android"
|
|
implementationClass = "app.passwordstore.gradle.KotlinAndroidPlugin"
|
|
}
|
|
register("kotlin-common") {
|
|
id = "com.github.android-password-store.kotlin-common"
|
|
implementationClass = "app.passwordstore.gradle.KotlinCommonPlugin"
|
|
}
|
|
register("kotlin-kapt") {
|
|
id = "com.github.android-password-store.kotlin-kapt"
|
|
implementationClass = "app.passwordstore.gradle.KotlinKaptPlugin"
|
|
}
|
|
register("kotlin-jvm-library") {
|
|
id = "com.github.android-password-store.kotlin-jvm-library"
|
|
implementationClass = "app.passwordstore.gradle.KotlinJVMLibrary"
|
|
}
|
|
register("ktfmt") {
|
|
id = "com.github.android-password-store.ktfmt"
|
|
implementationClass = "app.passwordstore.gradle.KtfmtPlugin"
|
|
}
|
|
register("published-android-library") {
|
|
id = "com.github.android-password-store.published-android-library"
|
|
implementationClass = "app.passwordstore.gradle.PublishedAndroidLibraryPlugin"
|
|
}
|
|
register("psl") {
|
|
id = "com.github.android-password-store.psl-plugin"
|
|
implementationClass = "app.passwordstore.gradle.psl.PublicSuffixListPlugin"
|
|
}
|
|
register("rename-artifacts") {
|
|
id = "com.github.android-password-store.rename-artifacts"
|
|
implementationClass = "app.passwordstore.gradle.RenameArtifactsPlugin"
|
|
}
|
|
register("sentry") {
|
|
id = "com.github.android-password-store.sentry"
|
|
implementationClass = "app.passwordstore.gradle.SentryPlugin"
|
|
}
|
|
register("versioning") {
|
|
id = "com.github.android-password-store.versioning-plugin"
|
|
implementationClass = "app.passwordstore.gradle.versioning.VersioningPlugin"
|
|
}
|
|
register("versions") {
|
|
id = "com.github.android-password-store.versions"
|
|
implementationClass = "app.passwordstore.gradle.DependencyUpdatesPlugin"
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(platform(libs.kotlin.bom))
|
|
implementation(libs.build.agp)
|
|
implementation(libs.build.diffutils)
|
|
implementation(libs.build.download)
|
|
implementation(libs.build.kotlin)
|
|
implementation(libs.build.ktfmt)
|
|
implementation(libs.build.mavenpublish)
|
|
implementation(libs.build.metalava)
|
|
implementation(libs.build.moshi)
|
|
implementation(libs.build.moshi.kotlin)
|
|
implementation(libs.build.okhttp)
|
|
implementation(libs.build.r8)
|
|
implementation(libs.build.semver)
|
|
implementation(libs.build.sentry)
|
|
implementation(libs.build.vcu)
|
|
implementation(libs.build.versions)
|
|
implementation(libs.kotlin.coroutines.core)
|
|
}
|