Rishi Rajput
07/25/2023, 3:49 AMRishi Rajput
07/25/2023, 3:50 AMimport com.android.build.gradle.internal.scope.ProjectInfo.Companion.getBaseName
plugins {
kotlin("multiplatform")
kotlin("native.cocoapods")
id("com.android.library")
kotlin("plugin.serialization") version "1.9.0"
id("app.cash.sqldelight") version "2.0.0-rc02"
}
version = "1.0.10"
extra["version"] = version
kotlin {
androidTarget() {
}
iosX64()
iosArm64()
iosSimulatorArm64()
cocoapods {
summary = "Some description for the Shared Module"
homepage = "<https://github.com/abc/xyz-library.git>"
ios.deploymentTarget = "13.0"
framework {
baseName = "multiplatform"
}
name = getBaseName()
authors = "vdb"
license = "Proprietary"
}
val coroutinesVersion = "1.7.1"
val ktorVersion = "2.3.2"
val dateTimeVersion = "0.4.0"
sourceSets {
val commonMain by getting {
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion")
implementation("io.ktor:ktor-client-core:$ktorVersion")
implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion")
implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion")
implementation("org.jetbrains.kotlinx:kotlinx-datetime:$dateTimeVersion")
}
}
val commonTest by getting {
dependencies {
implementation(kotlin("test"))
}
}
val androidMain by getting {
dependencies {
implementation("io.ktor:ktor-client-android:$ktorVersion")
implementation("app.cash.sqldelight:android-driver:2.0.0-rc02")
}
}
val androidUnitTest by getting
val iosX64Main by getting
val iosArm64Main by getting
val iosSimulatorArm64Main by getting
val iosMain by creating {
dependsOn(commonMain)
iosX64Main.dependsOn(this)
iosArm64Main.dependsOn(this)
iosSimulatorArm64Main.dependsOn(this)
dependencies {
implementation("io.ktor:ktor-client-darwin:$ktorVersion")
implementation("app.cash.sqldelight:native-driver:2.0.0-rc02")
}
}
val iosX64Test by getting
val iosArm64Test by getting
val iosSimulatorArm64Test by getting
val iosTest by creating {
dependsOn(commonTest)
iosX64Test.dependsOn(this)
iosArm64Test.dependsOn(this)
iosSimulatorArm64Test.dependsOn(this)
}
}
}
android {
compileSdk = 32
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
defaultConfig {
minSdk = 21
targetSdk = 32
}
}
sqldelight {
databases {
create("AppDatabase") {
packageName.set("sqldelight.database")
}
}
}
apply(from = "pushIOSFrameworkOnGithub.gradle.kts")
apply(from = "pushAndroidArchiveOnGithub.gradle.kts")
Rishi Rajput
07/25/2023, 7:48 AM