summaryrefslogtreecommitdiff
path: root/buildSrc
diff options
context:
space:
mode:
Diffstat (limited to 'buildSrc')
-rw-r--r--buildSrc/build.gradle.kts25
-rw-r--r--buildSrc/settings.gradle.kts9
-rw-r--r--buildSrc/src/main/groovy/the_jk.android-conventions.gradle45
3 files changed, 79 insertions, 0 deletions
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
new file mode 100644
index 0000000..b3d40ac
--- /dev/null
+++ b/buildSrc/build.gradle.kts
@@ -0,0 +1,25 @@
+plugins {
+ id("groovy-gradle-plugin")
+
+ `kotlin-dsl`
+}
+
+repositories {
+ google()
+ gradlePluginPortal()
+}
+
+dependencies {
+ implementation(libs.android.build.gradle.api)
+}
+
+java {
+ toolchain {
+ // 11 needed for compile the groovy
+ languageVersion = JavaLanguageVersion.of(11)
+ }
+}
+
+kotlin {
+ jvmToolchain(11)
+}
diff --git a/buildSrc/settings.gradle.kts b/buildSrc/settings.gradle.kts
new file mode 100644
index 0000000..8edb952
--- /dev/null
+++ b/buildSrc/settings.gradle.kts
@@ -0,0 +1,9 @@
+rootProject.name="the_jk-conventions"
+
+dependencyResolutionManagement {
+ versionCatalogs {
+ create("libs") {
+ from(files("../gradle/libs.versions.toml"))
+ }
+ }
+}
diff --git a/buildSrc/src/main/groovy/the_jk.android-conventions.gradle b/buildSrc/src/main/groovy/the_jk.android-conventions.gradle
new file mode 100644
index 0000000..9ff8adf
--- /dev/null
+++ b/buildSrc/src/main/groovy/the_jk.android-conventions.gradle
@@ -0,0 +1,45 @@
+plugins {
+ id("io.gitlab.arturbosch.detekt")
+ id("org.jetbrains.kotlin.android")
+}
+
+android {
+ compileSdk = 34
+
+ defaultConfig {
+ minSdk = 29
+
+ testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
+ }
+
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_11
+ targetCompatibility = JavaVersion.VERSION_11
+ }
+ kotlinOptions {
+ jvmTarget = "11"
+ }
+}
+
+dependencies {
+ testImplementation(libs.junit)
+ testImplementation(libs.robolectric)
+ testImplementation(libs.truth)
+}
+
+detekt {
+ config.setFrom(rootProject.file("detekt.yaml"))
+}
+
+def detektPlugin = project.plugins['io.gitlab.arturbosch.detekt']
+def detektCls = Class.forName('io.gitlab.arturbosch.detekt.Detekt', true, detektPlugin.class.classLoader)
+
+tasks.withType(detektCls).configureEach {
+ jvmTarget = "11"
+}
+
+def detektCreateBaselineTaskCls = Class.forName('io.gitlab.arturbosch.detekt.DetektCreateBaselineTask', true, detektPlugin.class.classLoader)
+
+tasks.withType(detektCreateBaselineTaskCls).configureEach {
+ jvmTarget = "11"
+}