build.gradle.kts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. plugins {
  2. id("com.android.library")
  3. kotlin("android")
  4. kotlin("kapt")
  5. id("kotlinx-serialization")
  6. id("com.google.devtools.ksp")
  7. }
  8. android {
  9. compileSdk = buildTargetSdkVersion
  10. flavorDimensions(buildFlavor)
  11. defaultConfig {
  12. minSdk = buildMinSdkVersion
  13. targetSdk = buildTargetSdkVersion
  14. versionCode = buildVersionCode
  15. versionName = buildVersionName
  16. consumerProguardFiles("consumer-rules.pro")
  17. }
  18. buildTypes {
  19. named("release") {
  20. isMinifyEnabled = false
  21. proguardFiles(
  22. getDefaultProguardFile("proguard-android-optimize.txt"),
  23. "proguard-rules.pro"
  24. )
  25. }
  26. }
  27. productFlavors {
  28. create("foss") {
  29. dimension = "foss"
  30. }
  31. create("premium") {
  32. dimension = "premium"
  33. }
  34. }
  35. compileOptions {
  36. sourceCompatibility = JavaVersion.VERSION_1_8
  37. targetCompatibility = JavaVersion.VERSION_1_8
  38. }
  39. kotlinOptions {
  40. jvmTarget = "1.8"
  41. }
  42. }
  43. dependencies {
  44. ksp(project(":kaidl:kaidl"))
  45. kapt("androidx.room:room-compiler:$roomVersion")
  46. api(project(":core"))
  47. api(project(":common"))
  48. implementation(project(":kaidl:kaidl-runtime")) {
  49. exclude(group = "org.jetbrains.kotlinx", module = "kotlinx-coroutines-core")
  50. }
  51. implementation(kotlin("stdlib-jdk7"))
  52. implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutineVersion")
  53. implementation("androidx.room:room-runtime:$roomVersion")
  54. implementation("androidx.room:room-ktx:$roomVersion")
  55. implementation("androidx.core:core-ktx:$coreVersion")
  56. implementation("dev.rikka.rikkax.preference:multiprocess:$muiltprocessVersion")
  57. implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:$serializationVersion")
  58. }
  59. afterEvaluate {
  60. android {
  61. libraryVariants.forEach {
  62. sourceSets[it.name].java.srcDir(buildDir.resolve("generated/ksp/${it.name}/kotlin"))
  63. }
  64. }
  65. }