1/* 2 * Copyright 2018 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17/** 18 * This file was created using the `create_project.py` script located in the 19 * `<AndroidX root>/development/project-creator` directory. 20 * 21 * Please use that script when creating a new project, rather than copying an existing project and 22 * modifying its settings. 23 */ 24import androidx.build.ExportAtomicLibraryGroupsToTextTask 25import androidx.build.SoftwareType 26 27plugins { 28 id("AndroidXPlugin") 29 id("kotlin") 30} 31 32sourceSets { 33 // Pull integration test source code in for use by lint testing framework. 34 test.resources.srcDirs( 35 project(":lint-checks:integration-tests") 36 .projectDir.absolutePath + "/src/main" 37 ) 38} 39 40dependencies { 41 compileOnly(libs.androidLintApi) 42 compileOnly(libs.androidLintChecks) 43 compileOnly(libs.androidToolsCommon) 44 compileOnly(libs.intellijCore) 45 compileOnly(libs.intellijKotlinCompiler) 46 compileOnly(libs.kotlinStdlib) 47 compileOnly(libs.lintModel) 48 compileOnly(libs.sdklib) 49 compileOnly(libs.uast) 50 51 testImplementation(libs.androidLint) 52 testImplementation(libs.androidLintTests) 53 testImplementation(libs.junit) 54 testImplementation(libs.guava) 55} 56 57androidx { 58 name = "Lint checks" 59 type = SoftwareType.LINT 60 inceptionYear = "2018" 61 description = "Internal lint checks" 62} 63 64def exportTaskProvider = tasks.register( 65 "exportAtomicLibraryGroupsToText", 66 ExportAtomicLibraryGroupsToTextTask 67) { task -> 68 task.libraryGroups = androidx.AllLibraryGroups 69 70 def generatedDirectory = new File(project.buildDir, "generated/resources") 71 task.outputDir.set(generatedDirectory) 72} 73 74def extension = project.extensions.getByType(JavaPluginExtension.class) 75def mainSources = extension.sourceSets.getByName("main") 76mainSources.getOutput().dir(exportTaskProvider.flatMap { it.outputDir }) 77