diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropPropagatedDependencies.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropPropagatedDependencies.kt index c22d0b3c88c..670fd06557b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropPropagatedDependencies.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropPropagatedDependencies.kt @@ -79,9 +79,10 @@ private fun Project.getPropagatedCInteropDependenciesOrEmpty(compilation: Kotlin getAllCInteropOutputFiles(platformCompilation) } -private fun Project.getAllCInteropOutputFiles(compilation: KotlinNativeCompilation): List { - return compilation.cinterops - .map { interop -> interop.interopProcessingTaskName } +private fun Project.getAllCInteropOutputFiles(compilation: KotlinNativeCompilation): FileCollection { + val cinteropTasks = compilation.cinterops.map { interop -> interop.interopProcessingTaskName } .mapNotNull { taskName -> tasks.findByName(taskName) as? CInteropProcess } - .map { it.outputFile } + + return project.filesProvider { cinteropTasks.map { it.outputFile } } + .builtBy(*cinteropTasks.toTypedArray()) }