xref: /aosp_15_r20/external/ktfmt/online_formatter/build.gradle.kts (revision 5be3f65c8cf0e6db0a7e312df5006e8e93cdf9ec)
1*5be3f65cSAndroid Build Coastguard Worker /*
2*5be3f65cSAndroid Build Coastguard Worker  * Copyright (c) Meta Platforms, Inc. and affiliates.
3*5be3f65cSAndroid Build Coastguard Worker  *
4*5be3f65cSAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
5*5be3f65cSAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
6*5be3f65cSAndroid Build Coastguard Worker  * You may obtain a copy of the License at
7*5be3f65cSAndroid Build Coastguard Worker  *
8*5be3f65cSAndroid Build Coastguard Worker  *     http://www.apache.org/licenses/LICENSE-2.0
9*5be3f65cSAndroid Build Coastguard Worker  *
10*5be3f65cSAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
11*5be3f65cSAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
12*5be3f65cSAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*5be3f65cSAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
14*5be3f65cSAndroid Build Coastguard Worker  * limitations under the License.
15*5be3f65cSAndroid Build Coastguard Worker  */
16*5be3f65cSAndroid Build Coastguard Worker 
17*5be3f65cSAndroid Build Coastguard Worker import com.ncorti.ktfmt.gradle.tasks.KtfmtCheckTask
18*5be3f65cSAndroid Build Coastguard Worker import com.ncorti.ktfmt.gradle.tasks.KtfmtFormatTask
19*5be3f65cSAndroid Build Coastguard Worker 
<lambda>null20*5be3f65cSAndroid Build Coastguard Worker plugins {
21*5be3f65cSAndroid Build Coastguard Worker   kotlin("jvm") version "1.8.22"
22*5be3f65cSAndroid Build Coastguard Worker   id("com.ncorti.ktfmt.gradle") version "0.19.0"
23*5be3f65cSAndroid Build Coastguard Worker }
24*5be3f65cSAndroid Build Coastguard Worker 
<lambda>null25*5be3f65cSAndroid Build Coastguard Worker repositories {
26*5be3f65cSAndroid Build Coastguard Worker   mavenLocal()
27*5be3f65cSAndroid Build Coastguard Worker   mavenCentral()
28*5be3f65cSAndroid Build Coastguard Worker }
29*5be3f65cSAndroid Build Coastguard Worker 
30*5be3f65cSAndroid Build Coastguard Worker val ktfmtVersion = rootProject.file("../version.txt").readText().trim()
31*5be3f65cSAndroid Build Coastguard Worker 
<lambda>null32*5be3f65cSAndroid Build Coastguard Worker dependencies {
33*5be3f65cSAndroid Build Coastguard Worker   implementation("com.facebook:ktfmt:$ktfmtVersion")
34*5be3f65cSAndroid Build Coastguard Worker   implementation(platform("software.amazon.awssdk:bom:2.10.73"))
35*5be3f65cSAndroid Build Coastguard Worker   implementation("software.amazon.awssdk:lambda")
36*5be3f65cSAndroid Build Coastguard Worker   implementation("com.amazonaws:aws-lambda-java-core:1.2.1")
37*5be3f65cSAndroid Build Coastguard Worker   implementation("com.amazonaws:aws-lambda-java-events:2.2.9")
38*5be3f65cSAndroid Build Coastguard Worker   implementation("com.google.code.gson:gson:2.8.6")
39*5be3f65cSAndroid Build Coastguard Worker   testImplementation(kotlin("test-junit"))
40*5be3f65cSAndroid Build Coastguard Worker }
41*5be3f65cSAndroid Build Coastguard Worker 
<lambda>null42*5be3f65cSAndroid Build Coastguard Worker kotlin { jvmToolchain(17) }
43*5be3f65cSAndroid Build Coastguard Worker 
<lambda>null44*5be3f65cSAndroid Build Coastguard Worker tasks {
45*5be3f65cSAndroid Build Coastguard Worker   test { useJUnit() }
46*5be3f65cSAndroid Build Coastguard Worker 
47*5be3f65cSAndroid Build Coastguard Worker   val packageFat by
48*5be3f65cSAndroid Build Coastguard Worker       creating(Zip::class) {
49*5be3f65cSAndroid Build Coastguard Worker         from(compileKotlin)
50*5be3f65cSAndroid Build Coastguard Worker         from(processResources)
51*5be3f65cSAndroid Build Coastguard Worker         into("lib") { from(configurations.runtimeClasspath) }
52*5be3f65cSAndroid Build Coastguard Worker         dirMode = 0b111101101 // 0755
53*5be3f65cSAndroid Build Coastguard Worker         fileMode = 0b111101101 // 0755
54*5be3f65cSAndroid Build Coastguard Worker       }
55*5be3f65cSAndroid Build Coastguard Worker 
56*5be3f65cSAndroid Build Coastguard Worker   val packageLibs by
57*5be3f65cSAndroid Build Coastguard Worker       creating(Zip::class) {
58*5be3f65cSAndroid Build Coastguard Worker         into("java/lib") { from(configurations.runtimeClasspath) }
59*5be3f65cSAndroid Build Coastguard Worker         dirMode = 0b111101101 // 0755
60*5be3f65cSAndroid Build Coastguard Worker         fileMode = 0b111101101 // 0755
61*5be3f65cSAndroid Build Coastguard Worker       }
62*5be3f65cSAndroid Build Coastguard Worker 
63*5be3f65cSAndroid Build Coastguard Worker   val packageSkinny by
64*5be3f65cSAndroid Build Coastguard Worker       creating(Zip::class) {
65*5be3f65cSAndroid Build Coastguard Worker         from(compileKotlin)
66*5be3f65cSAndroid Build Coastguard Worker         from(processResources)
67*5be3f65cSAndroid Build Coastguard Worker       }
68*5be3f65cSAndroid Build Coastguard Worker 
69*5be3f65cSAndroid Build Coastguard Worker   build { dependsOn(packageSkinny) }
70*5be3f65cSAndroid Build Coastguard Worker 
71*5be3f65cSAndroid Build Coastguard Worker   // Set up ktfmt formatting tasks
72*5be3f65cSAndroid Build Coastguard Worker   val ktfmtFormatKts by
73*5be3f65cSAndroid Build Coastguard Worker       creating(KtfmtFormatTask::class) {
74*5be3f65cSAndroid Build Coastguard Worker         source = fileTree(rootDir)
75*5be3f65cSAndroid Build Coastguard Worker         include("**/*.kts")
76*5be3f65cSAndroid Build Coastguard Worker       }
77*5be3f65cSAndroid Build Coastguard Worker   val ktfmtCheckKts by
78*5be3f65cSAndroid Build Coastguard Worker       creating(KtfmtCheckTask::class) {
79*5be3f65cSAndroid Build Coastguard Worker         source = fileTree(rootDir)
80*5be3f65cSAndroid Build Coastguard Worker         include("**/*.kts")
81*5be3f65cSAndroid Build Coastguard Worker         mustRunAfter("compileKotlin")
82*5be3f65cSAndroid Build Coastguard Worker         mustRunAfter("compileTestKotlin")
83*5be3f65cSAndroid Build Coastguard Worker         mustRunAfter("test")
84*5be3f65cSAndroid Build Coastguard Worker       }
85*5be3f65cSAndroid Build Coastguard Worker   val ktfmtFormat by getting { dependsOn(ktfmtFormatKts) }
86*5be3f65cSAndroid Build Coastguard Worker   val ktfmtCheck by getting { dependsOn(ktfmtCheckKts) }
87*5be3f65cSAndroid Build Coastguard Worker   val check by getting { dependsOn(ktfmtCheck) }
88*5be3f65cSAndroid Build Coastguard Worker }
89