feat(build): KMP → Android-only migration (Phase 1.2)

- Delete desktopApp/ and shared/ modules.
- Merge shared commonMain + androidMain + readerJvmMain sources into app/src/main/kotlin.
- Resolve expect/actual declarations by keeping android implementations.
- Remove project(':shared') dependency and KMP plugins from build files.
- Simplify settings.gradle.kts to single :app module; root project renamed BookReader.
- Remove JVM-only code (javax.imageio/ImageIO in SharedJvmBookLoader).
- Make LocalFolderSync helpers public for cross-package use in Android module.
- Baseline ':app:assembleOssDebug' passes (APK ~80 MB).
This commit is contained in:
Atte149 2026-06-24 10:36:09 +03:00
parent ab9a2dcfeb
commit 0d9439e8c3
323 changed files with 74 additions and 50598 deletions

View file

@ -3,9 +3,9 @@ plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.multiplatform) apply false
alias(libs.plugins.kotlin.compose) apply false
alias(libs.plugins.compose.multiplatform) apply false
alias(libs.plugins.kotlin.serialization) apply false
alias(libs.plugins.kotlin.ksp) apply false
alias(libs.plugins.kover) apply false
}
@ -14,6 +14,21 @@ val test by tasks.registering {
description = "Runs available unit tests for the included projects."
}
subprojects {
val rootTest = rootProject.tasks.named("test")
tasks.matching {
it.name == "allTests" ||
it.name.endsWith("DebugUnitTest")
}.configureEach {
rootTest.configure {
dependsOn(this@configureEach)
}
}
tasks.withType<Test>().configureEach {
maxHeapSize = "4g"
}
}
allprojects {
configurations.all {
resolutionStrategy {
@ -24,19 +39,3 @@ allprojects {
}
}
}
subprojects {
val rootTest = rootProject.tasks.named("test")
tasks.matching {
it.name == "allTests" ||
it.name == "desktopTest" ||
it.name.endsWith("DebugUnitTest")
}.configureEach {
rootTest.configure {
dependsOn(this@configureEach)
}
}
tasks.withType<Test>().configureEach {
maxHeapSize = "4g"
}
}