xref: /aosp_15_r20/external/flatbuffers/kotlin/flatbuffers-kotlin/build.gradle.kts (revision 890232f25432b36107d06881e0a25aaa6b473652)

<lambda>null1*890232f2SAndroid Build Coastguard Worker plugins {
2*890232f2SAndroid Build Coastguard Worker   kotlin("multiplatform")
3*890232f2SAndroid Build Coastguard Worker }
4*890232f2SAndroid Build Coastguard Worker 
5*890232f2SAndroid Build Coastguard Worker group = "com.google.flatbuffers.kotlin"
6*890232f2SAndroid Build Coastguard Worker version = "2.0.0-SNAPSHOT"
7*890232f2SAndroid Build Coastguard Worker 
<lambda>null8*890232f2SAndroid Build Coastguard Worker kotlin {
9*890232f2SAndroid Build Coastguard Worker   explicitApi()
10*890232f2SAndroid Build Coastguard Worker   jvm()
11*890232f2SAndroid Build Coastguard Worker   js {
12*890232f2SAndroid Build Coastguard Worker     browser {
13*890232f2SAndroid Build Coastguard Worker      testTask {
14*890232f2SAndroid Build Coastguard Worker         useKarma {
15*890232f2SAndroid Build Coastguard Worker           useChromeHeadless()
16*890232f2SAndroid Build Coastguard Worker         }
17*890232f2SAndroid Build Coastguard Worker       }
18*890232f2SAndroid Build Coastguard Worker     }
19*890232f2SAndroid Build Coastguard Worker     binaries.executable()
20*890232f2SAndroid Build Coastguard Worker   }
21*890232f2SAndroid Build Coastguard Worker   macosX64()
22*890232f2SAndroid Build Coastguard Worker   iosArm32()
23*890232f2SAndroid Build Coastguard Worker   iosArm64()
24*890232f2SAndroid Build Coastguard Worker   iosX64()
25*890232f2SAndroid Build Coastguard Worker 
26*890232f2SAndroid Build Coastguard Worker   sourceSets {
27*890232f2SAndroid Build Coastguard Worker     val commonMain by getting {
28*890232f2SAndroid Build Coastguard Worker       dependencies {
29*890232f2SAndroid Build Coastguard Worker         implementation(kotlin("stdlib-common"))
30*890232f2SAndroid Build Coastguard Worker       }
31*890232f2SAndroid Build Coastguard Worker     }
32*890232f2SAndroid Build Coastguard Worker 
33*890232f2SAndroid Build Coastguard Worker     val commonTest by getting {
34*890232f2SAndroid Build Coastguard Worker       dependencies {
35*890232f2SAndroid Build Coastguard Worker         implementation(kotlin("test"))
36*890232f2SAndroid Build Coastguard Worker       }
37*890232f2SAndroid Build Coastguard Worker     }
38*890232f2SAndroid Build Coastguard Worker     val jvmTest by getting {
39*890232f2SAndroid Build Coastguard Worker       dependencies {
40*890232f2SAndroid Build Coastguard Worker         implementation(kotlin("test-junit"))
41*890232f2SAndroid Build Coastguard Worker       }
42*890232f2SAndroid Build Coastguard Worker     }
43*890232f2SAndroid Build Coastguard Worker     val jvmMain by getting {
44*890232f2SAndroid Build Coastguard Worker       kotlin.srcDir("java")
45*890232f2SAndroid Build Coastguard Worker     }
46*890232f2SAndroid Build Coastguard Worker 
47*890232f2SAndroid Build Coastguard Worker     val jsMain by getting {
48*890232f2SAndroid Build Coastguard Worker       dependsOn(commonMain)
49*890232f2SAndroid Build Coastguard Worker     }
50*890232f2SAndroid Build Coastguard Worker     val jsTest by getting {
51*890232f2SAndroid Build Coastguard Worker       dependsOn(commonTest)
52*890232f2SAndroid Build Coastguard Worker       dependencies {
53*890232f2SAndroid Build Coastguard Worker         implementation(kotlin("test-js"))
54*890232f2SAndroid Build Coastguard Worker       }
55*890232f2SAndroid Build Coastguard Worker     }
56*890232f2SAndroid Build Coastguard Worker     val nativeMain by creating {
57*890232f2SAndroid Build Coastguard Worker         dependsOn(commonMain)
58*890232f2SAndroid Build Coastguard Worker     }
59*890232f2SAndroid Build Coastguard Worker     val nativeTest by creating {
60*890232f2SAndroid Build Coastguard Worker       dependsOn(commonMain)
61*890232f2SAndroid Build Coastguard Worker     }
62*890232f2SAndroid Build Coastguard Worker     val macosX64Main by getting {
63*890232f2SAndroid Build Coastguard Worker       dependsOn(nativeMain)
64*890232f2SAndroid Build Coastguard Worker     }
65*890232f2SAndroid Build Coastguard Worker 
66*890232f2SAndroid Build Coastguard Worker     val iosArm32Main by getting {
67*890232f2SAndroid Build Coastguard Worker       dependsOn(nativeMain)
68*890232f2SAndroid Build Coastguard Worker     }
69*890232f2SAndroid Build Coastguard Worker     val iosArm64Main by getting {
70*890232f2SAndroid Build Coastguard Worker       dependsOn(nativeMain)
71*890232f2SAndroid Build Coastguard Worker     }
72*890232f2SAndroid Build Coastguard Worker     val iosX64Main by getting {
73*890232f2SAndroid Build Coastguard Worker       dependsOn(nativeMain)
74*890232f2SAndroid Build Coastguard Worker     }
75*890232f2SAndroid Build Coastguard Worker 
76*890232f2SAndroid Build Coastguard Worker     all {
77*890232f2SAndroid Build Coastguard Worker       languageSettings.enableLanguageFeature("InlineClasses")
78*890232f2SAndroid Build Coastguard Worker       languageSettings.optIn("kotlin.ExperimentalUnsignedTypes")
79*890232f2SAndroid Build Coastguard Worker     }
80*890232f2SAndroid Build Coastguard Worker   }
81*890232f2SAndroid Build Coastguard Worker }
82*890232f2SAndroid Build Coastguard Worker 
83*890232f2SAndroid Build Coastguard Worker // Fixes JS issue: https://youtrack.jetbrains.com/issue/KT-49109
<lambda>null84*890232f2SAndroid Build Coastguard Worker rootProject.plugins.withType<org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin> {
85*890232f2SAndroid Build Coastguard Worker   rootProject.the<org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension>().nodeVersion = "16.0.0"
86*890232f2SAndroid Build Coastguard Worker }
87