1*ec779b8eSAndroid Build Coastguard Worker// Copyright (C) 2016 The Android Open Source Project 2*ec779b8eSAndroid Build Coastguard Worker// 3*ec779b8eSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*ec779b8eSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*ec779b8eSAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*ec779b8eSAndroid Build Coastguard Worker// 7*ec779b8eSAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*ec779b8eSAndroid Build Coastguard Worker// 9*ec779b8eSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*ec779b8eSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*ec779b8eSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*ec779b8eSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*ec779b8eSAndroid Build Coastguard Worker// limitations under the License. 14*ec779b8eSAndroid Build Coastguard Worker 15*ec779b8eSAndroid Build Coastguard Worker// Headers module is in frameworks/av/Android.bp because modules are not allowed 16*ec779b8eSAndroid Build Coastguard Worker// to refer to headers in parent directories and the headers live in 17*ec779b8eSAndroid Build Coastguard Worker// frameworks/av/include. 18*ec779b8eSAndroid Build Coastguard Worker 19*ec779b8eSAndroid Build Coastguard Workerpackage { 20*ec779b8eSAndroid Build Coastguard Worker default_team: "trendy_team_camera_framework", 21*ec779b8eSAndroid Build Coastguard Worker default_applicable_licenses: ["frameworks_av_camera_ndk_license"], 22*ec779b8eSAndroid Build Coastguard Worker} 23*ec779b8eSAndroid Build Coastguard Worker 24*ec779b8eSAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of 25*ec779b8eSAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect 26*ec779b8eSAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct. 27*ec779b8eSAndroid Build Coastguard Worker// 28*ec779b8eSAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory. 29*ec779b8eSAndroid Build Coastguard Worker// 30*ec779b8eSAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses, 31*ec779b8eSAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the 32*ec779b8eSAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed. 33*ec779b8eSAndroid Build Coastguard Worker// 34*ec779b8eSAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private" 35*ec779b8eSAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be 36*ec779b8eSAndroid Build Coastguard Worker// used in the current project. 37*ec779b8eSAndroid Build Coastguard Worker// See: http://go/android-license-faq 38*ec779b8eSAndroid Build Coastguard Workerlicense { 39*ec779b8eSAndroid Build Coastguard Worker name: "frameworks_av_camera_ndk_license", 40*ec779b8eSAndroid Build Coastguard Worker visibility: [":__subpackages__"], 41*ec779b8eSAndroid Build Coastguard Worker license_kinds: [ 42*ec779b8eSAndroid Build Coastguard Worker "SPDX-license-identifier-Apache-2.0", 43*ec779b8eSAndroid Build Coastguard Worker "SPDX-license-identifier-MIT", 44*ec779b8eSAndroid Build Coastguard Worker "SPDX-license-identifier-Unicode-DFS", 45*ec779b8eSAndroid Build Coastguard Worker ], 46*ec779b8eSAndroid Build Coastguard Worker license_text: [ 47*ec779b8eSAndroid Build Coastguard Worker "NOTICE", 48*ec779b8eSAndroid Build Coastguard Worker ], 49*ec779b8eSAndroid Build Coastguard Worker} 50*ec779b8eSAndroid Build Coastguard Worker 51*ec779b8eSAndroid Build Coastguard Workerndk_library { 52*ec779b8eSAndroid Build Coastguard Worker name: "libcamera2ndk", 53*ec779b8eSAndroid Build Coastguard Worker symbol_file: "libcamera2ndk.map.txt", 54*ec779b8eSAndroid Build Coastguard Worker first_version: "24", 55*ec779b8eSAndroid Build Coastguard Worker unversioned_until: "current", 56*ec779b8eSAndroid Build Coastguard Worker} 57*ec779b8eSAndroid Build Coastguard Worker 58*ec779b8eSAndroid Build Coastguard Workerndk_headers { 59*ec779b8eSAndroid Build Coastguard Worker name: "libcamera2ndk_headers", 60*ec779b8eSAndroid Build Coastguard Worker from: "include/camera", 61*ec779b8eSAndroid Build Coastguard Worker to: "camera", 62*ec779b8eSAndroid Build Coastguard Worker srcs: ["include/camera/**/*.h"], 63*ec779b8eSAndroid Build Coastguard Worker license: "NOTICE", 64*ec779b8eSAndroid Build Coastguard Worker} 65*ec779b8eSAndroid Build Coastguard Worker 66*ec779b8eSAndroid Build Coastguard Workercc_library_shared { 67*ec779b8eSAndroid Build Coastguard Worker name: "libcamera2ndk", 68*ec779b8eSAndroid Build Coastguard Worker srcs: [ 69*ec779b8eSAndroid Build Coastguard Worker "NdkCameraCaptureSession.cpp", 70*ec779b8eSAndroid Build Coastguard Worker "NdkCameraDevice.cpp", 71*ec779b8eSAndroid Build Coastguard Worker "NdkCameraManager.cpp", 72*ec779b8eSAndroid Build Coastguard Worker "NdkCameraMetadata.cpp", 73*ec779b8eSAndroid Build Coastguard Worker "NdkCaptureRequest.cpp", 74*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraCaptureSession.cpp", 75*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraDevice.cpp", 76*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraManager.cpp", 77*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraMetadata.cpp", 78*ec779b8eSAndroid Build Coastguard Worker ], 79*ec779b8eSAndroid Build Coastguard Worker shared_libs: [ 80*ec779b8eSAndroid Build Coastguard Worker "android.companion.virtual.virtualdevice_aidl-cpp", 81*ec779b8eSAndroid Build Coastguard Worker "android.companion.virtualdevice.flags-aconfig-cc", 82*ec779b8eSAndroid Build Coastguard Worker "android.hardware.common-V2-cpp", 83*ec779b8eSAndroid Build Coastguard Worker "android.hardware.common.fmq-V1-cpp", 84*ec779b8eSAndroid Build Coastguard Worker "camera_platform_flags_c_lib", 85*ec779b8eSAndroid Build Coastguard Worker "framework-permission-aidl-cpp", 86*ec779b8eSAndroid Build Coastguard Worker "libandroid_runtime", 87*ec779b8eSAndroid Build Coastguard Worker "libbinder", 88*ec779b8eSAndroid Build Coastguard Worker "libcamera_client", 89*ec779b8eSAndroid Build Coastguard Worker "libcamera_metadata", 90*ec779b8eSAndroid Build Coastguard Worker "libcutils", 91*ec779b8eSAndroid Build Coastguard Worker "libfmq", 92*ec779b8eSAndroid Build Coastguard Worker "libgui", 93*ec779b8eSAndroid Build Coastguard Worker "liblog", 94*ec779b8eSAndroid Build Coastguard Worker "libmediandk", 95*ec779b8eSAndroid Build Coastguard Worker "libnativewindow", 96*ec779b8eSAndroid Build Coastguard Worker "libstagefright_foundation", 97*ec779b8eSAndroid Build Coastguard Worker "libutils", 98*ec779b8eSAndroid Build Coastguard Worker ], 99*ec779b8eSAndroid Build Coastguard Worker header_libs: [ 100*ec779b8eSAndroid Build Coastguard Worker "jni_headers", 101*ec779b8eSAndroid Build Coastguard Worker ], 102*ec779b8eSAndroid Build Coastguard Worker cflags: [ 103*ec779b8eSAndroid Build Coastguard Worker "-DEXPORT=__attribute__((visibility(\"default\")))", 104*ec779b8eSAndroid Build Coastguard Worker "-Wall", 105*ec779b8eSAndroid Build Coastguard Worker "-Werror", 106*ec779b8eSAndroid Build Coastguard Worker "-Wextra", 107*ec779b8eSAndroid Build Coastguard Worker "-fvisibility=hidden", 108*ec779b8eSAndroid Build Coastguard Worker ], 109*ec779b8eSAndroid Build Coastguard Worker // TODO: jchowdhary@, use header_libs instead b/131165718 110*ec779b8eSAndroid Build Coastguard Worker include_dirs: [ 111*ec779b8eSAndroid Build Coastguard Worker "system/media/private/camera/include", 112*ec779b8eSAndroid Build Coastguard Worker ], 113*ec779b8eSAndroid Build Coastguard Worker export_include_dirs: ["include"], 114*ec779b8eSAndroid Build Coastguard Worker export_shared_lib_headers: [ 115*ec779b8eSAndroid Build Coastguard Worker "libnativewindow", 116*ec779b8eSAndroid Build Coastguard Worker ], 117*ec779b8eSAndroid Build Coastguard Worker version_script: "libcamera2ndk.map.txt", 118*ec779b8eSAndroid Build Coastguard Worker} 119*ec779b8eSAndroid Build Coastguard Worker 120*ec779b8eSAndroid Build Coastguard Workercc_library_shared { 121*ec779b8eSAndroid Build Coastguard Worker name: "libcamera2ndk_vendor", 122*ec779b8eSAndroid Build Coastguard Worker cpp_std: "gnu++17", 123*ec779b8eSAndroid Build Coastguard Worker vendor: true, 124*ec779b8eSAndroid Build Coastguard Worker srcs: [ 125*ec779b8eSAndroid Build Coastguard Worker "NdkCameraCaptureSession.cpp", 126*ec779b8eSAndroid Build Coastguard Worker "NdkCameraDevice.cpp", 127*ec779b8eSAndroid Build Coastguard Worker "NdkCameraManager.cpp", 128*ec779b8eSAndroid Build Coastguard Worker "NdkCameraMetadata.cpp", 129*ec779b8eSAndroid Build Coastguard Worker "NdkCaptureRequest.cpp", 130*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraCaptureSession.cpp", 131*ec779b8eSAndroid Build Coastguard Worker "impl/ACameraMetadata.cpp", 132*ec779b8eSAndroid Build Coastguard Worker "ndk_vendor/impl/ACameraDevice.cpp", 133*ec779b8eSAndroid Build Coastguard Worker "ndk_vendor/impl/ACameraManager.cpp", 134*ec779b8eSAndroid Build Coastguard Worker "ndk_vendor/impl/utils.cpp", 135*ec779b8eSAndroid Build Coastguard Worker ], 136*ec779b8eSAndroid Build Coastguard Worker 137*ec779b8eSAndroid Build Coastguard Worker export_include_dirs: ["include"], 138*ec779b8eSAndroid Build Coastguard Worker export_shared_lib_headers: [ 139*ec779b8eSAndroid Build Coastguard Worker "libcutils", 140*ec779b8eSAndroid Build Coastguard Worker ], 141*ec779b8eSAndroid Build Coastguard Worker local_include_dirs: [ 142*ec779b8eSAndroid Build Coastguard Worker ".", 143*ec779b8eSAndroid Build Coastguard Worker "impl", 144*ec779b8eSAndroid Build Coastguard Worker "include", 145*ec779b8eSAndroid Build Coastguard Worker ], 146*ec779b8eSAndroid Build Coastguard Worker cflags: [ 147*ec779b8eSAndroid Build Coastguard Worker "-DEXPORT=__attribute__((visibility(\"default\")))", 148*ec779b8eSAndroid Build Coastguard Worker "-D__ANDROID_VNDK__", 149*ec779b8eSAndroid Build Coastguard Worker "-fvisibility=hidden", 150*ec779b8eSAndroid Build Coastguard Worker ], 151*ec779b8eSAndroid Build Coastguard Worker 152*ec779b8eSAndroid Build Coastguard Worker shared_libs: [ 153*ec779b8eSAndroid Build Coastguard Worker "android.frameworks.cameraservice.common-V1-ndk", 154*ec779b8eSAndroid Build Coastguard Worker "android.frameworks.cameraservice.device-V3-ndk", 155*ec779b8eSAndroid Build Coastguard Worker "android.frameworks.cameraservice.service-V3-ndk", 156*ec779b8eSAndroid Build Coastguard Worker "libbinder_ndk", 157*ec779b8eSAndroid Build Coastguard Worker "libcamera_metadata", 158*ec779b8eSAndroid Build Coastguard Worker "libcutils", 159*ec779b8eSAndroid Build Coastguard Worker "libfmq", 160*ec779b8eSAndroid Build Coastguard Worker "libhardware", 161*ec779b8eSAndroid Build Coastguard Worker "libhidlbase", 162*ec779b8eSAndroid Build Coastguard Worker "liblog", 163*ec779b8eSAndroid Build Coastguard Worker "libmediandk", 164*ec779b8eSAndroid Build Coastguard Worker "libnativewindow", 165*ec779b8eSAndroid Build Coastguard Worker "libstagefright_foundation", 166*ec779b8eSAndroid Build Coastguard Worker "libutils", 167*ec779b8eSAndroid Build Coastguard Worker ], 168*ec779b8eSAndroid Build Coastguard Worker static_libs: [ 169*ec779b8eSAndroid Build Coastguard Worker "[email protected]", 170*ec779b8eSAndroid Build Coastguard Worker "libaidlcommonsupport", 171*ec779b8eSAndroid Build Coastguard Worker "libarect", 172*ec779b8eSAndroid Build Coastguard Worker ], 173*ec779b8eSAndroid Build Coastguard Worker // TODO: jchowdhary@, use header_libs instead b/131165718 174*ec779b8eSAndroid Build Coastguard Worker include_dirs: [ 175*ec779b8eSAndroid Build Coastguard Worker "system/media/private/camera/include", 176*ec779b8eSAndroid Build Coastguard Worker ], 177*ec779b8eSAndroid Build Coastguard Worker} 178*ec779b8eSAndroid Build Coastguard Worker 179*ec779b8eSAndroid Build Coastguard Workercc_test { 180*ec779b8eSAndroid Build Coastguard Worker name: "ACameraNdkVendorTest", 181*ec779b8eSAndroid Build Coastguard Worker vendor: true, 182*ec779b8eSAndroid Build Coastguard Worker srcs: [ 183*ec779b8eSAndroid Build Coastguard Worker "ndk_vendor/tests/ACameraManagerTest.cpp", 184*ec779b8eSAndroid Build Coastguard Worker "ndk_vendor/tests/AImageReaderVendorTest.cpp", 185*ec779b8eSAndroid Build Coastguard Worker ], 186*ec779b8eSAndroid Build Coastguard Worker shared_libs: [ 187*ec779b8eSAndroid Build Coastguard Worker "libcamera2ndk_vendor", 188*ec779b8eSAndroid Build Coastguard Worker "libcamera_metadata", 189*ec779b8eSAndroid Build Coastguard Worker "libcutils", 190*ec779b8eSAndroid Build Coastguard Worker "libhidlbase", 191*ec779b8eSAndroid Build Coastguard Worker "liblog", 192*ec779b8eSAndroid Build Coastguard Worker "libmediandk", 193*ec779b8eSAndroid Build Coastguard Worker "libnativewindow", 194*ec779b8eSAndroid Build Coastguard Worker "libui", 195*ec779b8eSAndroid Build Coastguard Worker "libutils", 196*ec779b8eSAndroid Build Coastguard Worker ], 197*ec779b8eSAndroid Build Coastguard Worker static_libs: [ 198*ec779b8eSAndroid Build Coastguard Worker "[email protected]", 199*ec779b8eSAndroid Build Coastguard Worker ], 200*ec779b8eSAndroid Build Coastguard Worker cflags: [ 201*ec779b8eSAndroid Build Coastguard Worker "-D__ANDROID_VNDK__", 202*ec779b8eSAndroid Build Coastguard Worker ], 203*ec779b8eSAndroid Build Coastguard Worker} 204