• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// 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
15package {
16    default_applicable_licenses: ["external_drm_hwcomposer_license"],
17}
18
19// Added automatically by a large-scale-change
20// See: http://go/android-license-faq
21license {
22    name: "external_drm_hwcomposer_license",
23    visibility: [":__subpackages__"],
24    license_kinds: [
25        "SPDX-license-identifier-Apache-2.0",
26    ],
27    license_text: [
28        "NOTICE",
29    ],
30}
31
32cc_library_headers {
33    name: "drm_hwcomposer_headers",
34    vendor: true,
35    export_include_dirs: ["."],
36}
37
38// =====================
39// hwcomposer.drm.so
40// =====================
41cc_defaults {
42    name: "hwcomposer.drm_defaults",
43
44    shared_libs: [
45        "libcutils",
46        "libdrm",
47        "libhardware",
48        "libhidlbase",
49        "liblog",
50        "libsync",
51        "libui",
52        "libutils",
53    ],
54
55    header_libs: ["drm_hwcomposer_headers"],
56
57    cflags: [
58        "-Wall",
59        "-Werror",
60    ],
61
62    cppflags: [
63        "-DHWC2_INCLUDE_STRINGIFICATION",
64        "-DHWC2_USE_CPP11",
65        "-std=c++17",
66    ],
67
68    relative_install_path: "hw",
69    vendor: true,
70}
71
72filegroup {
73    name: "drm_hwcomposer_fd",
74    srcs: ["utils/fd.cpp"],
75}
76
77filegroup {
78    name: "drm_hwcomposer_common",
79    srcs: [
80        "bufferinfo/BufferInfoGetter.cpp",
81        "bufferinfo/BufferInfoMapperMetadata.cpp",
82
83        "compositor/DrmKmsPlan.cpp",
84        "compositor/FlatteningController.cpp",
85
86        "drm/DrmAtomicStateManager.cpp",
87        "drm/DrmConnector.cpp",
88        "drm/DrmCrtc.cpp",
89        "drm/DrmDevice.cpp",
90        "drm/DrmDisplayPipeline.cpp",
91        "drm/DrmEncoder.cpp",
92        "drm/DrmFbImporter.cpp",
93        "drm/DrmMode.cpp",
94        "drm/DrmPlane.cpp",
95        "drm/DrmProperty.cpp",
96        "drm/ResourceManager.cpp",
97        "drm/UEventListener.cpp",
98        "drm/VSyncWorker.cpp",
99
100        "backend/Backend.cpp",
101        "backend/BackendClient.cpp",
102        "backend/BackendManager.cpp",
103
104        "hwc2_device/DrmHwcTwo.cpp",
105        "hwc2_device/HwcDisplay.cpp",
106        "hwc2_device/HwcDisplayConfigs.cpp",
107        "hwc2_device/HwcLayer.cpp",
108        "hwc2_device/hwc2_device.cpp",
109
110        "utils/fd.cpp",
111    ],
112}
113
114// Kept only for compatibility with older Android version. Please do not use!
115cc_library_static {
116    name: "drm_hwcomposer",
117    defaults: ["hwcomposer.drm_defaults"],
118    srcs: [":drm_hwcomposer_common"],
119}
120
121cc_library_shared {
122    name: "hwcomposer.drm",
123    defaults: ["hwcomposer.drm_defaults"],
124    srcs: [
125        ":drm_hwcomposer_common",
126        "bufferinfo/legacy/BufferInfoLibdrm.cpp",
127    ],
128    cflags: ["-DUSE_IMAPPER4_METADATA_API"],
129}
130
131cc_library_shared {
132    name: "hwcomposer.drm_minigbm",
133    defaults: ["hwcomposer.drm_defaults"],
134    srcs: [
135        ":drm_hwcomposer_common",
136        "bufferinfo/legacy/BufferInfoMinigbm.cpp",
137    ],
138}
139
140// Used by hwcomposer.drm_imagination
141filegroup {
142    name: "drm_hwcomposer_platformimagination",
143    srcs: ["bufferinfo/legacy/BufferInfoImagination.cpp"],
144}
145
146// Used by hwcomposer.drm_hikey and hwcomposer.drm_hikey960
147filegroup {
148    name: "drm_hwcomposer_platformhisi",
149    srcs: ["bufferinfo/legacy/BufferInfoMaliHisi.cpp"],
150}
151
152// Used by hwcomposer.drm_meson
153filegroup {
154    name: "drm_hwcomposer_platformmeson",
155    srcs: ["bufferinfo/legacy/BufferInfoMaliMeson.cpp"],
156}
157
158// Used by hwcomposer.drm_mediatek
159filegroup {
160    name: "drm_hwcomposer_platformmediatek",
161    srcs: ["bufferinfo/legacy/BufferInfoMaliMediatek.cpp"],
162}
163