From 412c4864ca4a07bc2aacced5b4fb18d6b5637f93 Mon Sep 17 00:00:00 2001 From: Ilya Matveev Date: Fri, 15 Jun 2018 16:47:28 +0300 Subject: [PATCH] [gradle-plugin] Fix file names for artifacts uploaded --- .../jetbrains/kotlin/gradle/plugin/KonanLibrariesSpec.kt | 1 + .../org/jetbrains/kotlin/gradle/plugin/KonanPlugin.kt | 5 ++++- .../kotlin/gradle/plugin/tasks/KonanCompileTask.kt | 7 ++++--- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanLibrariesSpec.kt b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanLibrariesSpec.kt index ce0f425bf4b..f2ebb438327 100644 --- a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanLibrariesSpec.kt +++ b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanLibrariesSpec.kt @@ -50,6 +50,7 @@ open class KonanLibrariesSpec(val task: KonanArtifactWithLibrariesTask, val proj add(task.destinationDir) // TODO: Check if task is a library - create a Library interface add(task.project.konanLibsBaseDir.targetSubdir(target)) addAll(artifacts.flatMap { it.libraries.repos }) + addAll(task.platformConfiguration.files.map { it.parentFile }) } val target: KonanTarget diff --git a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanPlugin.kt b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanPlugin.kt index ea71960953c..644c1079dc0 100644 --- a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanPlugin.kt +++ b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KonanPlugin.kt @@ -27,6 +27,7 @@ import org.gradle.api.internal.project.ProjectInternal import org.gradle.api.plugins.BasePlugin import org.gradle.api.publish.PublishingExtension import org.gradle.api.publish.maven.MavenPublication +import org.gradle.api.publish.maven.internal.publication.MavenPublicationInternal import org.gradle.language.cpp.internal.NativeVariantIdentity import org.gradle.tooling.provider.model.ToolingModelBuilderRegistry import org.gradle.util.GradleVersion @@ -360,12 +361,13 @@ class KonanPlugin @Inject constructor(private val registry: ToolingModelBuilderR val konanSoftwareComponent = buildingConfig.mainVariant project.extensions.configure(PublishingExtension::class.java) { val builtArtifact = buildingConfig.name - val mavenPublication = it.publications.maybeCreate(builtArtifact) as MavenPublication + val mavenPublication = it.publications.maybeCreate(builtArtifact, MavenPublication::class.java) mavenPublication.apply { artifactId = builtArtifact groupId = project.group.toString() from(konanSoftwareComponent) } + (mavenPublication as MavenPublicationInternal).publishWithOriginalFileName() buildingConfig.pomActions.forEach { mavenPublication.pom(it) } @@ -381,6 +383,7 @@ class KonanPlugin @Inject constructor(private val registry: ToolingModelBuilderR mavenPublication.groupId = coordinates.group mavenPublication.version = coordinates.version mavenPublication.from(v) + (mavenPublication as MavenPublicationInternal).publishWithOriginalFileName() buildingConfig.pomActions.forEach { mavenPublication.pom(it) } diff --git a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/tasks/KonanCompileTask.kt b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/tasks/KonanCompileTask.kt index d495c958c3c..b746c244f7b 100644 --- a/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/tasks/KonanCompileTask.kt +++ b/tools/kotlin-native-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/tasks/KonanCompileTask.kt @@ -108,13 +108,14 @@ abstract class KonanCompileTask: KonanBuildingTask(), KonanCompileSpec { if (platformConfiguration.files.isNotEmpty()) { platformConfiguration.files.filter { it.name.endsWith(".klib") }.forEach { - addFileArgs("-library", project.files(it.absolutePath)) + // The library's directory is added in libraries.repos. + addArg("-library", it.nameWithoutExtension) } - } addFileArgs("-library", libraries.files) addArgs("-library", libraries.namedKlibs) - addArgs("-library", libraries.artifacts.map { it.artifact.canonicalPath }) + // The library's directory is added in libraries.repos. + addArgs("-library", libraries.artifacts.map { it.artifact.nameWithoutExtension }) addFileArgs("-nativelibrary", nativeLibraries) addArg("-produce", produce.name.toLowerCase())