Home | History | Annotate | Download | only in camera
      1 // Copyright 2010 The Android Open Source Project
      2 //
      3 // Licensed under the Apache License, Version 2.0 (the "License");
      4 // you may not use this file except in compliance with the License.
      5 // You may obtain a copy of the License at
      6 //
      7 //      http://www.apache.org/licenses/LICENSE-2.0
      8 //
      9 // Unless required by applicable law or agreed to in writing, software
     10 // distributed under the License is distributed on an "AS IS" BASIS,
     11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     12 // See the License for the specific language governing permissions and
     13 // limitations under the License.
     14 
     15 subdirs = ["ndk"]
     16 
     17 cc_library_shared {
     18     name: "libcamera_client",
     19 
     20     aidl: {
     21         export_aidl_headers: true,
     22         local_include_dirs: ["aidl"],
     23         include_dirs: [
     24             "frameworks/native/aidl/gui",
     25         ],
     26     },
     27 
     28     srcs: [
     29         // AIDL files for camera interfaces
     30         // The headers for these interfaces will be available to any modules that
     31         // include libcamera_client, at the path "aidl/package/path/BnFoo.h"
     32         ":libcamera_client_aidl",
     33 
     34         // Source for camera interface parcelables, and manually-written interfaces
     35         "Camera.cpp",
     36         "CameraMetadata.cpp",
     37         "CameraParameters.cpp",
     38         "CaptureResult.cpp",
     39         "CameraParameters2.cpp",
     40         "ICamera.cpp",
     41         "ICameraClient.cpp",
     42         "ICameraRecordingProxy.cpp",
     43         "ICameraRecordingProxyListener.cpp",
     44         "camera2/CaptureRequest.cpp",
     45         "camera2/OutputConfiguration.cpp",
     46         "camera2/SubmitInfo.cpp",
     47         "CameraBase.cpp",
     48         "CameraUtils.cpp",
     49         "VendorTagDescriptor.cpp",
     50     ],
     51 
     52     shared_libs: [
     53         "libcutils",
     54         "libutils",
     55         "liblog",
     56         "libbinder",
     57         "libgui",
     58         "libcamera_metadata",
     59         "libnativewindow",
     60     ],
     61 
     62     include_dirs: [
     63         "system/media/private/camera/include",
     64         "frameworks/native/include/media/openmax",
     65     ],
     66     export_include_dirs: [
     67          "include",
     68          "include/camera"
     69     ],
     70     export_shared_lib_headers: ["libcamera_metadata"],
     71 
     72     cflags: [
     73         "-Werror",
     74         "-Wall",
     75         "-Wextra",
     76     ],
     77 
     78 }
     79 
     80 // AIDL interface between camera clients and the camera service.
     81 filegroup {
     82     name: "libcamera_client_aidl",
     83     srcs: [
     84         "aidl/android/hardware/ICameraService.aidl",
     85         "aidl/android/hardware/ICameraServiceListener.aidl",
     86         "aidl/android/hardware/ICameraServiceProxy.aidl",
     87         "aidl/android/hardware/camera2/ICameraDeviceCallbacks.aidl",
     88         "aidl/android/hardware/camera2/ICameraDeviceUser.aidl",
     89     ],
     90 }
     91 
     92 // Extra AIDL files that are used by framework.jar but not libcamera_client
     93 // because they have hand-written native implementations.
     94 filegroup {
     95     name: "libcamera_client_framework_aidl",
     96     srcs: [
     97         "aidl/android/hardware/ICamera.aidl",
     98         "aidl/android/hardware/ICameraClient.aidl",
     99     ],
    100 }
    101