blob: b15e171ae6c281668e9b3043c145eed8e00bc478 [file] [log] [blame]
/*
* Copyright (C) 2020 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import androidx.build.LibraryGroups
import androidx.build.LibraryType
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import static androidx.build.dependencies.DependenciesKt.*
plugins {
id("AndroidXPlugin")
id("kotlin")
}
dependencies {
api(KOTLIN_STDLIB)
api(JAVAPOET)
implementation("androidx.annotation:annotation:1.1.0")
implementation(GUAVA)
implementation(AUTO_COMMON)
implementation(AUTO_VALUE_ANNOTATIONS)
implementation(KOTLIN_METADATA_JVM)
implementation(INTELLIJ_ANNOTATIONS)
implementation(KOTLIN_KSP_API) {
version {
// TODO remove after KSP versions are fixed
// KSP 1.4 versions are not properly ordered due to rc vs dev versions (dev is latest
// but gradle thinks rc is latest).
// We have to enforce it to ensure the correct version is used.
strictly KSP_VERSION
}
}
testImplementation(GOOGLE_COMPILE_TESTING)
testImplementation(JUNIT)
testImplementation(JSR250)
testImplementation(KOTLIN_COMPILE_TESTING_KSP)
testImplementation(KOTLIN_KSP) {
version {
// TODO remove after KSP versions are fixed
strictly KSP_VERSION
}
}
testImplementation(project(":room:room-compiler-processing-testing"))
}
tasks.withType(KotlinCompile).configureEach {
kotlinOptions {
freeCompilerArgs += ["-Xopt-in=kotlin.RequiresOptIn",
"-Xopt-in=kotlin.contracts.ExperimentalContracts"]
}
}
androidx {
name = "AndroidX Room XProcessor"
type = LibraryType.ANNOTATION_PROCESSOR
mavenGroup = LibraryGroups.ROOM
inceptionYear = "2020"
description = "Processing Environment Abstraction for AndroidX Room"
}