Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

43 lines
2.2 KiB
Kotlin

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
alias(libs.plugins.com.android.application) apply false
alias(libs.plugins.com.android.library) apply false
alias(libs.plugins.org.jetbrains.kotlin.android) apply false
alias(libs.plugins.compose.compiler) apply false
alias(libs.plugins.com.google.dagger.hilt.android) apply false
alias(libs.plugins.com.google.devtools.ksp) apply false
alias(libs.plugins.com.android.test) apply false
alias(libs.plugins.org.jetbrains.kotlin.serialization) apply false
alias(libs.plugins.org.jetbrains.kotlin.jvm) apply false
}
subprojects {
tasks.withType<KotlinCompile>().configureEach {
val composeMetricsPath =
project.layout.buildDirectory.dir("compose_metrics").get().asFile.path
val composeStabilityConfigurationPath =
"${project.rootDir.path}/compose_compiler_config.conf"
compilerOptions {
freeCompilerArgs.addAll(
"-Xcontext-receivers",
"-opt-in=androidx.compose.foundation.ExperimentalFoundationApi",
"-opt-in=androidx.compose.foundation.layout.ExperimentalLayoutApi",
"-opt-in=androidx.compose.material3.ExperimentalMaterial3Api",
"-opt-in=com.google.accompanist.permissions.ExperimentalPermissionsApi",
"-opt-in=androidx.compose.material3.windowsizeclass.ExperimentalMaterial3WindowSizeClassApi",
"-opt-in=androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi",
"-opt-in=androidx.compose.material3.adaptive.navigation.suite.ExperimentalMaterial3AdaptiveNavigationSuiteApi",
"-opt-in=androidx.tv.material3.ExperimentalTvMaterial3Api",
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
"-P",
"plugin:androidx.compose.compiler.plugins.kotlin:metricsDestination=$composeMetricsPath",
"-P",
"plugin:androidx.compose.compiler.plugins.kotlin:reportsDestination=$composeMetricsPath",
"-P",
"plugin:androidx.compose.compiler.plugins.kotlin:stabilityConfigurationPath=$composeStabilityConfigurationPath"
)
}
}
}