blob: 83c30d7010d73d7597dea816be175db18e374d24 [file] [log] [blame]
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -07001// Copyright (C) 2017 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
Bob Badour3c538232021-02-12 21:26:48 -080016package {
17 // See: http://go/android-license-faq
18 // A large-scale-change added 'default_applicable_licenses' to import
19 // all of the 'license_kinds' from "frameworks_native_license"
20 // to get the below license kinds:
21 // SPDX-license-identifier-Apache-2.0
22 // SPDX-license-identifier-MIT
23 // SPDX-license-identifier-Unicode-DFS
24 default_applicable_licenses: ["frameworks_native_license"],
25}
26
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -070027cc_library_headers {
28 name: "libdvr_headers",
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -070029 export_include_dirs: ["include"],
Jiyong Parka75d3d62018-04-09 12:16:30 +090030 vendor_available: true,
Jooyung Han2cf94042020-06-05 17:30:54 +090031 apex_available: [
32 "//apex_available:platform",
33 "com.android.media",
34 "com.android.media.swcodec",
35 ],
36 min_sdk_version: "29",
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -070037}
38
Jiwen 'Steve' Caid88a0502018-04-30 10:27:08 -070039cc_library_headers {
40 name: "libdvr_private_headers",
41 export_include_dirs: ["."],
42 vendor_available: false,
43}
44
Steven Thomas3be0aa62017-05-08 15:45:30 -070045cflags = [
Jiwen 'Steve' Caic604e3b2018-04-19 11:16:49 -070046 "-DDVR_TRACKING_IMPLEMENTED=0",
Steven Thomas3be0aa62017-05-08 15:45:30 -070047 "-DLOG_TAG=\"libdvr\"",
Jiwen 'Steve' Cai656f4062017-05-22 13:02:33 -070048 "-DTRACE=0",
Chih-Hung Hsiehe1900832017-10-05 14:27:38 -070049 "-Wall",
50 "-Werror",
Steven Thomas3be0aa62017-05-08 15:45:30 -070051]
52
53srcs = [
54 "dvr_api.cpp",
55 "dvr_buffer.cpp",
56 "dvr_buffer_queue.cpp",
Hendrik Wagenaarbcb03d02017-05-23 14:59:08 -070057 "dvr_configuration_data.cpp",
Steven Thomas3be0aa62017-05-08 15:45:30 -070058 "dvr_display_manager.cpp",
59 "dvr_hardware_composer_client.cpp",
Corey Tabakafeb636d2017-06-23 16:20:07 -070060 "dvr_performance.cpp",
Marie White5096c652017-08-08 22:23:45 -070061 "dvr_pose.cpp",
Steven Thomas3be0aa62017-05-08 15:45:30 -070062 "dvr_surface.cpp",
Jiwen 'Steve' Caic604e3b2018-04-19 11:16:49 -070063 "dvr_tracking.cpp",
Steven Thomas3be0aa62017-05-08 15:45:30 -070064]
65
66static_libs = [
Okan Arikan822b7102017-05-08 13:31:34 -070067 "libbroadcastring",
Steven Thomas3be0aa62017-05-08 15:45:30 -070068 "libvrsensor",
Okan Arikan822b7102017-05-08 13:31:34 -070069 "libdisplay",
Steven Thomas3be0aa62017-05-08 15:45:30 -070070 "libvirtualtouchpadclient",
71 "libvr_hwc-impl",
72 "libvr_hwc-binder",
73 "libgrallocusage",
Corey Tabakafeb636d2017-06-23 16:20:07 -070074 "libperformance",
Steven Thomas3be0aa62017-05-08 15:45:30 -070075]
76
77shared_libs = [
78 "android.hardware.graphics.bufferqueue@1.0",
79 "android.hidl.token@1.0-utils",
80 "libbase",
Jiwen 'Steve' Cai037f35a2018-01-25 19:40:23 -080081 "libbufferhubqueue",
Steven Thomas3be0aa62017-05-08 15:45:30 -070082 "libbinder",
83 "liblog",
84 "libcutils",
85 "libutils",
86 "libnativewindow",
87 "libgui",
88 "libui",
Jiwen 'Steve' Cai037f35a2018-01-25 19:40:23 -080089 "libpdx_default_transport",
Steven Thomas3be0aa62017-05-08 15:45:30 -070090]
91
92cc_library_shared {
Pat Plunkett6eadd172018-08-09 09:38:58 -070093 name: "libdvr.google",
Roman Kiryanov80703bb2020-11-17 22:57:41 -080094 system_ext_specific: true,
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -070095 owner: "google",
Steven Thomas3be0aa62017-05-08 15:45:30 -070096 cflags: cflags,
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -070097 header_libs: ["libdvr_headers"],
98 export_header_lib_headers: ["libdvr_headers"],
Steven Thomas3be0aa62017-05-08 15:45:30 -070099 srcs: srcs,
100 static_libs: static_libs,
101 shared_libs: shared_libs,
102 version_script: "exported_apis.lds",
103}
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -0700104
Steven Thomas3be0aa62017-05-08 15:45:30 -0700105// Also build a static libdvr for linking into tests. The linker script
106// restricting function access in the shared lib makes it inconvenient to use in
107// test code.
108cc_library_static {
Pat Plunkett6eadd172018-08-09 09:38:58 -0700109 name: "libdvr_static.google",
Steven Thomas3be0aa62017-05-08 15:45:30 -0700110 owner: "google",
111 cflags: cflags,
112 header_libs: ["libdvr_headers"],
113 export_header_lib_headers: ["libdvr_headers"],
114 srcs: srcs,
115 static_libs: static_libs,
116 shared_libs: shared_libs,
Jiwen 'Steve' Cai64177e82017-05-08 17:07:52 -0700117}
118
119subdirs = [
120 "tests",
121]