Fix gradle task name clash for Xcode framework tasks.

This commit is contained in:
konstantin.tskhovrebov
2021-12-17 10:47:15 +01:00
committed by teamcity
parent 2c8086bbfe
commit 8423374343
2 changed files with 7 additions and 2 deletions
@@ -87,12 +87,14 @@ private fun Project.registerAssembleAppleFrameworkTask(framework: Framework): Ta
val frameworkBuildType = framework.buildType
val frameworkTarget = framework.target
val isRequestedFramework = envTargets.contains(frameworkTarget.konanTarget)
val frameworkTaskName = lowerCamelCaseName(
"assemble",
framework.namePrefix,
frameworkBuildType.getName(),
"AppleFrameworkForXcode",
if (!needFatFramework) frameworkTarget.name else null
if (isRequestedFramework && needFatFramework) null else frameworkTarget.name //for fat framework we need common name
)
val envBuildType = XcodeEnvironment.buildType
@@ -112,7 +114,7 @@ private fun Project.registerAssembleAppleFrameworkTask(framework: Framework): Ta
}
return when {
!envTargets.contains(frameworkTarget.konanTarget) -> locateOrRegisterTask<DefaultTask>(frameworkTaskName) { task ->
!isRequestedFramework -> locateOrRegisterTask<DefaultTask>(frameworkTaskName) { task ->
task.description = "Packs $frameworkBuildType ${frameworkTarget.name} framework for Xcode"
task.isEnabled = false
}
@@ -5,8 +5,10 @@
package org.jetbrains.kotlin.gradle.targets.native.tasks.artifact
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.attributes.Usage
import org.gradle.kotlin.dsl.create
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget
@@ -15,6 +17,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
import org.jetbrains.kotlin.konan.target.KonanTarget
import org.jetbrains.kotlin.konan.target.presetName
import javax.inject.Inject
abstract class KotlinArtifact {
internal val modules = mutableSetOf<Any>()