@@ -310,8 +310,8 @@ private fun Project.configureCheckTasks(
310310 isEnabled = apiCheckEnabled(projectName, extension) && apiBuild.map { it.enabled }.getOrElse(true )
311311 group = " other"
312312 description = " Syncs API from build dir to ${targetConfig.apiDir} dir for $projectName "
313- from = apiBuildDir.get(). resolve(dumpFileName)
314- to = apiCheckDir.get(). resolve(dumpFileName)
313+ from.fileProvider(apiBuildDir.map { it. resolve(dumpFileName) } )
314+ to.fileProvider(apiCheckDir.map { it. resolve(dumpFileName) } )
315315 dependsOn(apiBuild)
316316 }
317317
@@ -387,19 +387,21 @@ private class KlibValidationPipelineBuilder(
387387
388388 val klibMerge = project.mergeKlibsUmbrellaTask(klibDumpConfig, klibMergeDir)
389389 val klibMergeInferred = project.mergeInferredKlibsUmbrellaTask(klibDumpConfig, klibMergeInferredDir)
390- val klibDump = project.dumpKlibsTask(klibDumpConfig, klibApiDir, klibMergeInferredDir )
390+ val klibDump = project.dumpKlibsTask(klibDumpConfig)
391391 val klibExtractAbiForSupportedTargets = project.extractAbi(klibDumpConfig, klibApiDir, klibExtractedFileDir)
392392 val klibCheck = project.checkKlibsTask(klibDumpConfig, project.provider { klibExtractedFileDir }, klibMergeDir)
393-
393+ klibDump.configure {
394+ it.from.set(klibMergeInferred.flatMap { it.mergedApiFile })
395+ val filename = project.klibDumpFileName
396+ it.to.fileProvider(klibApiDir.map { it.resolve(filename) })
397+ }
394398 commonApiDump.configure { it.dependsOn(klibDump) }
395- commonApiCheck.configure { it.dependsOn(klibCheck) }
396399
397- klibDump.configure { it.dependsOn(klibMergeInferred) }
398400 klibCheck.configure {
399401 it.dependsOn(klibExtractAbiForSupportedTargets)
400402 it.dependsOn(klibMerge)
401403 }
402-
404+ commonApiCheck.configure { it.dependsOn(klibCheck) }
403405 project.configureTargets(klibApiDir, klibMerge, klibMergeInferred)
404406 }
405407
@@ -418,16 +420,10 @@ private class KlibValidationPipelineBuilder(
418420 onlyIf(" There are no klibs compiled for the project" ) { hasCompilableTargets.get() }
419421 }
420422
421- private fun Project.dumpKlibsTask (
422- klibDumpConfig : TargetConfig ,
423- klibApiDir : Provider <File >,
424- klibMergeDir : File
425- ) = project.task<CopyFile >(klibDumpConfig.apiTaskName(" Dump" )) {
423+ private fun Project.dumpKlibsTask (klibDumpConfig : TargetConfig ) = project.task<CopyFile >(klibDumpConfig.apiTaskName(" Dump" )) {
426424 isEnabled = klibAbiCheckEnabled(project.name, extension)
427425 description = " Syncs a KLib ABI dump from a build dir to the ${klibDumpConfig.apiDir} dir for ${project.name} "
428426 group = " other"
429- from = klibMergeDir.resolve(klibDumpFileName)
430- to = klibApiDir.get().resolve(klibDumpFileName)
431427 val hasCompilableTargets = project.hasCompilableTargetsPredicate()
432428 onlyIf(" There are no klibs compiled for the project" ) { hasCompilableTargets.get() }
433429 }
0 commit comments