blob: 44d8d300bbc704b2fe538911d9e32abf55b6d2a9 [file] [log] [blame]
/*
* Copyright 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 androidx.build.LibraryVersions
import androidx.build.SdkHelperKt
import androidx.build.SupportConfig
import static androidx.build.dependencies.DependenciesKt.*
plugins {
id("AndroidXPlugin")
id("kotlin")
id("kotlin-kapt")
}
dependencies {
implementation(KOTLIN_STDLIB)
compileOnly(AUTO_SERVICE_ANNOTATIONS)
kapt(AUTO_SERVICE_PROCESSOR)
compileOnly(GRADLE_INCAP_HELPER)
kapt(GRADLE_INCAP_HELPER_PROCESSOR)
implementation(AUTO_COMMON)
implementation(JAVAPOET)
testImplementation(project(":hilt:hilt-common"))
testImplementation(JUNIT)
testImplementation(TRUTH)
testImplementation(GOOGLE_COMPILE_TESTING)
testImplementation(HILT_ANDROID)
testImplementation fileTree(
dir: "${new File(project(":hilt:hilt-lifecycle-viewmodel").buildDir, "libJar")}",
include : "*.jar")
testImplementation fileTree(
dir: "${new File(project(":hilt:hilt-work").buildDir, "libJar")}",
include : "*.jar")
testImplementation fileTree(
dir: "${new File(project.buildDir, "extractedJar")}",
include : "*.jar")
testImplementation fileTree(
dir: "${SdkHelperKt.getSdkPath(project)}/platforms/$SupportConfig.COMPILE_SDK_VERSION/",
include : "android.jar")
}
// Extract Hilt classes.jar to be used for compile-testing.
tasks.register("extractHiltJar", Copy).configure {
def aarPath = project.configurations.testRuntimeClasspath.find {
it.path.contains("com/google/dagger/hilt-android/") && it.name.endsWith(".aar")
}
from project.zipTree(aarPath)
into new File(project.buildDir, "extractedJar")
include "classes.jar"
}
tasks.named("compileKotlin").configure {
dependsOn(":hilt:hilt-lifecycle-viewmodel:jarDebug")
dependsOn(":hilt:hilt-work:jarDebug")
dependsOn(":hilt:hilt-compiler:extractHiltJar")
}
androidx {
name = "AndroidX Hilt Extension Compiler"
type = LibraryType.COMPILER_PLUGIN
mavenVersion = LibraryVersions.HILT
mavenGroup = LibraryGroups.HILT
inceptionYear = "2020"
description = "AndroidX Hilt Extension Compiler"
}