blob: a55e0700c5bbab201779148942ad630671afefee [file] [log] [blame]
Colin Crosscdf4b492019-03-22 13:13:12 -07001// Copyright (C) 2015 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
Roman Stratiienko4dfa62d2022-11-16 15:16:39 +020015cc_library_headers {
16 name: "drm_hwcomposer_headers",
17 vendor: true,
18 export_include_dirs: ["."],
19}
20
Colin Crosscdf4b492019-03-22 13:13:12 -070021// =====================
22// libdrmhwc_utils.a
23// =====================
24cc_library_static {
25 name: "libdrmhwc_utils",
26
Roman Stratiienko13cc3662020-08-29 21:35:39 +030027 srcs: ["utils/Worker.cpp"],
Sean Paul27cd4802019-04-02 16:57:20 -040028
Roman Stratiienko4dfa62d2022-11-16 15:16:39 +020029 header_libs: ["drm_hwcomposer_headers"],
Colin Crosscdf4b492019-03-22 13:13:12 -070030
31 cflags: [
32 "-Wall",
33 "-Werror",
34 ],
35
36 vendor: true,
37
38}
39
40// =====================
41// hwcomposer.drm.so
42// =====================
43cc_defaults {
44 name: "hwcomposer.drm_defaults",
45
46 shared_libs: [
47 "libcutils",
48 "libdrm",
49 "libhardware",
Roman Stratiienkoadd24cb2020-10-23 22:28:38 +030050 "libhidlbase",
Colin Crosscdf4b492019-03-22 13:13:12 -070051 "liblog",
52 "libsync",
53 "libui",
54 "libutils",
55 ],
56
57 static_libs: ["libdrmhwc_utils"],
Roman Stratiienko4dfa62d2022-11-16 15:16:39 +020058 header_libs: ["drm_hwcomposer_headers"],
Colin Crosscdf4b492019-03-22 13:13:12 -070059
Colin Crosscce12782019-03-29 10:27:23 -070060 cflags: [
61 "-Wall",
62 "-Werror",
63 ],
64
65 cppflags: [
Colin Crosscce12782019-03-29 10:27:23 -070066 "-DHWC2_INCLUDE_STRINGIFICATION",
Roman Stratiienkod6659982021-02-27 22:08:51 +020067 "-DHWC2_USE_CPP11",
Mauro Rossia8927b82021-12-04 15:02:13 +010068 "-std=c++17",
Colin Crosscce12782019-03-29 10:27:23 -070069 ],
70
Andrii Chepurnyia63d66c2020-04-23 20:48:13 +030071 product_variables: {
72 platform_sdk_version: {
73 cflags: ["-DPLATFORM_SDK_VERSION=%d"],
74 },
75 },
76
Colin Crosscce12782019-03-29 10:27:23 -070077 relative_install_path: "hw",
78 vendor: true,
79}
Roman Stratiienkod6659982021-02-27 22:08:51 +020080
Roman Stratiienko0ee8f582021-10-28 15:52:38 +030081filegroup {
82 name: "drm_hwcomposer_common",
Colin Crosscdf4b492019-03-22 13:13:12 -070083 srcs: [
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +030084 "bufferinfo/BufferInfoGetter.cpp",
85 "bufferinfo/BufferInfoMapperMetadata.cpp",
86
Roman Stratiienko9362cef2022-02-02 09:53:50 +020087 "compositor/DrmKmsPlan.cpp",
Sean Paul27cd4802019-04-02 16:57:20 -040088
Roman Stratiienko4e994052022-02-09 17:40:35 +020089 "drm/DrmAtomicStateManager.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +030090 "drm/DrmConnector.cpp",
91 "drm/DrmCrtc.cpp",
92 "drm/DrmDevice.cpp",
Roman Stratiienkocad8e0c2022-01-31 16:40:16 +020093 "drm/DrmDisplayPipeline.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +030094 "drm/DrmEncoder.cpp",
Roman Stratiienko8666dc92021-02-09 17:49:55 +020095 "drm/DrmFbImporter.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +030096 "drm/DrmMode.cpp",
97 "drm/DrmPlane.cpp",
98 "drm/DrmProperty.cpp",
99 "drm/ResourceManager.cpp",
Roman Stratiienko1e053b42021-10-25 22:54:20 +0300100 "drm/UEventListener.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300101 "drm/VSyncWorker.cpp",
Sean Paul27cd4802019-04-02 16:57:20 -0400102
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300103 "backend/Backend.cpp",
104 "backend/BackendClient.cpp",
Roman Stratiienkod6659982021-02-27 22:08:51 +0200105 "backend/BackendManager.cpp",
Roman Stratiienko26fd2b22022-01-04 12:59:29 +0200106
Roman Stratiienko3e168902022-01-04 16:13:12 +0200107 "hwc2_device/DrmHwcTwo.cpp",
Roman Stratiienko3627beb2022-01-04 16:02:55 +0200108 "hwc2_device/HwcDisplay.cpp",
Roman Stratiienko0137f862022-01-04 18:27:40 +0200109 "hwc2_device/HwcDisplayConfigs.cpp",
Roman Stratiienko03fd35c2022-01-04 14:30:37 +0200110 "hwc2_device/HwcLayer.cpp",
Roman Stratiienko26fd2b22022-01-04 12:59:29 +0200111 "hwc2_device/hwc2_device.cpp",
Colin Crosscdf4b492019-03-22 13:13:12 -0700112 ],
Colin Crosscdf4b492019-03-22 13:13:12 -0700113}
114
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300115// Kept only for compatibility with older Android version. Please do not use!
116cc_library_static {
117 name: "drm_hwcomposer",
118 defaults: ["hwcomposer.drm_defaults"],
119 srcs: [":drm_hwcomposer_common"],
120}
121
Colin Crosscdf4b492019-03-22 13:13:12 -0700122cc_library_shared {
123 name: "hwcomposer.drm",
124 defaults: ["hwcomposer.drm_defaults"],
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300125 srcs: [
126 ":drm_hwcomposer_common",
127 "bufferinfo/legacy/BufferInfoLibdrm.cpp",
128 ],
129 cflags: ["-DUSE_IMAPPER4_METADATA_API"],
Colin Crosscdf4b492019-03-22 13:13:12 -0700130}
131
132cc_library_shared {
Colin Crosscdf4b492019-03-22 13:13:12 -0700133 name: "hwcomposer.drm_minigbm",
134 defaults: ["hwcomposer.drm_defaults"],
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300135 srcs: [
136 ":drm_hwcomposer_common",
137 "bufferinfo/legacy/BufferInfoMinigbm.cpp",
138 ],
Colin Crosscdf4b492019-03-22 13:13:12 -0700139}
140
Roman Stratiienkoe3ed48d2019-10-17 17:42:36 +0300141// Used by hwcomposer.drm_imagination
142filegroup {
143 name: "drm_hwcomposer_platformimagination",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300144 srcs: ["bufferinfo/legacy/BufferInfoImagination.cpp"],
Roman Stratiienkoe3ed48d2019-10-17 17:42:36 +0300145}
146
Colin Crosscce12782019-03-29 10:27:23 -0700147// Used by hwcomposer.drm_hikey and hwcomposer.drm_hikey960
148filegroup {
149 name: "drm_hwcomposer_platformhisi",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300150 srcs: ["bufferinfo/legacy/BufferInfoMaliHisi.cpp"],
Colin Crosscce12782019-03-29 10:27:23 -0700151}
Neil Armstrong17d3c8b2019-04-25 15:17:22 +0000152
153// Used by hwcomposer.drm_meson
154filegroup {
155 name: "drm_hwcomposer_platformmeson",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300156 srcs: ["bufferinfo/legacy/BufferInfoMaliMeson.cpp"],
Neil Armstrong17d3c8b2019-04-25 15:17:22 +0000157}
Mattijs Korpershoek5284c7e2020-09-21 11:03:35 +0000158
159// Used by hwcomposer.drm_mediatek
160filegroup {
161 name: "drm_hwcomposer_platformmediatek",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300162 srcs: ["bufferinfo/legacy/BufferInfoMaliMediatek.cpp"],
Mattijs Korpershoek5284c7e2020-09-21 11:03:35 +0000163}