From 7ca0cb10779507c92de3b0e41fdb75de63afbfcb Mon Sep 17 00:00:00 2001 From: Svyatoslav Scherbina Date: Wed, 5 Jul 2023 15:52:46 +0200 Subject: [PATCH] Native: don't add ExperimentalForeignApi to platform libs Use -Xdisable-experimental-annotation when generating platform libs. As a result, unlike all other cinterop libraries, declarations in platform libs won't require ExperimentalForeignApi opt-in ^KT-58362 --- kotlin-native/platformLibs/build.gradle.kts | 2 +- .../jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/kotlin-native/platformLibs/build.gradle.kts b/kotlin-native/platformLibs/build.gradle.kts index 218a4847935..127ec64da27 100644 --- a/kotlin-native/platformLibs/build.gradle.kts +++ b/kotlin-native/platformLibs/build.gradle.kts @@ -72,7 +72,7 @@ konanTargetList.forEach { target -> libraries { klibs(df.config.depends.map { "${fileNamePrefix}${it}" }) } - extraOpts("-Xpurge-user-libs", "-Xshort-module-name", df.name) + extraOpts("-Xpurge-user-libs", "-Xshort-module-name", df.name, "-Xdisable-experimental-annotation") compilerOpts("-fmodules-cache-path=${project.buildDir}/clangModulesCache") } } diff --git a/kotlin-native/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt b/kotlin-native/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt index bcfa65eae13..372f175ede7 100644 --- a/kotlin-native/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt +++ b/kotlin-native/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt @@ -270,6 +270,7 @@ private fun generateLibrary( "-compiler-option", "-fmodules-cache-path=${tmpDirectory.child("clangModulesCache").absolutePath}", "-repo", outputDirectory.absolutePath, "-no-default-libs", "-no-endorsed-libs", "-Xpurge-user-libs", "-nopack", + "-Xdisable-experimental-annotation", *cinteropOptions.additionalArguments.toTypedArray(), "-$SHORT_MODULE_NAME", def.shortLibraryName, *def.depends.flatMap { listOf("-l", "$outputDirectory/${it.libraryName}") }.toTypedArray()