Specify common sources for stdlib test compilation tasks Some multiplatform tests are compiled in single-platform projects: - in kotlin-stdlib-jdk7 - in kotlin-stdlib-jdk8 - in kotlin-stdlib-js-ir. The latter is technically MPP but with a single platform, so its common sources are not considered as common. Pass information about common sources to test compilation tasks in order to use OptionalExpectation annotations there.
diff --git a/libraries/stdlib/jdk7/build.gradle b/libraries/stdlib/jdk7/build.gradle index 1e56622..361e0fd 100644 --- a/libraries/stdlib/jdk7/build.gradle +++ b/libraries/stdlib/jdk7/build.gradle
@@ -90,6 +90,7 @@ "-Xopt-in=kotlin.ExperimentalUnsignedTypes", "-Xopt-in=kotlin.ExperimentalStdlibApi", "-Xopt-in=kotlin.io.path.ExperimentalPathApi", + "-Xcommon-sources=${fileTree('../test').join(',')}", ] }
diff --git a/libraries/stdlib/jdk8/build.gradle b/libraries/stdlib/jdk8/build.gradle index e59fbc3..a5e4526 100644 --- a/libraries/stdlib/jdk8/build.gradle +++ b/libraries/stdlib/jdk8/build.gradle
@@ -82,6 +82,7 @@ "-Xopt-in=kotlin.ExperimentalUnsignedTypes", "-Xopt-in=kotlin.ExperimentalStdlibApi", "-Xopt-in=kotlin.io.path.ExperimentalPathApi", + "-Xcommon-sources=${fileTree('../test').join(',')}", ] }
diff --git a/libraries/stdlib/js-ir/build.gradle.kts b/libraries/stdlib/js-ir/build.gradle.kts index 47ee64c..b43b8cc 100644 --- a/libraries/stdlib/js-ir/build.gradle.kts +++ b/libraries/stdlib/js-ir/build.gradle.kts
@@ -149,6 +149,11 @@ kotlinOptions.freeCompilerArgs += "-Xir-module-name=kotlin" } + +val compileTestKotlinJs by tasks.existing(KotlinCompile::class) { + kotlinOptions.freeCompilerArgs += "-Xcommon-sources=${kotlin.sourceSets["commonTest"].kotlin.joinToString(",")}" +} + val packFullRuntimeKLib by tasks.registering(Jar::class) { dependsOn(compileKotlinJs) from(buildDir.resolve("classes/kotlin/js/main"))