You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
118 lines
2.9 KiB
118 lines
2.9 KiB
2 years ago
|
plugins {
|
||
|
kotlin("multiplatform")
|
||
|
kotlin("native.cocoapods")
|
||
|
id("com.android.library")
|
||
|
id("org.jetbrains.compose")
|
||
|
}
|
||
|
|
||
|
version = "1.0-SNAPSHOT"
|
||
|
|
||
|
kotlin {
|
||
|
android()
|
||
|
|
||
|
jvm("desktop")
|
||
|
|
||
|
ios()
|
||
|
iosSimulatorArm64()
|
||
|
|
||
|
js(IR) {
|
||
|
browser()
|
||
|
}
|
||
|
|
||
|
macosX64 {
|
||
|
binaries {
|
||
|
executable {
|
||
|
entryPoint = "main"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
macosArm64 {
|
||
|
binaries {
|
||
|
executable {
|
||
|
entryPoint = "main"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
cocoapods {
|
||
|
summary = "Shared code for the sample"
|
||
|
homepage = "https://github.com/JetBrains/compose-jb"
|
||
|
ios.deploymentTarget = "14.1"
|
||
|
podfile = project.file("../iosApp/Podfile")
|
||
|
framework {
|
||
|
baseName = "shared"
|
||
|
isStatic = true
|
||
|
}
|
||
|
extraSpecAttributes["resources"] = "['src/commonMain/resources/**', 'src/iosMain/resources/**']"
|
||
|
}
|
||
|
|
||
|
val composeVersion = extra["compose.version"] as String
|
||
|
|
||
|
sourceSets {
|
||
|
val commonMain by getting {
|
||
|
dependencies {
|
||
|
implementation(compose.ui)
|
||
|
implementation(compose.foundation)
|
||
|
implementation(compose.material)
|
||
|
implementation(compose.runtime)
|
||
|
implementation("org.jetbrains.compose.components:components-resources:$composeVersion")
|
||
|
}
|
||
|
}
|
||
|
val commonTest by getting {
|
||
|
dependencies {
|
||
|
implementation(kotlin("test"))
|
||
|
implementation(kotlin("test-annotations-common")) }
|
||
|
}
|
||
|
|
||
|
val androidMain by getting {
|
||
|
dependencies {
|
||
|
implementation("com.google.android.material:material:1.7.0")
|
||
|
}
|
||
|
}
|
||
|
val androidTest by getting {
|
||
|
dependencies {
|
||
|
implementation("junit:junit:4.13.2")
|
||
|
}
|
||
|
}
|
||
|
val iosMain by getting
|
||
|
val iosTest by getting
|
||
|
val iosSimulatorArm64Main by getting {
|
||
|
dependsOn(iosMain)
|
||
|
}
|
||
|
val iosSimulatorArm64Test by getting {
|
||
|
dependsOn(iosTest)
|
||
|
}
|
||
|
|
||
|
val desktopMain by getting {
|
||
|
dependencies {
|
||
|
implementation(compose.desktop.common)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
val macosMain by creating {
|
||
|
dependsOn(commonMain)
|
||
|
}
|
||
|
val macosX64Main by getting {
|
||
|
dependsOn(macosMain)
|
||
|
}
|
||
|
val macosArm64Main by getting {
|
||
|
dependsOn(macosMain)
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
android {
|
||
|
compileSdk = 33
|
||
|
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
||
|
sourceSets["main"].res.srcDirs("src/androidMain/res")
|
||
|
sourceSets["main"].resources.srcDirs("src/commonMain/resources")
|
||
|
defaultConfig {
|
||
|
minSdk = 24
|
||
|
targetSdk = 33
|
||
|
}
|
||
|
compileOptions {
|
||
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||
|
}
|
||
|
}
|