diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt index 29ee9422e10..73d2f54f81e 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt @@ -158,7 +158,7 @@ internal open class CInteropMetadataDependencyTransformationTask @Inject constru get() = sourceSet .compileDependenciesTransformationOrFail .metadataDependencyResolutions - .filterIsInstance() + .resolutionsToTransform() @Suppress("unused") @get:Nested @@ -188,7 +188,7 @@ internal open class CInteropMetadataDependencyTransformationTask @Inject constru into this field */ val transformation = GranularMetadataTransformation(parameters, ParentSourceSetVisibilityProvider.Empty) - val chooseVisibleSourceSets = transformation.metadataDependencyResolutions.filterIsInstance() + val chooseVisibleSourceSets = transformation.metadataDependencyResolutions.resolutionsToTransform() val transformedLibraries = chooseVisibleSourceSets.flatMap(::materializeMetadata) KotlinMetadataLibrariesIndexFile(outputLibrariesFileIndex.get().asFile).write(transformedLibraries) } @@ -216,5 +216,11 @@ internal open class CInteropMetadataDependencyTransformationTask @Inject constru } }.files } + + private fun Iterable.resolutionsToTransform(): List { + return filterIsInstance() + /* We do not care about Project to Project dependencies: Those shall use the commonizer output directly (no transformation) */ + .filter { it.dependency.id !is ProjectComponentIdentifier } + } }