1/* 2 * Copyright 2020 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 */ 24 25import androidx.build.KotlinTarget 26import androidx.build.SoftwareType 27 28plugins { 29 id("AndroidXPlugin") 30 id("com.android.library") 31 id("org.jetbrains.kotlin.android") 32 id("com.google.devtools.ksp") 33} 34 35dependencies { 36 api("androidx.annotation:annotation:1.8.1") 37 api(libs.kotlinStdlib) 38 api(libs.kotlinCoroutinesAndroid) 39 40 implementation(libs.atomicFu) 41 implementation(libs.dagger) 42 43 ksp(libs.daggerCompiler) 44 45 testImplementation(libs.testCore) 46 testImplementation(libs.testRunner) 47 testImplementation(libs.junit) 48 testImplementation(libs.truth) 49 testImplementation(libs.robolectric) 50 testImplementation(libs.kotlinTest) 51 testImplementation(libs.kotlinCoroutinesTest) 52 testImplementation(libs.mockitoCore4) 53 testImplementation(libs.mockitoKotlin4) 54 testImplementation(project(":camera:camera-camera2-pipe-testing")) 55 testImplementation(project(":internal-testutils-truth")) 56 57 kspTest(libs.daggerCompiler) 58 59 androidTestImplementation(libs.testExtJunit) 60 androidTestImplementation(libs.testRunner) 61 androidTestImplementation(libs.truth) 62} 63 64android { 65 compileSdk = 35 66 67 lint { 68 enable.add("CameraXQuirksClassDetector") 69 } 70 // Use Robolectric 4.+ 71 testOptions.unitTests.includeAndroidResources = true 72 namespace = "androidx.camera.camera2.pipe" 73} 74 75ksp { 76 arg("dagger.fastInit", "enabled") 77 arg("dagger.fullBindingGraphValidation", "ERROR") 78} 79 80androidx { 81 name = "Camera2 Pipe" 82 type = SoftwareType.PUBLISHED_LIBRARY 83 //TODO(b/407634709): Task :camera:camera-camera2-pipe:kspReleaseUnitTestKotlin fails when targeting Kotlin 2 84 kotlinTarget = KotlinTarget.KOTLIN_1_9 85 inceptionYear = "2020" 86 description = "A set of opinionated camera interfaces and implementations on top of Camera2 " + 87 "that will form a flexible shim layer to power Frameserver and CameraX." 88 doNotDocumentReason = "Not shipped externally" 89} 90