[Gradle] Use ProjectLayout in KotlinMetadataLibraryDirectories

^KT-49933
This commit is contained in:
Anton Lakotka
2023-01-17 20:18:05 +01:00
committed by Space Team
parent 20a94b80be
commit c03e0f96d2
5 changed files with 11 additions and 12 deletions
@@ -44,7 +44,7 @@ internal class IdeaKpmMetadataBinaryDependencyResolver(
val sourceSetContent = artifactContent.findSourceSet(visibleFragmentName) ?: return@mapNotNull null val sourceSetContent = artifactContent.findSourceSet(visibleFragmentName) ?: return@mapNotNull null
val metadataBinary = sourceSetContent.metadataBinary ?: return@mapNotNull null val metadataBinary = sourceSetContent.metadataBinary ?: return@mapNotNull null
val libraryFile = fragment.project.kotlinTransformedMetadataLibraryDirectoryForIde val libraryFile = fragment.project.layout.kotlinTransformedMetadataLibraryDirectoryForIde
.resolve(metadataBinary.relativeFile) .resolve(metadataBinary.relativeFile)
.apply { if (!isFile) metadataBinary.copyTo(this) } .apply { if (!isFile) metadataBinary.copyTo(this) }
@@ -30,7 +30,7 @@ internal object IdeTransformedMetadataDependencyResolver : IdeDependencyResolver
val sourceSetContent = artifactContent.findSourceSet(visibleSourceSet) ?: return@mapNotNull null val sourceSetContent = artifactContent.findSourceSet(visibleSourceSet) ?: return@mapNotNull null
val sourceSetMetadataBinary = sourceSetContent.metadataBinary ?: return@mapNotNull null val sourceSetMetadataBinary = sourceSetContent.metadataBinary ?: return@mapNotNull null
val metadataLibraryOutputFile = sourceSet.internal.project.kotlinTransformedMetadataLibraryDirectoryForIde val metadataLibraryOutputFile = sourceSet.internal.project.layout.kotlinTransformedMetadataLibraryDirectoryForIde
.resolve(sourceSetMetadataBinary.relativeFile) .resolve(sourceSetMetadataBinary.relativeFile)
metadataLibraryOutputFile.parentFile.mkdirs() metadataLibraryOutputFile.parentFile.mkdirs()
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.gradle.plugin.mpp package org.jetbrains.kotlin.gradle.plugin.mpp
import org.gradle.api.Project
import org.gradle.api.file.ProjectLayout import org.gradle.api.file.ProjectLayout
import java.io.File import java.io.File
@@ -15,11 +14,11 @@ private const val kotlinTransformedCInteropMetadataLibraries = "kotlinTransforme
internal fun ProjectLayout.kotlinTransformedMetadataLibraryDirectoryForBuild(sourceSetName: String): File = internal fun ProjectLayout.kotlinTransformedMetadataLibraryDirectoryForBuild(sourceSetName: String): File =
buildDirectory.get().asFile.resolve(kotlinTransformedMetadataLibraries).resolve(sourceSetName) buildDirectory.get().asFile.resolve(kotlinTransformedMetadataLibraries).resolve(sourceSetName)
internal val Project.kotlinTransformedMetadataLibraryDirectoryForIde: File internal val ProjectLayout.kotlinTransformedMetadataLibraryDirectoryForIde: File
get() = rootDir.resolve(".gradle").resolve("kotlin").resolve(kotlinTransformedMetadataLibraries) get() = projectDirectory.asFile.resolve(".gradle").resolve("kotlin").resolve(kotlinTransformedMetadataLibraries)
internal fun Project.kotlinTransformedCInteropMetadataLibraryDirectoryForBuild(sourceSetName: String): File = internal fun ProjectLayout.kotlinTransformedCInteropMetadataLibraryDirectoryForBuild(sourceSetName: String): File =
buildDir.resolve(kotlinTransformedCInteropMetadataLibraries).resolve(sourceSetName) buildDirectory.get().asFile.resolve(kotlinTransformedCInteropMetadataLibraries).resolve(sourceSetName)
internal val Project.kotlinTransformedCInteropMetadataLibraryDirectoryForIde: File internal val ProjectLayout.kotlinTransformedCInteropMetadataLibraryDirectoryForIde: File
get() = rootDir.resolve(".gradle").resolve("kotlin").resolve(kotlinTransformedCInteropMetadataLibraries) get() = projectDirectory.asFile.resolve(".gradle").resolve("kotlin").resolve(kotlinTransformedCInteropMetadataLibraries)
@@ -27,7 +27,7 @@ internal fun Project.transformMetadataLibrariesForIde(
} }
is ArtifactMetadataProvider -> transformMetadataLibrariesForIde( is ArtifactMetadataProvider -> transformMetadataLibrariesForIde(
kotlinTransformedMetadataLibraryDirectoryForIde, resolution, metadataProvider layout.kotlinTransformedMetadataLibraryDirectoryForIde, resolution, metadataProvider
) )
} }
} }
@@ -54,7 +54,7 @@ internal fun Project.locateOrRegisterCInteropMetadataDependencyTransformationTas
args = listOf( args = listOf(
sourceSet, sourceSet,
/* outputDirectory = */ /* outputDirectory = */
project.kotlinTransformedCInteropMetadataLibraryDirectoryForBuild(sourceSet.name), project.layout.kotlinTransformedCInteropMetadataLibraryDirectoryForBuild(sourceSet.name),
/* outputLibraryFilesDiscovery = */ /* outputLibraryFilesDiscovery = */
CInteropMetadataDependencyTransformationTask.OutputLibraryFilesDiscovery.ScanOutputDirectory, CInteropMetadataDependencyTransformationTask.OutputLibraryFilesDiscovery.ScanOutputDirectory,
/* cleaning = */ /* cleaning = */
@@ -82,7 +82,7 @@ internal fun Project.locateOrRegisterCInteropMetadataDependencyTransformationTas
args = listOf( args = listOf(
sourceSet, sourceSet,
/* outputDirectory = */ /* outputDirectory = */
project.kotlinTransformedCInteropMetadataLibraryDirectoryForIde, project.layout.kotlinTransformedCInteropMetadataLibraryDirectoryForIde,
/* outputLibraryFilesDiscovery = */ /* outputLibraryFilesDiscovery = */
CInteropMetadataDependencyTransformationTask.OutputLibraryFilesDiscovery.Precise, CInteropMetadataDependencyTransformationTask.OutputLibraryFilesDiscovery.Precise,
/* cleaning = */ /* cleaning = */