Removed other sources
This commit is contained in:
7
buildSrc/settings.gradle.kts
Normal file
7
buildSrc/settings.gradle.kts
Normal file
@@ -0,0 +1,7 @@
|
||||
dependencyResolutionManagement {
|
||||
versionCatalogs {
|
||||
create("libs") {
|
||||
from(files("../gradle/libs.versions.toml"))
|
||||
}
|
||||
}
|
||||
}
|
||||
47
buildSrc/src/main/kotlin/Extensions.kt
Normal file
47
buildSrc/src/main/kotlin/Extensions.kt
Normal file
@@ -0,0 +1,47 @@
|
||||
import groovy.lang.MissingPropertyException
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.artifacts.ProjectDependency
|
||||
import org.gradle.api.plugins.ExtensionAware
|
||||
import org.gradle.kotlin.dsl.extra
|
||||
|
||||
var ExtensionAware.baseVersionCode: Int
|
||||
get() = (extra.get("baseVersionCode") as Int) + kmkBaseVersionCode
|
||||
set(value) = extra.set("baseVersionCode", value)
|
||||
|
||||
fun Project.getDependents(): Set<Project> {
|
||||
val dependentProjects = mutableSetOf<Project>()
|
||||
|
||||
rootProject.allprojects.forEach { project ->
|
||||
project.configurations.forEach { configuration ->
|
||||
configuration.dependencies.forEach { dependency ->
|
||||
if (dependency is ProjectDependency && dependency.path == path) {
|
||||
dependentProjects.add(project)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return dependentProjects
|
||||
}
|
||||
|
||||
fun Project.printDependentExtensions() {
|
||||
getDependents().forEach { project ->
|
||||
if (project.path.startsWith(":src:")) {
|
||||
println(project.path)
|
||||
} else if (project.path.startsWith(":lib-multisrc:")) {
|
||||
project.getDependents().forEach { println(it.path) }
|
||||
} else if (project.path.startsWith(":lib:")) {
|
||||
project.printDependentExtensions()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var ExtensionAware.kmkBaseVersionCode: Int
|
||||
get() {
|
||||
return try {
|
||||
extra.get("kmkBaseVersionCode") as Int
|
||||
} catch (e: MissingPropertyException) {
|
||||
0
|
||||
}
|
||||
}
|
||||
set(value) = extra.set("kmkBaseVersionCode", value)
|
||||
29
buildSrc/src/main/kotlin/lib-android.gradle.kts
Normal file
29
buildSrc/src/main/kotlin/lib-android.gradle.kts
Normal file
@@ -0,0 +1,29 @@
|
||||
plugins {
|
||||
id("com.android.library")
|
||||
kotlin("android")
|
||||
id("kotlinx-serialization")
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdk = AndroidConfig.compileSdk
|
||||
|
||||
defaultConfig {
|
||||
minSdk = AndroidConfig.minSdk
|
||||
}
|
||||
|
||||
namespace = "eu.kanade.tachiyomi.lib.${project.name}"
|
||||
|
||||
buildFeatures {
|
||||
androidResources = false
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly(versionCatalogs.named("libs").findBundle("common").get())
|
||||
}
|
||||
|
||||
tasks.register("printDependentExtensions") {
|
||||
doLast {
|
||||
project.printDependentExtensions()
|
||||
}
|
||||
}
|
||||
60
buildSrc/src/main/kotlin/lib-multisrc.gradle.kts
Normal file
60
buildSrc/src/main/kotlin/lib-multisrc.gradle.kts
Normal file
@@ -0,0 +1,60 @@
|
||||
plugins {
|
||||
id("com.android.library")
|
||||
kotlin("android")
|
||||
id("kotlinx-serialization")
|
||||
id("org.jmailen.kotlinter")
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdk = AndroidConfig.compileSdk
|
||||
|
||||
defaultConfig {
|
||||
minSdk = AndroidConfig.minSdk
|
||||
}
|
||||
|
||||
namespace = "eu.kanade.tachiyomi.multisrc.${project.name}"
|
||||
|
||||
sourceSets {
|
||||
named("main") {
|
||||
manifest.srcFile("AndroidManifest.xml")
|
||||
java.setSrcDirs(listOf("src"))
|
||||
res.setSrcDirs(listOf("res"))
|
||||
assets.setSrcDirs(listOf("assets"))
|
||||
}
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
freeCompilerArgs += "-opt-in=kotlinx.serialization.ExperimentalSerializationApi"
|
||||
}
|
||||
}
|
||||
|
||||
kotlinter {
|
||||
experimentalRules = true
|
||||
disabledRules = arrayOf(
|
||||
"experimental:argument-list-wrapping", // Doesn't play well with Android Studio
|
||||
"experimental:comment-wrapping",
|
||||
)
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly(versionCatalogs.named("libs").findBundle("common").get())
|
||||
implementation(project(":utils"))
|
||||
}
|
||||
|
||||
tasks {
|
||||
preBuild {
|
||||
dependsOn(lintKotlin)
|
||||
}
|
||||
|
||||
if (System.getenv("CI") != "true") {
|
||||
lintKotlin {
|
||||
dependsOn(formatKotlin)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tasks.register("printDependentExtensions") {
|
||||
doLast {
|
||||
project.printDependentExtensions()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user