import org.jetbrains.kotlin.gradle.dsl.KotlinCompile import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompile group "com.example" version "1.0-SNAPSHOT" allprojects { repositories { google() mavenCentral() maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") // mavenLocal() } afterEvaluate { val project = this val compilerPluginVersion = project.properties["compose.kotlinCompilerPluginVersion"] as? String val kotlinVersion = project.properties["kotlin.version"] as? String project.extensions.findByType()?.also { if (!compilerPluginVersion.isNullOrEmpty()) { println("${project.name} is using compilerPluginVersion = $compilerPluginVersion") it.kotlinCompilerPlugin.set(compilerPluginVersion) it.kotlinCompilerPluginArgs.add("suppressKotlinVersionCompatibilityCheck=$kotlinVersion") } } tasks.withType().configureEach { kotlinOptions.freeCompilerArgs += listOf( "-Xklib-enable-signature-clash-checks=false", ) } // disable partial-linkage to test that k/native and k/js don't produce unused unbound symbols tasks.withType>().configureEach { kotlinOptions.freeCompilerArgs += "-Xpartial-linkage=disable" } } disableYarnLockMismatchReport() } plugins { kotlin("multiplatform") apply false id("org.jetbrains.compose") apply false } fun Project.disableYarnLockMismatchReport() { plugins.withType { the().apply { yarnLockMismatchReport = org.jetbrains.kotlin.gradle.targets.js.yarn.YarnLockMismatchReport.NONE } } }