blob: c9c94af870cbf178c46beee78296a97650e0c5b6 [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
15// =====================
16// libdrmhwc_utils.a
17// =====================
Bob Badour86bdae72021-02-12 15:32:15 -080018package {
19 default_applicable_licenses: ["external_drm_hwcomposer_license"],
20}
21
22// Added automatically by a large-scale-change
23// See: http://go/android-license-faq
24license {
25 name: "external_drm_hwcomposer_license",
26 visibility: [":__subpackages__"],
27 license_kinds: [
28 "SPDX-license-identifier-Apache-2.0",
29 ],
30 license_text: [
31 "NOTICE",
32 ],
33}
34
Colin Crosscdf4b492019-03-22 13:13:12 -070035cc_library_static {
36 name: "libdrmhwc_utils",
37
Roman Stratiienko13cc3662020-08-29 21:35:39 +030038 srcs: ["utils/Worker.cpp"],
Sean Paul27cd4802019-04-02 16:57:20 -040039
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030040 include_dirs: [
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030041 "external/drm_hwcomposer",
Roman Stratiienkod6659982021-02-27 22:08:51 +020042 "external/drm_hwcomposer/include",
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030043 ],
Colin Crosscdf4b492019-03-22 13:13:12 -070044
45 cflags: [
46 "-Wall",
47 "-Werror",
48 ],
49
50 vendor: true,
51
52}
53
54// =====================
55// hwcomposer.drm.so
56// =====================
57cc_defaults {
58 name: "hwcomposer.drm_defaults",
59
60 shared_libs: [
61 "libcutils",
62 "libdrm",
63 "libhardware",
Roman Stratiienkoadd24cb2020-10-23 22:28:38 +030064 "libhidlbase",
Colin Crosscdf4b492019-03-22 13:13:12 -070065 "liblog",
66 "libsync",
67 "libui",
68 "libutils",
69 ],
70
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030071 include_dirs: [
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030072 "external/drm_hwcomposer",
Roman Stratiienkod6659982021-02-27 22:08:51 +020073 "external/drm_hwcomposer/include",
Roman Stratiienkoaa3cd542020-08-29 11:26:16 +030074 ],
Sean Paul27cd4802019-04-02 16:57:20 -040075
Colin Crosscdf4b492019-03-22 13:13:12 -070076 static_libs: ["libdrmhwc_utils"],
77
Colin Crosscce12782019-03-29 10:27:23 -070078 cflags: [
79 "-Wall",
80 "-Werror",
81 ],
82
83 cppflags: [
Colin Crosscce12782019-03-29 10:27:23 -070084 "-DHWC2_INCLUDE_STRINGIFICATION",
Roman Stratiienkod6659982021-02-27 22:08:51 +020085 "-DHWC2_USE_CPP11",
Mauro Rossia8927b82021-12-04 15:02:13 +010086 "-std=c++17",
Colin Crosscce12782019-03-29 10:27:23 -070087 ],
88
Andrii Chepurnyia63d66c2020-04-23 20:48:13 +030089 product_variables: {
90 platform_sdk_version: {
91 cflags: ["-DPLATFORM_SDK_VERSION=%d"],
92 },
93 },
94
Colin Crosscce12782019-03-29 10:27:23 -070095 relative_install_path: "hw",
96 vendor: true,
97}
Roman Stratiienkod6659982021-02-27 22:08:51 +020098
Roman Stratiienko0ee8f582021-10-28 15:52:38 +030099filegroup {
100 name: "drm_hwcomposer_common",
Colin Crosscdf4b492019-03-22 13:13:12 -0700101 srcs: [
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300102 "bufferinfo/BufferInfoGetter.cpp",
103 "bufferinfo/BufferInfoMapperMetadata.cpp",
104
Roman Stratiienko9362cef2022-02-02 09:53:50 +0200105 "compositor/DrmKmsPlan.cpp",
Sean Paul27cd4802019-04-02 16:57:20 -0400106
Roman Stratiienko4e994052022-02-09 17:40:35 +0200107 "drm/DrmAtomicStateManager.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300108 "drm/DrmConnector.cpp",
109 "drm/DrmCrtc.cpp",
110 "drm/DrmDevice.cpp",
Roman Stratiienkocad8e0c2022-01-31 16:40:16 +0200111 "drm/DrmDisplayPipeline.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300112 "drm/DrmEncoder.cpp",
Roman Stratiienko8666dc92021-02-09 17:49:55 +0200113 "drm/DrmFbImporter.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300114 "drm/DrmMode.cpp",
115 "drm/DrmPlane.cpp",
116 "drm/DrmProperty.cpp",
117 "drm/ResourceManager.cpp",
Roman Stratiienko1e053b42021-10-25 22:54:20 +0300118 "drm/UEventListener.cpp",
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300119 "drm/VSyncWorker.cpp",
Sean Paul27cd4802019-04-02 16:57:20 -0400120
Sean Paul27cd4802019-04-02 16:57:20 -0400121 "utils/hwcutils.cpp",
Matvii Zorinef3c7972020-08-11 15:15:44 +0300122
Roman Stratiienko13cc3662020-08-29 21:35:39 +0300123 "backend/Backend.cpp",
124 "backend/BackendClient.cpp",
Roman Stratiienkod6659982021-02-27 22:08:51 +0200125 "backend/BackendManager.cpp",
Roman Stratiienko26fd2b22022-01-04 12:59:29 +0200126
Roman Stratiienko3e168902022-01-04 16:13:12 +0200127 "hwc2_device/DrmHwcTwo.cpp",
Roman Stratiienko3627beb2022-01-04 16:02:55 +0200128 "hwc2_device/HwcDisplay.cpp",
Roman Stratiienko0137f862022-01-04 18:27:40 +0200129 "hwc2_device/HwcDisplayConfigs.cpp",
Roman Stratiienko03fd35c2022-01-04 14:30:37 +0200130 "hwc2_device/HwcLayer.cpp",
Roman Stratiienko26fd2b22022-01-04 12:59:29 +0200131 "hwc2_device/hwc2_device.cpp",
Colin Crosscdf4b492019-03-22 13:13:12 -0700132 ],
Colin Crosscdf4b492019-03-22 13:13:12 -0700133}
134
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300135// Kept only for compatibility with older Android version. Please do not use!
136cc_library_static {
137 name: "drm_hwcomposer",
138 defaults: ["hwcomposer.drm_defaults"],
139 srcs: [":drm_hwcomposer_common"],
140}
141
Colin Crosscdf4b492019-03-22 13:13:12 -0700142cc_library_shared {
143 name: "hwcomposer.drm",
144 defaults: ["hwcomposer.drm_defaults"],
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300145 srcs: [
146 ":drm_hwcomposer_common",
147 "bufferinfo/legacy/BufferInfoLibdrm.cpp",
148 ],
149 cflags: ["-DUSE_IMAPPER4_METADATA_API"],
Colin Crosscdf4b492019-03-22 13:13:12 -0700150}
151
152cc_library_shared {
Colin Crosscdf4b492019-03-22 13:13:12 -0700153 name: "hwcomposer.drm_minigbm",
154 defaults: ["hwcomposer.drm_defaults"],
Roman Stratiienko0ee8f582021-10-28 15:52:38 +0300155 srcs: [
156 ":drm_hwcomposer_common",
157 "bufferinfo/legacy/BufferInfoMinigbm.cpp",
158 ],
Colin Crosscdf4b492019-03-22 13:13:12 -0700159}
160
Roman Stratiienkoe3ed48d2019-10-17 17:42:36 +0300161// Used by hwcomposer.drm_imagination
162filegroup {
163 name: "drm_hwcomposer_platformimagination",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300164 srcs: ["bufferinfo/legacy/BufferInfoImagination.cpp"],
Roman Stratiienkoe3ed48d2019-10-17 17:42:36 +0300165}
166
Colin Crosscce12782019-03-29 10:27:23 -0700167// Used by hwcomposer.drm_hikey and hwcomposer.drm_hikey960
168filegroup {
169 name: "drm_hwcomposer_platformhisi",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300170 srcs: ["bufferinfo/legacy/BufferInfoMaliHisi.cpp"],
Colin Crosscce12782019-03-29 10:27:23 -0700171}
Neil Armstrong17d3c8b2019-04-25 15:17:22 +0000172
173// Used by hwcomposer.drm_meson
174filegroup {
175 name: "drm_hwcomposer_platformmeson",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300176 srcs: ["bufferinfo/legacy/BufferInfoMaliMeson.cpp"],
Neil Armstrong17d3c8b2019-04-25 15:17:22 +0000177}
Mattijs Korpershoek5284c7e2020-09-21 11:03:35 +0000178
179// Used by hwcomposer.drm_mediatek
180filegroup {
181 name: "drm_hwcomposer_platformmediatek",
Roman Stratiienkob2e9fe22020-10-03 10:52:36 +0300182 srcs: ["bufferinfo/legacy/BufferInfoMaliMediatek.cpp"],
Mattijs Korpershoek5284c7e2020-09-21 11:03:35 +0000183}