blob: fcbfba98af233a2e52e218666678c2d3f54c80d8 [file] [log] [blame]
Dan Willemsen3106c1c2016-10-03 23:56:51 -07001// 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.
Jiyong Park172bd722017-06-21 12:14:18 +090014cc_library_headers {
15 name: "libgui_headers",
16 vendor_available: true,
17 export_include_dirs: ["include"],
18}
Dan Willemsen3106c1c2016-10-03 23:56:51 -070019
20cc_library_shared {
21 name: "libgui",
Jiyong Park99c514e2017-11-17 19:09:31 +090022 vendor_available: false,
Justin Yun71d6c8852017-07-24 15:19:45 +090023 vndk: {
24 enabled: true,
25 },
Jiyong Parka75d3d62018-04-09 12:16:30 +090026 double_loadable: true,
Dan Willemsen3106c1c2016-10-03 23:56:51 -070027
28 clang: true,
Chih-Hung Hsiehd66be0a2017-10-05 13:51:32 -070029 cflags: [
30 "-Wall",
31 "-Werror",
32 ],
Dan Willemsen3106c1c2016-10-03 23:56:51 -070033 cppflags: [
Pawin Vongmasae672cd02019-02-14 16:01:29 -080034 "-Wextra",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070035 "-DDEBUG_ONLY_CODE=0",
36 ],
37
38 product_variables: {
Fabien Sanglard98bfd4f2017-06-22 11:13:49 -070039 eng: {
Dan Willemsen3106c1c2016-10-03 23:56:51 -070040 cppflags: [
41 "-UDEBUG_ONLY_CODE",
42 "-DDEBUG_ONLY_CODE=1",
43 ],
44 },
45 },
46
47 srcs: [
Dan Willemsen3106c1c2016-10-03 23:56:51 -070048 "BitTube.cpp",
Jiwen 'Steve' Caia2a27b22018-02-07 17:29:56 -080049 "BufferHubConsumer.cpp",
Jiwen 'Steve' Cai0f950842018-01-16 17:05:54 -080050 "BufferHubProducer.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070051 "BufferItem.cpp",
52 "BufferItemConsumer.cpp",
53 "BufferQueue.cpp",
54 "BufferQueueConsumer.cpp",
55 "BufferQueueCore.cpp",
56 "BufferQueueProducer.cpp",
Jayant Chowdharyad9fe272019-03-07 22:36:06 -080057 "BufferQueueThreadState.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070058 "BufferSlot.cpp",
59 "ConsumerBase.cpp",
60 "CpuConsumer.cpp",
61 "DisplayEventReceiver.cpp",
Brian Andersond6927fb2016-07-23 23:37:30 -070062 "FrameTimestamps.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070063 "GLConsumer.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070064 "GuiConfig.cpp",
Courtney Goeltzenleuchter9bad0d72017-12-19 12:34:34 -070065 "HdrMetadata.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070066 "IDisplayEventConnection.cpp",
Mathias Agopian801ea092017-03-06 15:05:04 -080067 "IConsumerListener.cpp",
Mathias Agopian801ea092017-03-06 15:05:04 -080068 "IGraphicBufferConsumer.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070069 "IGraphicBufferProducer.cpp",
70 "IProducerListener.cpp",
Dan Stoza84ab9372018-12-17 15:27:57 -080071 "IRegionSamplingListener.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070072 "ISurfaceComposer.cpp",
73 "ISurfaceComposerClient.cpp",
Marissa Wall7a9b6ff2018-08-21 17:26:20 -070074 "ITransactionCompletedListener.cpp",
Kalle Raitaa099a242017-01-11 11:17:29 -080075 "LayerDebugInfo.cpp",
Evan Rosky1f6d6d52018-12-06 10:47:26 -080076 "LayerMetadata.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070077 "LayerState.cpp",
78 "OccupancyTracker.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070079 "StreamSplitter.cpp",
80 "Surface.cpp",
81 "SurfaceControl.cpp",
82 "SurfaceComposerClient.cpp",
83 "SyncFeatures.cpp",
Mathias Agopian05debe12017-02-08 17:04:18 -080084 "view/Surface.cpp",
Pawin Vongmasa6e1193a2017-03-07 13:08:40 -080085 "bufferqueue/1.0/B2HProducerListener.cpp",
Chong Zhang20288fd2019-03-21 15:15:27 -070086 "bufferqueue/1.0/Conversion.cpp",
Lloyd Pique3b745782018-08-31 17:34:40 -070087 "bufferqueue/1.0/H2BGraphicBufferProducer.cpp",
Pawin Vongmasae672cd02019-02-14 16:01:29 -080088 "bufferqueue/1.0/H2BProducerListener.cpp",
Chong Zhang20288fd2019-03-21 15:15:27 -070089 "bufferqueue/1.0/WProducerListener.cpp",
Pawin Vongmasae672cd02019-02-14 16:01:29 -080090 "bufferqueue/2.0/B2HGraphicBufferProducer.cpp",
91 "bufferqueue/2.0/B2HProducerListener.cpp",
92 "bufferqueue/2.0/H2BGraphicBufferProducer.cpp",
93 "bufferqueue/2.0/H2BProducerListener.cpp",
94 "bufferqueue/2.0/types.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -070095 ],
96
97 shared_libs: [
Fan Xu021776e2018-12-05 13:34:48 -080098 "android.frameworks.bufferhub@1.0",
Pawin Vongmasae672cd02019-02-14 16:01:29 -080099 "android.hardware.graphics.bufferqueue@1.0",
100 "android.hardware.graphics.bufferqueue@2.0",
Peiyong Lina52f0292018-03-14 17:26:31 -0700101 "android.hardware.graphics.common@1.1",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800102 "android.hardware.graphics.common@1.2",
103 "android.hidl.token@1.0-utils",
Yiwei Zhang5434a782018-12-05 18:06:32 -0800104 "libbase",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700105 "libbinder",
Jiwen 'Steve' Cai57ae3ee2018-05-03 17:51:52 -0700106 "libbufferhub",
Lloyd Pique3b745782018-08-31 17:34:40 -0700107 "libbufferhubqueue", // TODO(b/70046255): Remove this once BufferHub is integrated into libgui.
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700108 "libcutils",
109 "libEGL",
110 "libGLESv2",
Pawin Vongmasa6e1193a2017-03-07 13:08:40 -0800111 "libhidlbase",
Courtney Goeltzenleuchtera0c93e12017-03-17 16:16:48 -0600112 "libhidltransport",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800113 "libhwbinder",
114 "libinput",
115 "liblog",
116 "libnativewindow",
117 "libpdx_default_transport",
118 "libsync",
119 "libui",
120 "libutils",
Jayant Chowdharyad9fe272019-03-07 22:36:06 -0800121 "libvndksupport",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700122 ],
123
Jiyong Parka75d3d62018-04-09 12:16:30 +0900124 // bufferhub is not used when building libgui for vendors
125 target: {
126 vendor: {
Jayant Chowdharyad9fe272019-03-07 22:36:06 -0800127 cflags: [
128 "-DNO_BUFFERHUB",
129 "-DNO_INPUT",
130 ],
Jiyong Parka75d3d62018-04-09 12:16:30 +0900131 exclude_srcs: [
132 "BufferHubConsumer.cpp",
133 "BufferHubProducer.cpp",
134 ],
135 exclude_shared_libs: [
Fan Xu021776e2018-12-05 13:34:48 -0800136 "android.frameworks.bufferhub@1.0",
Jiwen 'Steve' Cai57ae3ee2018-05-03 17:51:52 -0700137 "libbufferhub",
Jiyong Parka75d3d62018-04-09 12:16:30 +0900138 "libbufferhubqueue",
Jayant Chowdharyad9fe272019-03-07 22:36:06 -0800139 "libinput",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800140 "libpdx_default_transport",
Jiyong Parka75d3d62018-04-09 12:16:30 +0900141 ],
142 },
143 },
144
Mathias Agopian6a3c05b2017-04-27 20:06:55 -0700145 header_libs: [
Jiwen 'Steve' Cai0f950842018-01-16 17:05:54 -0800146 "libdvr_headers",
Jiyong Park172bd722017-06-21 12:14:18 +0900147 "libgui_headers",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800148 "libnativebase_headers",
Jiyong Parka75d3d62018-04-09 12:16:30 +0900149 "libpdx_headers",
Mathias Agopian6a3c05b2017-04-27 20:06:55 -0700150 ],
151
Pawin Vongmasa6e1193a2017-03-07 13:08:40 -0800152 export_shared_lib_headers: [
153 "libbinder",
Steven Moreland33f64842017-06-22 17:50:49 -0700154 "libEGL",
Mathias Agopian6a3c05b2017-04-27 20:06:55 -0700155 "libnativewindow",
Steven Moreland33f64842017-06-22 17:50:49 -0700156 "libui",
Pawin Vongmasa6e1193a2017-03-07 13:08:40 -0800157 "android.hardware.graphics.bufferqueue@1.0",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800158 "android.hardware.graphics.bufferqueue@2.0",
Peiyong Lina52f0292018-03-14 17:26:31 -0700159 "android.hardware.graphics.common@1.1",
Pawin Vongmasae672cd02019-02-14 16:01:29 -0800160 "android.hardware.graphics.common@1.2",
161 "android.hidl.token@1.0-utils",
Pawin Vongmasa6e1193a2017-03-07 13:08:40 -0800162 ],
Dan Stoza1e438d22017-03-31 16:18:10 -0700163
Jiyong Park172bd722017-06-21 12:14:18 +0900164 export_header_lib_headers: [
165 "libgui_headers",
166 ],
167
Dan Stoza1e438d22017-03-31 16:18:10 -0700168 export_include_dirs: [
169 "include",
170 ],
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700171}
172
173subdirs = ["tests"]