• 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
15// =====================
16// libdrmhwc_utils.a
17// =====================
18package {
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
35cc_library_static {
36    name: "libdrmhwc_utils",
37
38    srcs: ["utils/Worker.cpp"],
39
40    include_dirs: [
41        "external/drm_hwcomposer",
42        "external/drm_hwcomposer/include",
43    ],
44
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",
64        "libhidlbase",
65        "liblog",
66        "libsync",
67        "libui",
68        "libutils",
69    ],
70
71    include_dirs: [
72        "external/drm_hwcomposer",
73        "external/drm_hwcomposer/include",
74    ],
75
76    static_libs: ["libdrmhwc_utils"],
77
78    cflags: [
79        "-Wall",
80        "-Werror",
81    ],
82
83    cppflags: [
84        "-DHWC2_INCLUDE_STRINGIFICATION",
85        "-DHWC2_USE_CPP11",
86        "-std=c++17",
87    ],
88
89    product_variables: {
90        platform_sdk_version: {
91            cflags: ["-DPLATFORM_SDK_VERSION=%d"],
92        },
93    },
94
95    relative_install_path: "hw",
96    vendor: true,
97}
98
99filegroup {
100    name: "drm_hwcomposer_common",
101    srcs: [
102        "bufferinfo/BufferInfoGetter.cpp",
103        "bufferinfo/BufferInfoMapperMetadata.cpp",
104
105        "compositor/DrmKmsPlan.cpp",
106
107        "drm/DrmAtomicStateManager.cpp",
108        "drm/DrmConnector.cpp",
109        "drm/DrmCrtc.cpp",
110        "drm/DrmDevice.cpp",
111        "drm/DrmDisplayPipeline.cpp",
112        "drm/DrmEncoder.cpp",
113        "drm/DrmFbImporter.cpp",
114        "drm/DrmMode.cpp",
115        "drm/DrmPlane.cpp",
116        "drm/DrmProperty.cpp",
117        "drm/ResourceManager.cpp",
118        "drm/UEventListener.cpp",
119        "drm/VSyncWorker.cpp",
120
121        "utils/hwcutils.cpp",
122
123        "backend/Backend.cpp",
124        "backend/BackendClient.cpp",
125        "backend/BackendManager.cpp",
126
127        "hwc2_device/DrmHwcTwo.cpp",
128        "hwc2_device/HwcDisplay.cpp",
129        "hwc2_device/HwcDisplayConfigs.cpp",
130        "hwc2_device/HwcLayer.cpp",
131        "hwc2_device/hwc2_device.cpp",
132    ],
133}
134
135// 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
142cc_library_shared {
143    name: "hwcomposer.drm",
144    defaults: ["hwcomposer.drm_defaults"],
145    srcs: [
146        ":drm_hwcomposer_common",
147        "bufferinfo/legacy/BufferInfoLibdrm.cpp",
148    ],
149    cflags: ["-DUSE_IMAPPER4_METADATA_API"],
150}
151
152cc_library_shared {
153    name: "hwcomposer.drm_minigbm",
154    defaults: ["hwcomposer.drm_defaults"],
155    srcs: [
156        ":drm_hwcomposer_common",
157        "bufferinfo/legacy/BufferInfoMinigbm.cpp",
158    ],
159}
160
161// Used by hwcomposer.drm_imagination
162filegroup {
163    name: "drm_hwcomposer_platformimagination",
164    srcs: ["bufferinfo/legacy/BufferInfoImagination.cpp"],
165}
166
167// Used by hwcomposer.drm_hikey and hwcomposer.drm_hikey960
168filegroup {
169    name: "drm_hwcomposer_platformhisi",
170    srcs: ["bufferinfo/legacy/BufferInfoMaliHisi.cpp"],
171}
172
173// Used by hwcomposer.drm_meson
174filegroup {
175    name: "drm_hwcomposer_platformmeson",
176    srcs: ["bufferinfo/legacy/BufferInfoMaliMeson.cpp"],
177}
178
179// Used by hwcomposer.drm_mediatek
180filegroup {
181    name: "drm_hwcomposer_platformmediatek",
182    srcs: ["bufferinfo/legacy/BufferInfoMaliMediatek.cpp"],
183}
184