KT-51884 Skip XCFramework and FatFramework tasks on non-mac machines.
This commit is contained in:
committed by
Space
parent
8bc29a3011
commit
c82b1d3e33
+17
-2
@@ -14,13 +14,13 @@ import org.junit.BeforeClass
|
||||
import org.junit.Test
|
||||
import kotlin.test.assertTrue
|
||||
|
||||
class CocoaPodsNonMacIT : BaseGradleIT() {
|
||||
class AppleFrameworkNonMacIT : BaseGradleIT() {
|
||||
|
||||
override val defaultGradleVersion: GradleVersionRequired
|
||||
get() = GradleVersionRequired.FOR_MPP_SUPPORT
|
||||
|
||||
@Test
|
||||
fun testImport() {
|
||||
fun `check success podImport`() {
|
||||
transformProjectWithPluginsDsl(
|
||||
"native-cocoapods-tests"
|
||||
).build("podImport", "-Pkotlin.native.cocoapods.generate.wrapper=true") {
|
||||
@@ -29,6 +29,21 @@ class CocoaPodsNonMacIT : BaseGradleIT() {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `check XCFramework and FatFramework tasks are SKIPPED`() {
|
||||
transformProjectWithPluginsDsl("appleXCFramework")
|
||||
.build("assembleSharedDebugXCFramework") {
|
||||
assertSuccessful()
|
||||
assertTasksSkipped(":shared:linkDebugFrameworkIosArm64")
|
||||
assertTasksSkipped(":shared:linkDebugFrameworkIosX64")
|
||||
assertTasksSkipped(":shared:linkDebugFrameworkWatchosArm32")
|
||||
assertTasksSkipped(":shared:linkDebugFrameworkWatchosArm64")
|
||||
assertTasksSkipped(":shared:linkDebugFrameworkWatchosX64")
|
||||
assertTasksSkipped(":shared:assembleDebugWatchosFatFrameworkForSharedXCFramework")
|
||||
assertTasksSkipped(":shared:assembleSharedDebugXCFramework")
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
@BeforeClass
|
||||
@JvmStatic
|
||||
+5
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.Framework
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
|
||||
import org.jetbrains.kotlin.gradle.tasks.*
|
||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||
import org.jetbrains.kotlin.konan.target.HostManager
|
||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||
import java.io.File
|
||||
|
||||
@@ -138,6 +139,10 @@ private fun Project.registerAssembleFatForXCFrameworkTask(
|
||||
}
|
||||
|
||||
abstract class XCFrameworkTask : DefaultTask() {
|
||||
init {
|
||||
onlyIf { HostManager.hostIsMac }
|
||||
}
|
||||
|
||||
/**
|
||||
* A base name for the XCFramework.
|
||||
*/
|
||||
|
||||
+5
@@ -16,6 +16,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind
|
||||
import org.jetbrains.kotlin.gradle.utils.appendLine
|
||||
import org.jetbrains.kotlin.konan.target.Architecture
|
||||
import org.jetbrains.kotlin.konan.target.Family
|
||||
import org.jetbrains.kotlin.konan.target.HostManager
|
||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||
import org.jetbrains.kotlin.konan.target.KonanTarget.*
|
||||
import org.jetbrains.kotlin.konan.util.visibleName
|
||||
@@ -89,6 +90,10 @@ class FrameworkDescriptor(
|
||||
* Task running lipo to create a fat framework from several simple frameworks. It also merges headers, plists and module files.
|
||||
*/
|
||||
open class FatFrameworkTask : DefaultTask() {
|
||||
init {
|
||||
onlyIf { HostManager.hostIsMac }
|
||||
}
|
||||
|
||||
private val archToFramework: MutableMap<Architecture, FrameworkDescriptor> = mutableMapOf()
|
||||
|
||||
//region DSL properties.
|
||||
|
||||
Reference in New Issue
Block a user