xref: /aosp_15_r20/external/kotlinx.serialization/formats/json-okio/build.gradle.kts (revision 57b5a4a64c534cf7f27ac9427ceab07f3d8ed3d8)
1*57b5a4a6SAndroid Build Coastguard Worker /*
2*57b5a4a6SAndroid Build Coastguard Worker  * Copyright 2017-2022 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
3*57b5a4a6SAndroid Build Coastguard Worker  */
4*57b5a4a6SAndroid Build Coastguard Worker import Java9Modularity.configureJava9ModuleInfo
5*57b5a4a6SAndroid Build Coastguard Worker import org.jetbrains.dokka.gradle.*
6*57b5a4a6SAndroid Build Coastguard Worker import java.net.*
7*57b5a4a6SAndroid Build Coastguard Worker 
<lambda>null8*57b5a4a6SAndroid Build Coastguard Worker plugins {
9*57b5a4a6SAndroid Build Coastguard Worker     kotlin("multiplatform")
10*57b5a4a6SAndroid Build Coastguard Worker     kotlin("plugin.serialization")
11*57b5a4a6SAndroid Build Coastguard Worker }
12*57b5a4a6SAndroid Build Coastguard Worker 
13*57b5a4a6SAndroid Build Coastguard Worker apply(from = rootProject.file("gradle/native-targets.gradle"))
14*57b5a4a6SAndroid Build Coastguard Worker apply(from = rootProject.file("gradle/configure-source-sets.gradle"))
15*57b5a4a6SAndroid Build Coastguard Worker 
<lambda>null16*57b5a4a6SAndroid Build Coastguard Worker kotlin {
17*57b5a4a6SAndroid Build Coastguard Worker     sourceSets {
18*57b5a4a6SAndroid Build Coastguard Worker         configureEach {
19*57b5a4a6SAndroid Build Coastguard Worker             languageSettings {
20*57b5a4a6SAndroid Build Coastguard Worker                 optIn("kotlinx.serialization.internal.CoreFriendModuleApi")
21*57b5a4a6SAndroid Build Coastguard Worker                 optIn("kotlinx.serialization.json.internal.JsonFriendModuleApi")
22*57b5a4a6SAndroid Build Coastguard Worker             }
23*57b5a4a6SAndroid Build Coastguard Worker         }
24*57b5a4a6SAndroid Build Coastguard Worker         val commonMain by getting {
25*57b5a4a6SAndroid Build Coastguard Worker             dependencies {
26*57b5a4a6SAndroid Build Coastguard Worker                 api(project(":kotlinx-serialization-core"))
27*57b5a4a6SAndroid Build Coastguard Worker                 api(project(":kotlinx-serialization-json"))
28*57b5a4a6SAndroid Build Coastguard Worker                 implementation("com.squareup.okio:okio:${property("okio_version")}")
29*57b5a4a6SAndroid Build Coastguard Worker             }
30*57b5a4a6SAndroid Build Coastguard Worker         }
31*57b5a4a6SAndroid Build Coastguard Worker         val commonTest by getting {
32*57b5a4a6SAndroid Build Coastguard Worker             dependencies {
33*57b5a4a6SAndroid Build Coastguard Worker                 implementation("com.squareup.okio:okio:${property("okio_version")}")
34*57b5a4a6SAndroid Build Coastguard Worker             }
35*57b5a4a6SAndroid Build Coastguard Worker         }
36*57b5a4a6SAndroid Build Coastguard Worker     }
37*57b5a4a6SAndroid Build Coastguard Worker }
38*57b5a4a6SAndroid Build Coastguard Worker 
39*57b5a4a6SAndroid Build Coastguard Worker project.configureJava9ModuleInfo()
40*57b5a4a6SAndroid Build Coastguard Worker 
<lambda>null41*57b5a4a6SAndroid Build Coastguard Worker tasks.named<DokkaTaskPartial>("dokkaHtmlPartial") {
42*57b5a4a6SAndroid Build Coastguard Worker     dokkaSourceSets {
43*57b5a4a6SAndroid Build Coastguard Worker         configureEach {
44*57b5a4a6SAndroid Build Coastguard Worker             externalDocumentationLink {
45*57b5a4a6SAndroid Build Coastguard Worker                 url.set(URL("https://square.github.io/okio/3.x/okio/"))
46*57b5a4a6SAndroid Build Coastguard Worker                 packageListUrl.set(
47*57b5a4a6SAndroid Build Coastguard Worker                     file("dokka/okio.package.list").toURI().toURL()
48*57b5a4a6SAndroid Build Coastguard Worker                 )
49*57b5a4a6SAndroid Build Coastguard Worker             }
50*57b5a4a6SAndroid Build Coastguard Worker         }
51*57b5a4a6SAndroid Build Coastguard Worker     }
52*57b5a4a6SAndroid Build Coastguard Worker }
53*57b5a4a6SAndroid Build Coastguard Worker 
54*57b5a4a6SAndroid Build Coastguard Worker 
55*57b5a4a6SAndroid Build Coastguard Worker // TODO: Remove this after okio will be updated to the version with 1.9.20 stdlib dependency
<lambda>null56*57b5a4a6SAndroid Build Coastguard Worker configurations.all {
57*57b5a4a6SAndroid Build Coastguard Worker     resolutionStrategy.eachDependency {
58*57b5a4a6SAndroid Build Coastguard Worker         if (requested.name == "kotlin-stdlib-wasm") {
59*57b5a4a6SAndroid Build Coastguard Worker             useTarget("org.jetbrains.kotlin:kotlin-stdlib-wasm-js:${requested.version}")
60*57b5a4a6SAndroid Build Coastguard Worker         }
61*57b5a4a6SAndroid Build Coastguard Worker     }
62*57b5a4a6SAndroid Build Coastguard Worker }
63