33 */
44
55import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget
6+ import org.jetbrains.kotlin.konan.target.KonanTarget
67
78version = project.property(" firebase-config.version" ) as String
89
@@ -55,6 +56,13 @@ android {
5556// logEmulatorOutput(false)
5657// }
5758
59+ val KonanTarget .archVariant: String
60+ get() = if (this is KonanTarget .IOS_X64 || this is KonanTarget .IOS_SIMULATOR_ARM64 ) {
61+ " ios-arm64_i386_x86_64-simulator"
62+ } else {
63+ " ios-arm64_armv7"
64+ }
65+
5866kotlin {
5967
6068 android {
@@ -73,17 +81,13 @@ kotlin {
7381 " PromisesObjC" ,
7482 " nanopb"
7583 ).map {
76- val archVariant =
77- if (konanTarget is org.jetbrains.kotlin.konan.target.KonanTarget .IOS_X64 ) " ios-arm64_i386_x86_64-simulator" else " ios-arm64_armv7"
78- rootProject.project(" firebase-app" ).projectDir.resolve(" src/nativeInterop/cinterop/Carthage/Build/$it .xcframework/$archVariant " )
84+ rootProject.project(" firebase-app" ).projectDir.resolve(" src/nativeInterop/cinterop/Carthage/Build/$it .xcframework/${konanTarget.archVariant} " )
7985 }.plus(
8086 listOf (
8187 " FirebaseABTesting" ,
8288 " FirebaseRemoteConfig"
8389 ).map {
84- val archVariant =
85- if (konanTarget is org.jetbrains.kotlin.konan.target.KonanTarget .IOS_X64 ) " ios-arm64_i386_x86_64-simulator" else " ios-arm64_armv7"
86- projectDir.resolve(" src/nativeInterop/cinterop/Carthage/Build/$it .xcframework/$archVariant " )
90+ projectDir.resolve(" src/nativeInterop/cinterop/Carthage/Build/$it .xcframework/${konanTarget.archVariant} " )
8791 }
8892 )
8993
@@ -102,11 +106,8 @@ kotlin {
102106 }
103107 }
104108
105- if (project.extra[" ideaActive" ] as Boolean ) {
106- iosX64(" ios" , nativeTargetConfig())
107- } else {
108- ios(configure = nativeTargetConfig())
109- }
109+ ios(configure = nativeTargetConfig())
110+ iosSimulatorArm64(configure = nativeTargetConfig())
110111
111112 js {
112113 useCommonJs()
@@ -143,6 +144,12 @@ kotlin {
143144 }
144145
145146 val iosMain by getting
147+ val iosSimulatorArm64Main by getting
148+ iosSimulatorArm64Main.dependsOn(iosMain)
149+
150+ val iosTest by sourceSets.getting
151+ val iosSimulatorArm64Test by sourceSets.getting
152+ iosSimulatorArm64Test.dependsOn(iosTest)
146153
147154 val jsMain by getting
148155 }
0 commit comments