xref: /aosp_15_r20/frameworks/av/media/libmedia/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1*ec779b8eSAndroid Build Coastguard Workerpackage {
2*ec779b8eSAndroid Build Coastguard Worker    default_applicable_licenses: ["frameworks_av_media_libmedia_license"],
3*ec779b8eSAndroid Build Coastguard Worker}
4*ec779b8eSAndroid Build Coastguard Worker
5*ec779b8eSAndroid Build Coastguard Worker// Added automatically by a large-scale-change
6*ec779b8eSAndroid Build Coastguard Worker// See: http://go/android-license-faq
7*ec779b8eSAndroid Build Coastguard Workerlicense {
8*ec779b8eSAndroid Build Coastguard Worker    name: "frameworks_av_media_libmedia_license",
9*ec779b8eSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
10*ec779b8eSAndroid Build Coastguard Worker    license_kinds: [
11*ec779b8eSAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
12*ec779b8eSAndroid Build Coastguard Worker    ],
13*ec779b8eSAndroid Build Coastguard Worker    license_text: [
14*ec779b8eSAndroid Build Coastguard Worker        "NOTICE",
15*ec779b8eSAndroid Build Coastguard Worker    ],
16*ec779b8eSAndroid Build Coastguard Worker}
17*ec779b8eSAndroid Build Coastguard Worker
18*ec779b8eSAndroid Build Coastguard Workercc_library_headers {
19*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_headers",
20*ec779b8eSAndroid Build Coastguard Worker    vendor_available: true,
21*ec779b8eSAndroid Build Coastguard Worker    min_sdk_version: "29",
22*ec779b8eSAndroid Build Coastguard Worker    apex_available: [
23*ec779b8eSAndroid Build Coastguard Worker        "//apex_available:platform",
24*ec779b8eSAndroid Build Coastguard Worker        "com.android.media.swcodec",
25*ec779b8eSAndroid Build Coastguard Worker    ],
26*ec779b8eSAndroid Build Coastguard Worker
27*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
28*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
29*ec779b8eSAndroid Build Coastguard Worker        "av-headers",
30*ec779b8eSAndroid Build Coastguard Worker        "libbase_headers",
31*ec779b8eSAndroid Build Coastguard Worker        "libgui_headers",
32*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
33*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
34*ec779b8eSAndroid Build Coastguard Worker    ],
35*ec779b8eSAndroid Build Coastguard Worker    export_header_lib_headers: [
36*ec779b8eSAndroid Build Coastguard Worker        "av-headers",
37*ec779b8eSAndroid Build Coastguard Worker        "libgui_headers",
38*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
39*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
40*ec779b8eSAndroid Build Coastguard Worker    ],
41*ec779b8eSAndroid Build Coastguard Worker}
42*ec779b8eSAndroid Build Coastguard Worker
43*ec779b8eSAndroid Build Coastguard Workercc_library_headers {
44*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_datasource_headers",
45*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
46*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
47*ec779b8eSAndroid Build Coastguard Worker    target: {
48*ec779b8eSAndroid Build Coastguard Worker        darwin: {
49*ec779b8eSAndroid Build Coastguard Worker            enabled: false,
50*ec779b8eSAndroid Build Coastguard Worker        },
51*ec779b8eSAndroid Build Coastguard Worker    },
52*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
53*ec779b8eSAndroid Build Coastguard Worker        "libbinder_headers",
54*ec779b8eSAndroid Build Coastguard Worker    ],
55*ec779b8eSAndroid Build Coastguard Worker    export_header_lib_headers: [
56*ec779b8eSAndroid Build Coastguard Worker        "libbinder_headers",
57*ec779b8eSAndroid Build Coastguard Worker    ],
58*ec779b8eSAndroid Build Coastguard Worker    apex_available: [
59*ec779b8eSAndroid Build Coastguard Worker        "//apex_available:platform",
60*ec779b8eSAndroid Build Coastguard Worker        "com.android.media",
61*ec779b8eSAndroid Build Coastguard Worker    ],
62*ec779b8eSAndroid Build Coastguard Worker    min_sdk_version: "29",
63*ec779b8eSAndroid Build Coastguard Worker}
64*ec779b8eSAndroid Build Coastguard Worker
65*ec779b8eSAndroid Build Coastguard Workerfilegroup {
66*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_omx_aidl",
67*ec779b8eSAndroid Build Coastguard Worker    srcs: [
68*ec779b8eSAndroid Build Coastguard Worker        "aidl/android/IOMXBufferSource.aidl",
69*ec779b8eSAndroid Build Coastguard Worker    ],
70*ec779b8eSAndroid Build Coastguard Worker    path: "aidl",
71*ec779b8eSAndroid Build Coastguard Worker}
72*ec779b8eSAndroid Build Coastguard Worker
73*ec779b8eSAndroid Build Coastguard Workerfilegroup {
74*ec779b8eSAndroid Build Coastguard Worker    name: "mediaextractorservice_aidl",
75*ec779b8eSAndroid Build Coastguard Worker    srcs: [
76*ec779b8eSAndroid Build Coastguard Worker        "aidl/android/IMediaExtractorService.aidl",
77*ec779b8eSAndroid Build Coastguard Worker    ],
78*ec779b8eSAndroid Build Coastguard Worker    path: "aidl",
79*ec779b8eSAndroid Build Coastguard Worker}
80*ec779b8eSAndroid Build Coastguard Worker
81*ec779b8eSAndroid Build Coastguard Workercc_library_shared {
82*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_omx",
83*ec779b8eSAndroid Build Coastguard Worker    vendor_available: true,
84*ec779b8eSAndroid Build Coastguard Worker    double_loadable: true,
85*ec779b8eSAndroid Build Coastguard Worker
86*ec779b8eSAndroid Build Coastguard Worker    srcs: [
87*ec779b8eSAndroid Build Coastguard Worker        ":libmedia_omx_aidl",
88*ec779b8eSAndroid Build Coastguard Worker
89*ec779b8eSAndroid Build Coastguard Worker        "IOMX.cpp",
90*ec779b8eSAndroid Build Coastguard Worker        "MediaCodecBuffer.cpp",
91*ec779b8eSAndroid Build Coastguard Worker        "OMXBuffer.cpp",
92*ec779b8eSAndroid Build Coastguard Worker        "omx/1.0/WOmxBufferSource.cpp",
93*ec779b8eSAndroid Build Coastguard Worker        "omx/1.0/WOmxNode.cpp",
94*ec779b8eSAndroid Build Coastguard Worker        "omx/1.0/WOmxObserver.cpp",
95*ec779b8eSAndroid Build Coastguard Worker    ],
96*ec779b8eSAndroid Build Coastguard Worker
97*ec779b8eSAndroid Build Coastguard Worker    aidl: {
98*ec779b8eSAndroid Build Coastguard Worker        local_include_dirs: ["aidl"],
99*ec779b8eSAndroid Build Coastguard Worker        export_aidl_headers: true,
100*ec779b8eSAndroid Build Coastguard Worker    },
101*ec779b8eSAndroid Build Coastguard Worker
102*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: [
103*ec779b8eSAndroid Build Coastguard Worker        "include",
104*ec779b8eSAndroid Build Coastguard Worker    ],
105*ec779b8eSAndroid Build Coastguard Worker
106*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
107*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
108*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
109*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
110*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
111*ec779b8eSAndroid Build Coastguard Worker        "libhidlbase",
112*ec779b8eSAndroid Build Coastguard Worker        "liblog",
113*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
114*ec779b8eSAndroid Build Coastguard Worker        "libui",
115*ec779b8eSAndroid Build Coastguard Worker        "libutils",
116*ec779b8eSAndroid Build Coastguard Worker    ],
117*ec779b8eSAndroid Build Coastguard Worker
118*ec779b8eSAndroid Build Coastguard Worker    export_shared_lib_headers: [
119*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
120*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
121*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
122*ec779b8eSAndroid Build Coastguard Worker        "libui",
123*ec779b8eSAndroid Build Coastguard Worker    ],
124*ec779b8eSAndroid Build Coastguard Worker
125*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
126*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
127*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
128*ec779b8eSAndroid Build Coastguard Worker    ],
129*ec779b8eSAndroid Build Coastguard Worker
130*ec779b8eSAndroid Build Coastguard Worker    export_header_lib_headers: [
131*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
132*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
133*ec779b8eSAndroid Build Coastguard Worker    ],
134*ec779b8eSAndroid Build Coastguard Worker
135*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: [
136*ec779b8eSAndroid Build Coastguard Worker        "aidl",
137*ec779b8eSAndroid Build Coastguard Worker        "include",
138*ec779b8eSAndroid Build Coastguard Worker    ],
139*ec779b8eSAndroid Build Coastguard Worker
140*ec779b8eSAndroid Build Coastguard Worker    cflags: [
141*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
142*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
143*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
144*ec779b8eSAndroid Build Coastguard Worker    ],
145*ec779b8eSAndroid Build Coastguard Worker
146*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
147*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
148*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
149*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
150*ec779b8eSAndroid Build Coastguard Worker        ],
151*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
152*ec779b8eSAndroid Build Coastguard Worker    },
153*ec779b8eSAndroid Build Coastguard Worker}
154*ec779b8eSAndroid Build Coastguard Worker
155*ec779b8eSAndroid Build Coastguard Workercc_library_shared {
156*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_omx_client",
157*ec779b8eSAndroid Build Coastguard Worker
158*ec779b8eSAndroid Build Coastguard Worker    srcs: [
159*ec779b8eSAndroid Build Coastguard Worker        "omx/1.0/WOmx.cpp",
160*ec779b8eSAndroid Build Coastguard Worker    ],
161*ec779b8eSAndroid Build Coastguard Worker
162*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: [
163*ec779b8eSAndroid Build Coastguard Worker        "include",
164*ec779b8eSAndroid Build Coastguard Worker    ],
165*ec779b8eSAndroid Build Coastguard Worker
166*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
167*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
168*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
169*ec779b8eSAndroid Build Coastguard Worker        "libgui",
170*ec779b8eSAndroid Build Coastguard Worker        "libhidlbase",
171*ec779b8eSAndroid Build Coastguard Worker        "liblog",
172*ec779b8eSAndroid Build Coastguard Worker        "libmedia_omx",
173*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
174*ec779b8eSAndroid Build Coastguard Worker        "libui",
175*ec779b8eSAndroid Build Coastguard Worker        "libutils",
176*ec779b8eSAndroid Build Coastguard Worker    ],
177*ec779b8eSAndroid Build Coastguard Worker
178*ec779b8eSAndroid Build Coastguard Worker    export_shared_lib_headers: [
179*ec779b8eSAndroid Build Coastguard Worker        "libgui",
180*ec779b8eSAndroid Build Coastguard Worker        "libmedia_omx",
181*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
182*ec779b8eSAndroid Build Coastguard Worker        "libui",
183*ec779b8eSAndroid Build Coastguard Worker    ],
184*ec779b8eSAndroid Build Coastguard Worker
185*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
186*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
187*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
188*ec779b8eSAndroid Build Coastguard Worker    ],
189*ec779b8eSAndroid Build Coastguard Worker
190*ec779b8eSAndroid Build Coastguard Worker    export_header_lib_headers: [
191*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
192*ec779b8eSAndroid Build Coastguard Worker        "media_plugin_headers",
193*ec779b8eSAndroid Build Coastguard Worker    ],
194*ec779b8eSAndroid Build Coastguard Worker
195*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: [
196*ec779b8eSAndroid Build Coastguard Worker        "include",
197*ec779b8eSAndroid Build Coastguard Worker    ],
198*ec779b8eSAndroid Build Coastguard Worker
199*ec779b8eSAndroid Build Coastguard Worker    cflags: [
200*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
201*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
202*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
203*ec779b8eSAndroid Build Coastguard Worker    ],
204*ec779b8eSAndroid Build Coastguard Worker
205*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
206*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
207*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
208*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
209*ec779b8eSAndroid Build Coastguard Worker        ],
210*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
211*ec779b8eSAndroid Build Coastguard Worker    },
212*ec779b8eSAndroid Build Coastguard Worker}
213*ec779b8eSAndroid Build Coastguard Worker
214*ec779b8eSAndroid Build Coastguard Workercc_library_static {
215*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_midiiowrapper",
216*ec779b8eSAndroid Build Coastguard Worker
217*ec779b8eSAndroid Build Coastguard Worker    min_sdk_version: "29",
218*ec779b8eSAndroid Build Coastguard Worker    apex_available: [
219*ec779b8eSAndroid Build Coastguard Worker        "//apex_available:platform",
220*ec779b8eSAndroid Build Coastguard Worker        "com.android.media",
221*ec779b8eSAndroid Build Coastguard Worker    ],
222*ec779b8eSAndroid Build Coastguard Worker
223*ec779b8eSAndroid Build Coastguard Worker    srcs: ["MidiIoWrapper.cpp"],
224*ec779b8eSAndroid Build Coastguard Worker
225*ec779b8eSAndroid Build Coastguard Worker    static_libs: [
226*ec779b8eSAndroid Build Coastguard Worker        "libsonivoxwithoutjet",
227*ec779b8eSAndroid Build Coastguard Worker    ],
228*ec779b8eSAndroid Build Coastguard Worker
229*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
230*ec779b8eSAndroid Build Coastguard Worker        "libmedia_datasource_headers",
231*ec779b8eSAndroid Build Coastguard Worker        "media_ndk_headers",
232*ec779b8eSAndroid Build Coastguard Worker    ],
233*ec779b8eSAndroid Build Coastguard Worker
234*ec779b8eSAndroid Build Coastguard Worker    cflags: [
235*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
236*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
237*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
238*ec779b8eSAndroid Build Coastguard Worker    ],
239*ec779b8eSAndroid Build Coastguard Worker
240*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
241*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
242*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
243*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
244*ec779b8eSAndroid Build Coastguard Worker        ],
245*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
246*ec779b8eSAndroid Build Coastguard Worker    },
247*ec779b8eSAndroid Build Coastguard Worker
248*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
249*ec779b8eSAndroid Build Coastguard Worker
250*ec779b8eSAndroid Build Coastguard Worker    target: {
251*ec779b8eSAndroid Build Coastguard Worker        darwin: {
252*ec779b8eSAndroid Build Coastguard Worker            enabled: false,
253*ec779b8eSAndroid Build Coastguard Worker        },
254*ec779b8eSAndroid Build Coastguard Worker    },
255*ec779b8eSAndroid Build Coastguard Worker}
256*ec779b8eSAndroid Build Coastguard Worker
257*ec779b8eSAndroid Build Coastguard Workercc_library_shared {
258*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_codeclist_capabilities",
259*ec779b8eSAndroid Build Coastguard Worker
260*ec779b8eSAndroid Build Coastguard Worker    srcs: [
261*ec779b8eSAndroid Build Coastguard Worker        "AudioCapabilities.cpp",
262*ec779b8eSAndroid Build Coastguard Worker        "CodecCapabilities.cpp",
263*ec779b8eSAndroid Build Coastguard Worker        "EncoderCapabilities.cpp",
264*ec779b8eSAndroid Build Coastguard Worker        "VideoCapabilities.cpp",
265*ec779b8eSAndroid Build Coastguard Worker        "CodecCapabilitiesUtils.cpp",
266*ec779b8eSAndroid Build Coastguard Worker    ],
267*ec779b8eSAndroid Build Coastguard Worker
268*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: [
269*ec779b8eSAndroid Build Coastguard Worker        "include",
270*ec779b8eSAndroid Build Coastguard Worker    ],
271*ec779b8eSAndroid Build Coastguard Worker
272*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
273*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
274*ec779b8eSAndroid Build Coastguard Worker        "liblog",
275*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
276*ec779b8eSAndroid Build Coastguard Worker        "libutils",
277*ec779b8eSAndroid Build Coastguard Worker    ],
278*ec779b8eSAndroid Build Coastguard Worker
279*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: [
280*ec779b8eSAndroid Build Coastguard Worker        "include",
281*ec779b8eSAndroid Build Coastguard Worker    ],
282*ec779b8eSAndroid Build Coastguard Worker
283*ec779b8eSAndroid Build Coastguard Worker    cflags: [
284*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
285*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
286*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
287*ec779b8eSAndroid Build Coastguard Worker    ],
288*ec779b8eSAndroid Build Coastguard Worker
289*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
290*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
291*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
292*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
293*ec779b8eSAndroid Build Coastguard Worker        ],
294*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
295*ec779b8eSAndroid Build Coastguard Worker    },
296*ec779b8eSAndroid Build Coastguard Worker}
297*ec779b8eSAndroid Build Coastguard Worker
298*ec779b8eSAndroid Build Coastguard Workercc_library_shared {
299*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_codeclist",
300*ec779b8eSAndroid Build Coastguard Worker
301*ec779b8eSAndroid Build Coastguard Worker    srcs: [
302*ec779b8eSAndroid Build Coastguard Worker        "IMediaCodecList.cpp",
303*ec779b8eSAndroid Build Coastguard Worker        "MediaCodecInfo.cpp",
304*ec779b8eSAndroid Build Coastguard Worker    ],
305*ec779b8eSAndroid Build Coastguard Worker
306*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: [
307*ec779b8eSAndroid Build Coastguard Worker        "include",
308*ec779b8eSAndroid Build Coastguard Worker    ],
309*ec779b8eSAndroid Build Coastguard Worker
310*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
311*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
312*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
313*ec779b8eSAndroid Build Coastguard Worker        "liblog",
314*ec779b8eSAndroid Build Coastguard Worker        "libmedia_codeclist_capabilities",
315*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
316*ec779b8eSAndroid Build Coastguard Worker        "libutils",
317*ec779b8eSAndroid Build Coastguard Worker    ],
318*ec779b8eSAndroid Build Coastguard Worker
319*ec779b8eSAndroid Build Coastguard Worker    static_libs: [
320*ec779b8eSAndroid Build Coastguard Worker        "android.media.codec-aconfig-cc",
321*ec779b8eSAndroid Build Coastguard Worker    ],
322*ec779b8eSAndroid Build Coastguard Worker
323*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: [
324*ec779b8eSAndroid Build Coastguard Worker        "include",
325*ec779b8eSAndroid Build Coastguard Worker    ],
326*ec779b8eSAndroid Build Coastguard Worker
327*ec779b8eSAndroid Build Coastguard Worker    cflags: [
328*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
329*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
330*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
331*ec779b8eSAndroid Build Coastguard Worker    ],
332*ec779b8eSAndroid Build Coastguard Worker
333*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
334*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
335*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
336*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
337*ec779b8eSAndroid Build Coastguard Worker        ],
338*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
339*ec779b8eSAndroid Build Coastguard Worker    },
340*ec779b8eSAndroid Build Coastguard Worker}
341*ec779b8eSAndroid Build Coastguard Worker
342*ec779b8eSAndroid Build Coastguard Workercc_library {
343*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia",
344*ec779b8eSAndroid Build Coastguard Worker
345*ec779b8eSAndroid Build Coastguard Worker    defaults: [
346*ec779b8eSAndroid Build Coastguard Worker        "latest_android_media_audio_common_types_cpp_shared",
347*ec779b8eSAndroid Build Coastguard Worker    ],
348*ec779b8eSAndroid Build Coastguard Worker
349*ec779b8eSAndroid Build Coastguard Worker    srcs: [
350*ec779b8eSAndroid Build Coastguard Worker        ":mediaextractorservice_aidl",
351*ec779b8eSAndroid Build Coastguard Worker        "BufferingSettings.cpp",
352*ec779b8eSAndroid Build Coastguard Worker        "CharacterEncodingDetector.cpp",
353*ec779b8eSAndroid Build Coastguard Worker        "IDataSource.cpp",
354*ec779b8eSAndroid Build Coastguard Worker        "IMediaDeathNotifier.cpp",
355*ec779b8eSAndroid Build Coastguard Worker        "IMediaExtractor.cpp",
356*ec779b8eSAndroid Build Coastguard Worker        "IMediaHTTPConnection.cpp",
357*ec779b8eSAndroid Build Coastguard Worker        "IMediaHTTPService.cpp",
358*ec779b8eSAndroid Build Coastguard Worker        "IMediaMetadataRetriever.cpp",
359*ec779b8eSAndroid Build Coastguard Worker        "IMediaPlayer.cpp",
360*ec779b8eSAndroid Build Coastguard Worker        "IMediaPlayerClient.cpp",
361*ec779b8eSAndroid Build Coastguard Worker        "IMediaPlayerService.cpp",
362*ec779b8eSAndroid Build Coastguard Worker        "IMediaRecorder.cpp",
363*ec779b8eSAndroid Build Coastguard Worker        "IMediaRecorderClient.cpp",
364*ec779b8eSAndroid Build Coastguard Worker        "IMediaSource.cpp",
365*ec779b8eSAndroid Build Coastguard Worker        "IRemoteDisplay.cpp",
366*ec779b8eSAndroid Build Coastguard Worker        "IRemoteDisplayClient.cpp",
367*ec779b8eSAndroid Build Coastguard Worker        "IStreamSource.cpp",
368*ec779b8eSAndroid Build Coastguard Worker        "MediaProfiles.cpp",
369*ec779b8eSAndroid Build Coastguard Worker        "MediaResource.cpp",
370*ec779b8eSAndroid Build Coastguard Worker        "MediaResourcePolicy.cpp",
371*ec779b8eSAndroid Build Coastguard Worker        "MediaScanner.cpp",
372*ec779b8eSAndroid Build Coastguard Worker        "MediaScannerClient.cpp",
373*ec779b8eSAndroid Build Coastguard Worker        "Metadata.cpp",
374*ec779b8eSAndroid Build Coastguard Worker        "NdkMediaErrorPriv.cpp",
375*ec779b8eSAndroid Build Coastguard Worker        "NdkMediaFormatPriv.cpp",
376*ec779b8eSAndroid Build Coastguard Worker        "StringArray.cpp",
377*ec779b8eSAndroid Build Coastguard Worker        "mediametadataretriever.cpp",
378*ec779b8eSAndroid Build Coastguard Worker        "mediaplayer.cpp",
379*ec779b8eSAndroid Build Coastguard Worker        "mediarecorder.cpp",
380*ec779b8eSAndroid Build Coastguard Worker    ],
381*ec779b8eSAndroid Build Coastguard Worker
382*ec779b8eSAndroid Build Coastguard Worker    aidl: {
383*ec779b8eSAndroid Build Coastguard Worker        local_include_dirs: ["aidl"],
384*ec779b8eSAndroid Build Coastguard Worker        export_aidl_headers: true,
385*ec779b8eSAndroid Build Coastguard Worker    },
386*ec779b8eSAndroid Build Coastguard Worker
387*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
388*ec779b8eSAndroid Build Coastguard Worker        "jni_headers",
389*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
390*ec779b8eSAndroid Build Coastguard Worker        "media_ndk_headers",
391*ec779b8eSAndroid Build Coastguard Worker    ],
392*ec779b8eSAndroid Build Coastguard Worker
393*ec779b8eSAndroid Build Coastguard Worker    export_header_lib_headers: [
394*ec779b8eSAndroid Build Coastguard Worker        "jni_headers",
395*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
396*ec779b8eSAndroid Build Coastguard Worker        "media_ndk_headers",
397*ec779b8eSAndroid Build Coastguard Worker    ],
398*ec779b8eSAndroid Build Coastguard Worker
399*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
400*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
401*ec779b8eSAndroid Build Coastguard Worker        "audioclient-types-aidl-cpp",
402*ec779b8eSAndroid Build Coastguard Worker        "av-types-aidl-cpp",
403*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
404*ec779b8eSAndroid Build Coastguard Worker        "libbinder_ndk",
405*ec779b8eSAndroid Build Coastguard Worker        //"libsonivox",
406*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
407*ec779b8eSAndroid Build Coastguard Worker        "liblog",
408*ec779b8eSAndroid Build Coastguard Worker        "libutils",
409*ec779b8eSAndroid Build Coastguard Worker        "framework-permission-aidl-cpp",
410*ec779b8eSAndroid Build Coastguard Worker        "libandroidicu",
411*ec779b8eSAndroid Build Coastguard Worker        "libaudioclient",
412*ec779b8eSAndroid Build Coastguard Worker        "libaudiofoundation",
413*ec779b8eSAndroid Build Coastguard Worker        "libcamera_client",
414*ec779b8eSAndroid Build Coastguard Worker        "libdl",
415*ec779b8eSAndroid Build Coastguard Worker        "libexpat",
416*ec779b8eSAndroid Build Coastguard Worker        "libgui",
417*ec779b8eSAndroid Build Coastguard Worker        "libmedia_codeclist",
418*ec779b8eSAndroid Build Coastguard Worker        "libmedia_omx",
419*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation",
420*ec779b8eSAndroid Build Coastguard Worker    ],
421*ec779b8eSAndroid Build Coastguard Worker
422*ec779b8eSAndroid Build Coastguard Worker    export_shared_lib_headers: [
423*ec779b8eSAndroid Build Coastguard Worker        "libaudioclient",
424*ec779b8eSAndroid Build Coastguard Worker        "libaudiofoundation",
425*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
426*ec779b8eSAndroid Build Coastguard Worker        //"libsonivox",
427*ec779b8eSAndroid Build Coastguard Worker        "framework-permission-aidl-cpp",
428*ec779b8eSAndroid Build Coastguard Worker        "libmedia_omx",
429*ec779b8eSAndroid Build Coastguard Worker    ],
430*ec779b8eSAndroid Build Coastguard Worker
431*ec779b8eSAndroid Build Coastguard Worker    static_libs: [
432*ec779b8eSAndroid Build Coastguard Worker        "framework-permission-aidl-cpp",
433*ec779b8eSAndroid Build Coastguard Worker        "resourcemanager_aidl_interface-ndk",
434*ec779b8eSAndroid Build Coastguard Worker    ],
435*ec779b8eSAndroid Build Coastguard Worker
436*ec779b8eSAndroid Build Coastguard Worker    export_static_lib_headers: [
437*ec779b8eSAndroid Build Coastguard Worker        "framework-permission-aidl-cpp",
438*ec779b8eSAndroid Build Coastguard Worker        "resourcemanager_aidl_interface-ndk",
439*ec779b8eSAndroid Build Coastguard Worker    ],
440*ec779b8eSAndroid Build Coastguard Worker
441*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: [
442*ec779b8eSAndroid Build Coastguard Worker        "include",
443*ec779b8eSAndroid Build Coastguard Worker    ],
444*ec779b8eSAndroid Build Coastguard Worker
445*ec779b8eSAndroid Build Coastguard Worker    cflags: [
446*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
447*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
448*ec779b8eSAndroid Build Coastguard Worker        "-Wno-error=deprecated-declarations",
449*ec779b8eSAndroid Build Coastguard Worker    ],
450*ec779b8eSAndroid Build Coastguard Worker
451*ec779b8eSAndroid Build Coastguard Worker    version_script: "exports.lds",
452*ec779b8eSAndroid Build Coastguard Worker
453*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
454*ec779b8eSAndroid Build Coastguard Worker        misc_undefined: [
455*ec779b8eSAndroid Build Coastguard Worker            "signed-integer-overflow",
456*ec779b8eSAndroid Build Coastguard Worker            "unsigned-integer-overflow",
457*ec779b8eSAndroid Build Coastguard Worker        ],
458*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
459*ec779b8eSAndroid Build Coastguard Worker    },
460*ec779b8eSAndroid Build Coastguard Worker}
461*ec779b8eSAndroid Build Coastguard Worker
462*ec779b8eSAndroid Build Coastguard Workercc_library_static {
463*ec779b8eSAndroid Build Coastguard Worker    name: "libmedia_ndkformatpriv",
464*ec779b8eSAndroid Build Coastguard Worker
465*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
466*ec779b8eSAndroid Build Coastguard Worker
467*ec779b8eSAndroid Build Coastguard Worker    srcs: [
468*ec779b8eSAndroid Build Coastguard Worker        "NdkMediaErrorPriv.cpp",
469*ec779b8eSAndroid Build Coastguard Worker        "NdkMediaFormatPriv.cpp",
470*ec779b8eSAndroid Build Coastguard Worker    ],
471*ec779b8eSAndroid Build Coastguard Worker
472*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
473*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_foundation_headers",
474*ec779b8eSAndroid Build Coastguard Worker        "libstagefright_headers",
475*ec779b8eSAndroid Build Coastguard Worker        "media_ndk_headers",
476*ec779b8eSAndroid Build Coastguard Worker    ],
477*ec779b8eSAndroid Build Coastguard Worker
478*ec779b8eSAndroid Build Coastguard Worker    cflags: [
479*ec779b8eSAndroid Build Coastguard Worker        "-DEXPORT=__attribute__((visibility(\"default\")))",
480*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
481*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
482*ec779b8eSAndroid Build Coastguard Worker    ],
483*ec779b8eSAndroid Build Coastguard Worker
484*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
485*ec779b8eSAndroid Build Coastguard Worker
486*ec779b8eSAndroid Build Coastguard Worker    target: {
487*ec779b8eSAndroid Build Coastguard Worker        darwin: {
488*ec779b8eSAndroid Build Coastguard Worker            enabled: false,
489*ec779b8eSAndroid Build Coastguard Worker        },
490*ec779b8eSAndroid Build Coastguard Worker    },
491*ec779b8eSAndroid Build Coastguard Worker
492*ec779b8eSAndroid Build Coastguard Worker    apex_available: [
493*ec779b8eSAndroid Build Coastguard Worker        "//apex_available:platform",
494*ec779b8eSAndroid Build Coastguard Worker        "com.android.media",
495*ec779b8eSAndroid Build Coastguard Worker    ],
496*ec779b8eSAndroid Build Coastguard Worker}
497