// Copyright (C) 2017 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. cc_library_headers { name: "libdvr_headers", export_include_dirs: ["include"], vendor_available: true, apex_available: [ "//apex_available:platform", "com.android.media", "com.android.media.swcodec", ], min_sdk_version: "29", } cc_library_headers { name: "libdvr_private_headers", export_include_dirs: ["."], vendor_available: false, } cflags = [ "-DDVR_TRACKING_IMPLEMENTED=0", "-DLOG_TAG=\"libdvr\"", "-DTRACE=0", "-Wall", "-Werror", ] srcs = [ "dvr_api.cpp", "dvr_buffer.cpp", "dvr_buffer_queue.cpp", "dvr_configuration_data.cpp", "dvr_display_manager.cpp", "dvr_hardware_composer_client.cpp", "dvr_performance.cpp", "dvr_pose.cpp", "dvr_surface.cpp", "dvr_tracking.cpp", ] static_libs = [ "libbroadcastring", "libvrsensor", "libdisplay", "libvirtualtouchpadclient", "libvr_hwc-impl", "libvr_hwc-binder", "libgrallocusage", "libperformance", ] shared_libs = [ "android.hardware.graphics.bufferqueue@1.0", "android.hidl.token@1.0-utils", "libbase", "libbufferhubqueue", "libbinder", "liblog", "libcutils", "libutils", "libnativewindow", "libgui", "libui", "libpdx_default_transport", ] cc_library_shared { name: "libdvr.google", owner: "google", cflags: cflags, header_libs: ["libdvr_headers"], export_header_lib_headers: ["libdvr_headers"], srcs: srcs, static_libs: static_libs, shared_libs: shared_libs, version_script: "exported_apis.lds", } // Also build a static libdvr for linking into tests. The linker script // restricting function access in the shared lib makes it inconvenient to use in // test code. cc_library_static { name: "libdvr_static.google", owner: "google", cflags: cflags, header_libs: ["libdvr_headers"], export_header_lib_headers: ["libdvr_headers"], srcs: srcs, static_libs: static_libs, shared_libs: shared_libs, } subdirs = [ "tests", ]