[Gradle] Partially restore top-level compiler options DSL in MPP

To support configuring free compiler arguments for all shared source
sets (KT-61573), we restore 'compilerOptions { }' DSL in the
multiplatform extension.

To avoid user confusion on accidentally using 'compilerOptions {}'
inside Kotlin targets and Kotlin compilations DSL, similar methods with
ERROR deprecation level were added into `KotlinTarget` and
`KotlinCompilation` interfaces. Invoking these interfaces will throw
UnsupportedOperationException. Such an approach works both for Kotlin
and Groove Gradle scripts.

^KT-63491 Fixed
This commit is contained in:
Yahor Berdnikau
2023-11-15 21:37:53 +01:00
committed by Space Team
parent f32fd314f8
commit ffa6bfc95e
11 changed files with 497 additions and 36 deletions
@@ -45,6 +45,7 @@ class CompilerOptionsProjectIT : KGPBaseTest() {
}
}
@Disabled("DSL was demoted to 'internal'; Design is planned for 2.0")
@GradleTest
@DisplayName("Jvm project target compiler options DSL override project level options")
@JvmGradlePluginTests