[Gradle] TCS:Gradle Sync: Initial support for multiplatform composite builds
KT-52172
This commit is contained in:
committed by
Space Team
parent
d4177f167b
commit
90f8edbe80
+2
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers
|
||||
|
||||
import org.gradle.api.artifacts.component.ProjectComponentIdentifier
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCoordinates
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinResolvedBinaryDependency
|
||||
@@ -20,6 +21,7 @@ import org.jetbrains.kotlin.tooling.core.mutableExtrasOf
|
||||
internal object IdeTransformedMetadataDependencyResolver : IdeDependencyResolver {
|
||||
override fun resolve(sourceSet: KotlinSourceSet): Set<IdeaKotlinDependency> =
|
||||
sourceSet.resolveMetadata<ChooseVisibleSourceSets>()
|
||||
.filter { resolution -> resolution.dependency.id !is ProjectComponentIdentifier }
|
||||
.flatMap { resolution -> resolve(sourceSet, resolution) }
|
||||
.toSet()
|
||||
|
||||
|
||||
+3
-2
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers
|
||||
|
||||
import org.gradle.api.artifacts.component.ProjectComponentIdentifier
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependency
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinSourceCoordinates
|
||||
import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinSourceDependency
|
||||
@@ -25,12 +26,12 @@ internal object IdeVisibleMultiplatformSourceDependencyResolver : IdeDependencyR
|
||||
private fun resolveSourceDependencies(
|
||||
resolution: MetadataDependencyResolution.ChooseVisibleSourceSets
|
||||
): Iterable<IdeaKotlinDependency> {
|
||||
val project = resolution.projectDependency ?: return emptyList()
|
||||
val projectComponentIdentifier = resolution.dependency.id as? ProjectComponentIdentifier ?: return emptyList()
|
||||
return resolution.allVisibleSourceSetNames.map { visibleSourceSetName ->
|
||||
IdeaKotlinSourceDependency(
|
||||
type = IdeaKotlinSourceDependency.Type.Regular,
|
||||
coordinates = IdeaKotlinSourceCoordinates(
|
||||
project = IdeaKotlinProjectCoordinates(project),
|
||||
project = IdeaKotlinProjectCoordinates(projectComponentIdentifier),
|
||||
sourceSetName = visibleSourceSetName
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user