Skip to content

Commit 198cf8b

Browse files
committed
Added starting point for ios
1 parent 5fa61ca commit 198cf8b

File tree

7 files changed

+81
-1
lines changed

7 files changed

+81
-1
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
plugins {
2-
kotlin("multiplatform") version "1.3.50" apply false
2+
kotlin("multiplatform") version "1.3.61" apply false
33
}
44

55
buildscript {

firebase-app/build.gradle.kts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import org.apache.tools.ant.taskdefs.condition.Os
33
plugins {
44
id("com.android.library")
55
kotlin("multiplatform")
6+
kotlin("native.cocoapods")
67
`maven-publish`
78
}
89
repositories {
@@ -35,6 +36,14 @@ kotlin {
3536
android {
3637
publishLibraryVariants("release", "debug")
3738
}
39+
val buildForDevice = project.findProperty("kotlin.native.cocoapods.target") == "ios_arm"
40+
val iosMain by sourceSets.creating
41+
if (buildForDevice) {
42+
iosArm64("ios64")
43+
sourceSets["ios64Main"].dependsOn(iosMain)
44+
} else {
45+
iosX64("ios")
46+
}
3847
jvm {
3948
val main by compilations.getting {
4049
kotlinOptions {
@@ -57,6 +66,10 @@ kotlin {
5766
val jvmMain by getting {
5867
kotlin.srcDir("src/androidMain/kotlin")
5968
}
69+
val iosMain by getting {
70+
dependencies {
71+
}
72+
}
6073
}
6174
}
6275

firebase-auth/build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ kotlin {
3232
android {
3333
publishLibraryVariants("release", "debug")
3434
}
35+
val buildForDevice = project.findProperty("kotlin.native.cocoapods.target") == "ios_arm"
36+
val iosMain by sourceSets.creating
37+
if (buildForDevice) {
38+
iosArm64("ios64")
39+
sourceSets["ios64Main"].dependsOn(iosMain)
40+
} else {
41+
iosX64("ios")
42+
}
3543
jvm {
3644
val main by compilations.getting {
3745
kotlinOptions {
@@ -52,6 +60,10 @@ kotlin {
5260
api("com.google.firebase:firebase-auth:17.0.0")
5361
}
5462
}
63+
val iosMain by getting {
64+
dependencies {
65+
}
66+
}
5567
val jvmMain by getting {
5668
kotlin.srcDir("src/androidMain/kotlin")
5769
}

firebase-common/build.gradle.kts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import org.apache.tools.ant.taskdefs.condition.Os
33
plugins {
44
id("com.android.library")
55
kotlin("multiplatform")
6+
kotlin("native.cocoapods")
67
`maven-publish`
78
}
89
repositories {
@@ -35,6 +36,10 @@ kotlin {
3536
android {
3637
publishLibraryVariants("release", "debug")
3738
}
39+
40+
val iosArm64 = iosArm64()
41+
val iosX64 = iosX64()
42+
3843
jvm {
3944
val main by compilations.getting {
4045
kotlinOptions {
@@ -57,6 +62,28 @@ kotlin {
5762
val jvmMain by getting {
5863
kotlin.srcDir("src/androidMain/kotlin")
5964
}
65+
val iosMain by creating {
66+
dependencies {
67+
}
68+
}
69+
70+
configure(listOf(iosArm64, iosX64)) {
71+
compilations.getByName("main") {
72+
source(sourceSets.get("iosMain"))
73+
val firebasecore by cinterops.creating {
74+
packageName("cocoapods.FirebaseCore")
75+
defFile(file("$projectDir/src/iosMain/c_interop/FirebaseCore.def"))
76+
//includeDirs("$projectDir/../native/Avalon/Pods/FirebaseCore/Firebase/Core/Public")
77+
compilerOpts("-F$projectDir/src/iosMain/c_interop/modules/FirebaseCore-6.0.2")
78+
}
79+
}
80+
}
81+
82+
cocoapods {
83+
summary = "Firebase Core for iOS (plus community support for macOS and tvOS)"
84+
homepage = "https://github.com/TeamHubApp/firebase-kotlin-multiplatform-sdk"
85+
//pod("FirebaseCore", "~> 6.3.1")
86+
}
6087
}
6188
}
6289

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
language = Objective-C
2+
modules = FirebaseCore
3+
compilerOpts = -framework FirebaseCore
4+
linkerOpts = -framework FirebaseCore

firebase-firestore/build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ kotlin {
3232
android {
3333
publishLibraryVariants("release", "debug")
3434
}
35+
val buildForDevice = project.findProperty("kotlin.native.cocoapods.target") == "ios_arm"
36+
val iosMain by sourceSets.creating
37+
if (buildForDevice) {
38+
iosArm64("ios64")
39+
sourceSets["ios64Main"].dependsOn(iosMain)
40+
} else {
41+
iosX64("ios")
42+
}
3543
jvm {
3644
val main by compilations.getting {
3745
kotlinOptions {
@@ -52,6 +60,10 @@ kotlin {
5260
api("com.google.firebase:firebase-firestore:19.0.2")
5361
}
5462
}
63+
val iosMain by getting {
64+
dependencies {
65+
}
66+
}
5567
val jvmMain by getting {
5668
kotlin.srcDir("src/androidMain/kotlin")
5769
}

firebase-functions/build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ kotlin {
3232
android {
3333
publishLibraryVariants("release", "debug")
3434
}
35+
val buildForDevice = project.findProperty("kotlin.native.cocoapods.target") == "ios_arm"
36+
val iosMain by sourceSets.creating
37+
if (buildForDevice) {
38+
iosArm64("ios64")
39+
sourceSets["ios64Main"].dependsOn(iosMain)
40+
} else {
41+
iosX64("ios")
42+
}
3543
jvm {
3644
val main by compilations.getting {
3745
kotlinOptions {
@@ -53,6 +61,10 @@ kotlin {
5361
implementation("com.google.code.gson:gson:2.7")
5462
}
5563
}
64+
val iosMain by getting {
65+
dependencies {
66+
}
67+
}
5668
val jvmMain by getting {
5769
kotlin.srcDir("src/androidMain/kotlin")
5870
dependencies {

0 commit comments

Comments
 (0)