1//
2// libmediadrm
3//
4
5package {
6    // See: http://go/android-license-faq
7    // A large-scale-change added 'default_applicable_licenses' to import
8    // all of the 'license_kinds' from "frameworks_av_license"
9    // to get the below license kinds:
10    //   SPDX-license-identifier-Apache-2.0
11    default_applicable_licenses: ["frameworks_av_license"],
12}
13
14cc_library_headers {
15    name: "libmediadrm_headers",
16
17    export_include_dirs: [
18        "interface"
19    ],
20
21}
22
23cc_library {
24    name: "libmediadrm",
25
26    srcs: [
27        "DrmPluginPath.cpp",
28        "DrmSessionManager.cpp",
29        "SharedLibrary.cpp",
30        "DrmHal.cpp",
31        "CryptoHal.cpp",
32        "DrmUtils.cpp",
33    ],
34
35    local_include_dirs: [
36        "include",
37        "interface"
38    ],
39
40    export_include_dirs: [
41        "include"
42    ],
43
44    header_libs: [
45        "libmedia_headers",
46    ],
47
48    shared_libs: [
49        "libbinder_ndk",
50        "libcutils",
51        "libdl",
52        "liblog",
53        "libmedia",
54        "libmediadrmmetrics_lite",
55        "libmediametrics#1",
56        "libmediautils",
57        "libstagefright_foundation",
58        "libutils",
59        "android.hardware.drm@1.0",
60        "android.hardware.drm@1.1",
61        "android.hardware.drm@1.2",
62        "android.hardware.drm@1.3",
63        "android.hardware.drm@1.4",
64        "libhidlallocatorutils",
65        "libhidlbase",
66    ],
67
68    static_libs: [
69        "resourcemanager_aidl_interface-ndk_platform",
70    ],
71
72    export_shared_lib_headers: [
73        "android.hardware.drm@1.0",
74        "android.hardware.drm@1.1",
75        "android.hardware.drm@1.2",
76        "android.hardware.drm@1.4",
77    ],
78
79    cflags: [
80        "-Werror",
81        "-Wall",
82    ],
83}
84
85// This is the version of the drm metrics configured for protobuf lite.
86cc_library_shared {
87    name: "libmediadrmmetrics_lite",
88    srcs: [
89        "DrmMetrics.cpp",
90        "PluginMetricsReporting.cpp",
91        "protos/metrics.proto",
92    ],
93
94    local_include_dirs: [
95        "include"
96    ],
97
98    proto: {
99        export_proto_headers: true,
100        type: "lite",
101    },
102    header_libs: [
103        "libmedia_headers",
104    ],
105    shared_libs: [
106        "android.hardware.drm@1.0",
107        "android.hardware.drm@1.1",
108        "android.hardware.drm@1.2",
109        "liblog",
110        "libmediametrics",
111        "libprotobuf-cpp-lite",
112        "libutils",
113    ],
114    cflags: [
115        // Suppress unused parameter and no error options. These cause problems
116        // with the when using the map type in a proto definition.
117        "-Wno-unused-parameter",
118    ],
119}
120
121// This is the version of the drm metrics library configured for full protobuf.
122cc_library_shared {
123    name: "libmediadrmmetrics_full",
124    srcs: [
125        "DrmMetrics.cpp",
126        "PluginMetricsReporting.cpp",
127        "protos/metrics.proto",
128    ],
129
130    local_include_dirs: [
131        "include"
132    ],
133
134    proto: {
135        export_proto_headers: true,
136        type: "full",
137    },
138    header_libs: [
139        "libmedia_headers",
140    ],
141    shared_libs: [
142        "android.hardware.drm@1.0",
143        "android.hardware.drm@1.1",
144        "android.hardware.drm@1.2",
145        "libbase",
146        "liblog",
147        "libmediametrics",
148        "libprotobuf-cpp-full",
149        "libstagefright_foundation",
150        "libutils",
151    ],
152    cflags: [
153        // Suppress unused parameter and no error options. These cause problems
154        // when using the map type in a proto definition.
155        "-Wno-unused-parameter",
156    ],
157}
158
159cc_library_shared {
160    name: "libmediadrmmetrics_consumer",
161    srcs: [
162        "DrmMetricsConsumer.cpp",
163    ],
164
165    include_dirs: [
166        "frameworks/av/media/libmedia/include"
167    ],
168
169    shared_libs: [
170        "android.hardware.drm@1.0",
171        "android.hardware.drm@1.1",
172        "android.hardware.drm@1.2",
173        "libbinder",
174        "libhidlbase",
175        "liblog",
176        "libmediadrm",
177        "libmediadrmmetrics_full",
178        "libutils",
179    ],
180
181    header_libs: [
182        "libmediametrics_headers",
183        "libstagefright_foundation_headers",
184    ],
185}
186