blob: 22ebfe04eb3fc9b3b7b4ee37cf19b93ea45452fc [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.
Bob Badour3306e492021-02-25 15:35:37 -080014package {
15 // See: http://go/android-license-faq
16 // A large-scale-change added 'default_applicable_licenses' to import
17 // all of the 'license_kinds' from "frameworks_native_license"
18 // to get the below license kinds:
19 // SPDX-license-identifier-Apache-2.0
20 default_applicable_licenses: ["frameworks_native_license"],
John Reck38bc8a82024-02-21 17:08:27 -050021 default_team: "trendy_team_android_core_graphics_stack",
Bob Badour3306e492021-02-25 15:35:37 -080022}
23
Ady Abraham107788e2023-10-17 12:31:08 -070024aconfig_declarations {
25 name: "libgui_flags",
26 package: "com.android.graphics.libgui.flags",
Oriol Prieto Gasco33fd22e2024-02-06 18:34:41 +000027 container: "system",
Ady Abraham107788e2023-10-17 12:31:08 -070028 srcs: ["libgui_flags.aconfig"],
29}
30
31cc_aconfig_library {
32 name: "libguiflags",
33 host_supported: true,
34 vendor_available: true,
35 min_sdk_version: "29",
36 apex_available: [
37 "//apex_available:platform",
38 "com.android.media.swcodec",
39 "test_com.android.media.swcodec",
40 ],
41 aconfig_declarations: "libgui_flags",
42}
43
Ady Abraham1d0cae92024-06-14 13:41:12 -070044cc_aconfig_library {
45 name: "libguiflags_no_apex",
46 aconfig_declarations: "libgui_flags",
47}
48
Jiyong Park172bd722017-06-21 12:14:18 +090049cc_library_headers {
50 name: "libgui_headers",
51 vendor_available: true,
52 export_include_dirs: ["include"],
Lajos Molnar7aa71e72019-04-01 15:34:32 -070053
54 // we must build this module to get the required header as that is generated
Marco Nelissencb04dee2019-10-28 12:55:47 -070055 export_shared_lib_headers: [
56 "android.hidl.token@1.0-utils",
57 "android.hardware.graphics.bufferqueue@1.0",
58 "android.hardware.graphics.bufferqueue@2.0",
59 ],
60 shared_libs: [
61 "android.hidl.token@1.0-utils",
62 "android.hardware.graphics.bufferqueue@1.0",
63 "android.hardware.graphics.bufferqueue@2.0",
64 ],
Ady Abraham107788e2023-10-17 12:31:08 -070065 static_libs: ["libguiflags"],
66 export_static_lib_headers: ["libguiflags"],
Jooyung Han7bcb8932020-04-16 18:48:32 +090067 min_sdk_version: "29",
Ray Essickeed53a02022-02-09 09:40:20 -080068 // TODO(b/218719284) can media use be constrained to libgui_bufferqueue_static?
69 apex_available: [
70 "//apex_available:platform",
71 "com.android.media.swcodec",
72 "test_com.android.media.swcodec",
73 ],
Jiyong Park172bd722017-06-21 12:14:18 +090074}
Dan Willemsen3106c1c2016-10-03 23:56:51 -070075
Alec Mouricdedc5d2021-03-01 22:39:55 -080076cc_library_headers {
77 name: "libgui_aidl_headers",
78 vendor_available: true,
79 static_libs: [
80 "libgui_aidl_static",
81 ],
82
83 export_static_lib_headers: [
84 "libgui_aidl_static",
85 ],
86}
87
chaviw3277faf2021-05-19 16:45:23 -050088// AIDL files that should be exposed to java
89filegroup {
90 name: "guiconstants_aidl",
91 srcs: [
Vishnu Nair9cf4a4d2021-09-17 12:16:08 -070092 "android/gui/DropInputMode.aidl",
Patrick Williams090ad062023-08-08 12:30:10 -050093 "android/gui/StalledTransactionInfo.aidl",
chaviw3277faf2021-05-19 16:45:23 -050094 "android/**/TouchOcclusionMode.aidl",
Vishnu Nair9e0017e2024-05-22 19:02:44 +000095 "android/gui/TrustedOverlay.aidl",
chaviw3277faf2021-05-19 16:45:23 -050096 ],
97}
98
Vinh Tran6bd75632023-04-14 18:55:25 -040099filegroup {
100 name: "android_gui_aidl",
101 srcs: [
102 "android/gui/DisplayInfo.aidl",
103 "android/gui/FocusRequest.aidl",
104 "android/gui/InputApplicationInfo.aidl",
105 "android/gui/IWindowInfosListener.aidl",
Patrick Williamsacd22582023-07-12 13:47:28 -0500106 "android/gui/IWindowInfosPublisher.aidl",
Vinh Tran6bd75632023-04-14 18:55:25 -0400107 "android/gui/IWindowInfosReportedListener.aidl",
108 "android/gui/WindowInfo.aidl",
Patrick Williamsd828f302023-04-28 17:52:08 -0500109 "android/gui/WindowInfosUpdate.aidl",
Vinh Tran6bd75632023-04-14 18:55:25 -0400110 ],
111}
112
chaviw3277faf2021-05-19 16:45:23 -0500113cc_library_static {
114 name: "libgui_window_info_static",
115 vendor_available: true,
116 host_supported: true,
117 srcs: [
118 ":guiconstants_aidl",
Prabir Pradhande788502021-12-22 00:26:07 -0800119 ":inputconstants_aidl",
Prabir Pradhan48f8cb92021-08-26 14:05:36 -0700120 "android/gui/DisplayInfo.aidl",
chaviw3277faf2021-05-19 16:45:23 -0500121 "android/gui/FocusRequest.aidl",
122 "android/gui/InputApplicationInfo.aidl",
chaviw60c9d3e2021-06-04 12:52:17 -0500123 "android/gui/IWindowInfosListener.aidl",
Patrick Williamsacd22582023-07-12 13:47:28 -0500124 "android/gui/IWindowInfosPublisher.aidl",
chaviwbf023a62021-06-07 16:00:06 -0500125 "android/gui/IWindowInfosReportedListener.aidl",
Patrick Williamsd828f302023-04-28 17:52:08 -0500126 "android/gui/WindowInfosUpdate.aidl",
chaviw3277faf2021-05-19 16:45:23 -0500127 "android/gui/WindowInfo.aidl",
Prabir Pradhan48f8cb92021-08-26 14:05:36 -0700128 "DisplayInfo.cpp",
chaviw3277faf2021-05-19 16:45:23 -0500129 "WindowInfo.cpp",
Patrick Williamsd828f302023-04-28 17:52:08 -0500130 "WindowInfosUpdate.cpp",
chaviw3277faf2021-05-19 16:45:23 -0500131 ],
132
133 shared_libs: [
134 "libbinder",
135 ],
136
137 local_include_dirs: [
138 "include",
139 ],
140
141 export_shared_lib_headers: [
142 "libbinder",
143 ],
144
145 static_libs: [
146 "libui-types",
147 ],
148
149 aidl: {
Prabir Pradhan48f8cb92021-08-26 14:05:36 -0700150 export_aidl_headers: true,
chaviw3277faf2021-05-19 16:45:23 -0500151 },
152
153 include_dirs: [
154 "frameworks/native/include",
155 ],
Jerome Gaillardaecaf0a2021-07-08 15:34:16 +0100156
157 target: {
158 darwin: {
159 enabled: false,
160 },
161 },
chaviw3277faf2021-05-19 16:45:23 -0500162}
163
Carlos Martinez Romero682a45b2024-02-26 10:58:58 -0800164filegroup {
165 name: "libgui_extra_aidl_files",
166 srcs: [
Vinh Trancbbf3302023-05-25 09:19:56 -0400167 "android/gui/DisplayInfo.aidl",
168 "android/gui/FocusRequest.aidl",
169 "android/gui/InputApplicationInfo.aidl",
170 "android/gui/IWindowInfosListener.aidl",
Patrick Williamsacd22582023-07-12 13:47:28 -0500171 "android/gui/IWindowInfosPublisher.aidl",
Vinh Trancbbf3302023-05-25 09:19:56 -0400172 "android/gui/IWindowInfosReportedListener.aidl",
Patrick Williams090ad062023-08-08 12:30:10 -0500173 "android/gui/StalledTransactionInfo.aidl",
Vinh Trancbbf3302023-05-25 09:19:56 -0400174 "android/gui/WindowInfo.aidl",
175 "android/gui/WindowInfosUpdate.aidl",
176 ],
177}
178
Carlos Martinez Romero682a45b2024-02-26 10:58:58 -0800179filegroup {
180 name: "libgui_extra_unstructured_aidl_files",
181 srcs: [
182 "android/gui/DisplayInfo.aidl",
183 "android/gui/InputApplicationInfo.aidl",
184 "android/gui/WindowInfo.aidl",
185 "android/gui/WindowInfosUpdate.aidl",
186 ],
187}
188
189aidl_library {
190 name: "libgui_aidl_hdrs",
191 hdrs: [":libgui_extra_aidl_files"],
192}
193
194aidl_library {
195 name: "libgui_extra_unstructured_aidl_hdrs",
196 hdrs: [":libgui_extra_unstructured_aidl_files"],
197}
198
Vinh Trancbbf3302023-05-25 09:19:56 -0400199aidl_library {
Pablo Gamito6ee484d2020-07-30 14:26:28 +0000200 name: "libgui_aidl",
201 srcs: ["aidl/**/*.aidl"],
Vinh Trancbbf3302023-05-25 09:19:56 -0400202 strip_import_prefix: "aidl",
Carlos Martinez Romero682a45b2024-02-26 10:58:58 -0800203 deps: [
204 "libgui_aidl_hdrs",
205 "libgui_extra_unstructured_aidl_hdrs",
206 ],
Pablo Gamito6ee484d2020-07-30 14:26:28 +0000207}
208
Huihong Luo0a81aa32022-02-22 16:02:36 -0800209filegroup {
210 name: "libgui_frame_event_aidl",
211 srcs: ["aidl/android/gui/FrameEvent.aidl"],
212 path: "aidl/",
213}
214
Alec Mouricdedc5d2021-03-01 22:39:55 -0800215cc_library_static {
216 name: "libgui_aidl_static",
217 vendor_available: true,
Alec Mouricdedc5d2021-03-01 22:39:55 -0800218
219 shared_libs: [
220 "libbinder",
221 "libui",
222 ],
223
224 local_include_dirs: [
225 "include",
226 ],
227
Huihong Luo02186fb2022-02-23 14:21:54 -0800228 include_dirs: [
229 "frameworks/native/include",
230 ],
231
Alec Mouricdedc5d2021-03-01 22:39:55 -0800232 export_shared_lib_headers: [
233 "libbinder",
234 ],
235
chaviw3277faf2021-05-19 16:45:23 -0500236 static_libs: [
237 "libui-types",
Huihong Luo02186fb2022-02-23 14:21:54 -0800238 "libgui_window_info_static",
chaviw3277faf2021-05-19 16:45:23 -0500239 ],
240
Alec Mouricdedc5d2021-03-01 22:39:55 -0800241 aidl: {
Prabir Pradhan48f8cb92021-08-26 14:05:36 -0700242 export_aidl_headers: true,
Vinh Trancbbf3302023-05-25 09:19:56 -0400243 libs: ["libgui_aidl"],
Prabir Pradhan48f8cb92021-08-26 14:05:36 -0700244 },
Alec Mouricdedc5d2021-03-01 22:39:55 -0800245}
246
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700247filegroup {
248 name: "libgui-sources",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700249 srcs: [
Vinh Tran9ccb8dd2022-08-09 15:38:48 -0400250 ":framework_native_aidl_binder",
251 ":framework_native_aidl_gui",
Siarhei Vishniakoufc434ac2021-01-13 10:28:00 -1000252 ":inputconstants_aidl",
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700253 ":libgui_bufferqueue_sources",
254
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700255 "BitTube.cpp",
Robert Carr78c25dd2019-08-15 14:10:33 -0700256 "BLASTBufferQueue.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700257 "BufferItemConsumer.cpp",
Patrick Williamsf693bcf2024-08-02 09:55:23 -0500258 "BufferReleaseChannel.cpp",
Rachel Lee273c18c2022-12-13 14:35:07 -0800259 "Choreographer.cpp",
Dominik Laskowski5a5e01e2022-07-08 07:52:44 -0700260 "CompositorTiming.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700261 "ConsumerBase.cpp",
262 "CpuConsumer.cpp",
Ady Abrahama3b08ef2019-07-15 18:43:10 -0700263 "DebugEGLImageTracker.cpp",
Alec Mouri77a53872019-10-28 16:44:36 -0700264 "DisplayEventDispatcher.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700265 "DisplayEventReceiver.cpp",
Alec Mouri0e7d8fd2023-05-03 23:58:43 +0000266 "FenceMonitor.cpp",
Carlos Martinez Romero0cc2e2c2024-10-14 10:16:56 -0700267 "Flags.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700268 "GLConsumer.cpp",
Chong Zhang62493092020-01-15 16:04:47 -0800269 "IConsumerListener.cpp",
Chong Zhang62493092020-01-15 16:04:47 -0800270 "IGraphicBufferConsumer.cpp",
271 "IGraphicBufferProducer.cpp",
272 "IProducerListener.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700273 "ISurfaceComposer.cpp",
Marissa Wall7a9b6ff2018-08-21 17:26:20 -0700274 "ITransactionCompletedListener.cpp",
Evan Rosky1f6d6d52018-12-06 10:47:26 -0800275 "LayerMetadata.cpp",
Chavi Weingartenc78f53c2023-04-14 18:50:53 +0000276 "LayerStatePermissions.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700277 "LayerState.cpp",
Sally Qief006582024-10-11 13:23:09 -0700278 "DisplayLuts.cpp",
Chong Zhang62493092020-01-15 16:04:47 -0800279 "OccupancyTracker.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700280 "StreamSplitter.cpp",
chaviw0ef7caa2021-01-05 11:04:50 -0800281 "ScreenCaptureResults.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700282 "Surface.cpp",
283 "SurfaceControl.cpp",
284 "SurfaceComposerClient.cpp",
285 "SyncFeatures.cpp",
Rachel Lee18c34372022-01-20 13:57:18 -0800286 "VsyncEventData.cpp",
Mathias Agopian05debe12017-02-08 17:04:18 -0800287 "view/Surface.cpp",
chaviw60c9d3e2021-06-04 12:52:17 -0500288 "WindowInfosListenerReporter.cpp",
Chong Zhang62493092020-01-15 16:04:47 -0800289 "bufferqueue/1.0/B2HProducerListener.cpp",
290 "bufferqueue/1.0/H2BGraphicBufferProducer.cpp",
291 "bufferqueue/2.0/B2HProducerListener.cpp",
292 "bufferqueue/2.0/H2BGraphicBufferProducer.cpp",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700293 ],
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700294}
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700295
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700296cc_defaults {
297 name: "libgui-defaults",
298 defaults: ["libgui_bufferqueue-defaults"],
299 srcs: [":libgui-sources"],
300 static_libs: [
301 "libgui_aidl_static",
302 "libgui_window_info_static",
303 "libguiflags",
304 ],
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700305 shared_libs: [
Chong Zhang62493092020-01-15 16:04:47 -0800306 "libbinder",
Liz Kammer7994df22023-05-04 12:25:58 +0000307 "libGLESv2",
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700308 ],
Ady Abraham107788e2023-10-17 12:31:08 -0700309 export_static_lib_headers: [
310 "libguiflags",
311 ],
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700312}
313
Vinay Vermae4993c22018-06-12 18:04:44 +0530314cc_defaults {
315 name: "libgui_defaults",
316
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700317 double_loadable: true,
318
319 defaults: [
320 "libgui-defaults",
321 ],
322
323 export_static_lib_headers: [
324 "libgui_aidl_static",
325 "libgui_window_info_static",
326 ],
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700327
Chong Zhang62493092020-01-15 16:04:47 -0800328 export_shared_lib_headers: [
329 "libbinder",
330 ],
331
Alec Mouricdedc5d2021-03-01 22:39:55 -0800332 export_header_lib_headers: [
333 "libgui_aidl_headers",
Rachel Lee273c18c2022-12-13 14:35:07 -0800334 "jni_headers",
Alec Mouricdedc5d2021-03-01 22:39:55 -0800335 ],
336
Daichi Hironof474d3d2019-11-05 08:54:07 +0900337 aidl: {
338 export_aidl_headers: true,
Yi Kongccc1c7c2021-02-22 17:44:17 +0800339 },
340
Alec Mouricdedc5d2021-03-01 22:39:55 -0800341 header_libs: [
Rachel Lee273c18c2022-12-13 14:35:07 -0800342 "jni_headers",
Alec Mouricdedc5d2021-03-01 22:39:55 -0800343 "libgui_aidl_headers",
Alec Mouricdedc5d2021-03-01 22:39:55 -0800344 ],
345
Brian Lindahle2ca80b2024-11-01 18:43:11 -0600346 static_libs: [
347 "libsurfaceflingerflags",
348 ],
349
Yi Kong7cd72c52021-12-23 15:51:29 +0800350 afdo: true,
Yi Kongb1f2d202021-02-23 17:52:42 +0800351
352 lto: {
353 thin: true,
354 },
Chavi Weingartene0237bb2023-02-06 21:48:32 +0000355
356 cflags: [
357 "-Wthread-safety",
358 ],
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700359}
360
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700361// Used by media codec services exclusively as a static lib for
Chong Zhangdbfaf4d2019-05-03 10:33:18 -0700362// core bufferqueue support only.
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700363cc_library_static {
364 name: "libgui_bufferqueue_static",
365 vendor_available: true,
Jooyung Han54042e02020-05-13 16:04:07 +0900366 apex_available: [
367 "//apex_available:platform",
368 "com.android.media.swcodec",
369 ],
370 min_sdk_version: "29",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700371
Chong Zhangdbfaf4d2019-05-03 10:33:18 -0700372 cflags: [
Chong Zhang62493092020-01-15 16:04:47 -0800373 "-DNO_BINDER",
Chong Zhangdbfaf4d2019-05-03 10:33:18 -0700374 ],
375
376 defaults: ["libgui_bufferqueue-defaults"],
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700377
378 srcs: [
Huihong Luo02186fb2022-02-23 14:21:54 -0800379 ":libgui_frame_event_aidl",
Siarhei Vishniakoufc434ac2021-01-13 10:28:00 -1000380 ":inputconstants_aidl",
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700381 ":libgui_bufferqueue_sources",
382 ],
Huihong Luo02186fb2022-02-23 14:21:54 -0800383
384 aidl: {
385 include_dirs: [
386 "frameworks/native/libs/gui",
387 ],
388 },
Chong Zhangdbfaf4d2019-05-03 10:33:18 -0700389}
390
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700391filegroup {
392 name: "libgui_bufferqueue_sources",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700393 srcs: [
Yin-Chia Yeh64ee5f52020-01-02 17:53:18 +0700394 "BatchBufferOps.cpp",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700395 "BufferItem.cpp",
396 "BufferQueue.cpp",
397 "BufferQueueConsumer.cpp",
398 "BufferQueueCore.cpp",
399 "BufferQueueProducer.cpp",
400 "BufferQueueThreadState.cpp",
401 "BufferSlot.cpp",
Ady Abraham6cdd3fd2023-09-07 18:45:58 -0700402 "FrameRateUtils.cpp",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700403 "FrameTimestamps.cpp",
404 "GLConsumerUtils.cpp",
405 "HdrMetadata.cpp",
Yin-Chia Yeh64ee5f52020-01-02 17:53:18 +0700406 "IGraphicBufferProducerFlattenables.cpp",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700407 "bufferqueue/1.0/Conversion.cpp",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700408 "bufferqueue/1.0/H2BProducerListener.cpp",
409 "bufferqueue/1.0/WProducerListener.cpp",
410 "bufferqueue/2.0/B2HGraphicBufferProducer.cpp",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700411 "bufferqueue/2.0/H2BProducerListener.cpp",
412 "bufferqueue/2.0/types.cpp",
413 ],
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700414}
415
416// Common build config shared by libgui and libgui_bufferqueue_static.
417cc_defaults {
418 name: "libgui_bufferqueue-defaults",
419
Sally Qi6920a2f2022-08-26 10:40:05 -0700420 defaults: ["android.hardware.graphics.common-ndk_shared"],
421
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700422 cflags: [
423 "-Wall",
424 "-Werror",
425 ],
426
427 cppflags: [
428 "-Wextra",
429 "-DDEBUG_ONLY_CODE=0",
430 ],
431
432 product_variables: {
433 eng: {
434 cppflags: [
435 "-UDEBUG_ONLY_CODE",
436 "-DDEBUG_ONLY_CODE=1",
437 ],
438 },
439 },
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700440
David Stevens7347f0b2020-01-15 20:19:22 +0900441 whole_static_libs: [
Trevor Radcliffeba8800d2022-07-08 17:58:06 +0000442 "libLibGuiProperties",
David Stevens7347f0b2020-01-15 20:19:22 +0900443 ],
444
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700445 shared_libs: [
446 "android.hardware.graphics.bufferqueue@1.0",
447 "android.hardware.graphics.bufferqueue@2.0",
448 "android.hardware.graphics.common@1.1",
449 "android.hardware.graphics.common@1.2",
450 "android.hidl.token@1.0-utils",
451 "libbase",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700452 "libcutils",
453 "libEGL",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700454 "libhidlbase",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700455 "liblog",
456 "libnativewindow",
457 "libsync",
458 "libui",
459 "libutils",
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700460 ],
461
Steven Moreland2b3f3cd2020-01-31 14:56:45 -0800462 static_libs: [
463 "libbinderthreadstateutils",
464 ],
465
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700466 header_libs: [
467 "libgui_headers",
468 "libnativebase_headers",
469 ],
470
Ady Abraham62f216c2020-10-13 19:07:23 -0700471 include_dirs: [
472 "frameworks/native/include",
473 ],
474
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700475 export_shared_lib_headers: [
Chong Zhang60fa4fd2019-04-19 10:00:27 -0700476 "libEGL",
477 "libnativewindow",
478 "libui",
479 "android.hardware.graphics.bufferqueue@1.0",
480 "android.hardware.graphics.bufferqueue@2.0",
481 "android.hardware.graphics.common@1.1",
482 "android.hardware.graphics.common@1.2",
483 "android.hidl.token@1.0-utils",
484 ],
485
486 export_header_lib_headers: [
487 "libgui_headers",
488 ],
489
490 export_include_dirs: [
491 "include",
492 ],
493}
494
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700495// GMocks for use by external code
496cc_library_static {
497 name: "libgui_mocks",
498 vendor_available: false,
499
500 defaults: ["libgui_bufferqueue-defaults"],
501 static_libs: [
502 "libgtest",
503 "libgmock",
Ady Abraham107788e2023-10-17 12:31:08 -0700504 "libguiflags",
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700505 ],
506
507 srcs: [
Huihong Luo0a81aa32022-02-22 16:02:36 -0800508 ":libgui_frame_event_aidl",
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700509 "mock/GraphicBufferConsumer.cpp",
510 "mock/GraphicBufferProducer.cpp",
511 ],
512}
513
Vinay Vermae4993c22018-06-12 18:04:44 +0530514cc_library_shared {
515 name: "libgui",
516 vendor_available: true,
517 defaults: ["libgui_defaults"]
518}
519
520cc_library_shared {
521 name: "libgui_vendor",
522 vendor: true,
523 defaults: ["libgui_defaults"]
524}
525
Dan Willemsen3106c1c2016-10-03 23:56:51 -0700526subdirs = ["tests"]