[gradle-plugin] Fix dependencies between building and publishing

This commit is contained in:
Ilya Matveev
2018-04-24 16:40:22 +07:00
committed by ilmat192
parent b54685e742
commit 93b8a0595c
2 changed files with 3 additions and 3 deletions
@@ -358,7 +358,6 @@ class KonanPlugin @Inject constructor(private val registry: ToolingModelBuilderR
val artifactId = buildingConfig.name
val konanSoftwareComponent = buildingConfig.mainVariant
project.extensions.configure(PublishingExtension::class.java) {
val publishing = it
it.publications.create(artifactId, MavenPublication::class.java) {
it.artifactId = artifactId
it.groupId = project.group.toString()
@@ -24,6 +24,7 @@ import org.gradle.api.artifacts.Configuration
import org.gradle.api.artifacts.PublishArtifact
import org.gradle.api.attributes.Attribute
import org.gradle.api.attributes.Usage
import org.gradle.api.internal.tasks.DefaultTaskDependency
import org.gradle.api.tasks.*
import org.gradle.language.cpp.CppBinary
import org.gradle.language.cpp.internal.NativeVariant
@@ -104,11 +105,11 @@ abstract class KonanArtifactTask: KonanTargetableTask(), KonanArtifactSpec {
override fun getClassifier():String? = target.name
override fun getFile() = artifact
override fun getDate() = Date(artifact.lastModified())
override fun getBuildDependencies(): TaskDependency = this@KonanArtifactTask.taskDependencies
override fun getBuildDependencies(): TaskDependency =
DefaultTaskDependency().apply { add(this@KonanArtifactTask) }
})
val objectFactory = project.objects
val linkUsage = objectFactory.named(Usage::class.java, Usage.NATIVE_LINK)
val runtimeUsage = objectFactory.named(Usage::class.java, Usage.NATIVE_RUNTIME)
val konanSoftwareComponent = config.mainVariant
konanSoftwareComponent.addVariant(NativeVariant(Names.of("${artifact.name.removeSuffix("$artifactSuffix")}_${target.name}"), linkUsage, null, linkUsage, platformConfiguration))
}