xref: /aosp_15_r20/frameworks/av/media/codec2/hal/aidl/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1package {
2    default_applicable_licenses: ["frameworks_av_license"],
3}
4
5// DO NOT DEPEND ON THIS DIRECTLY
6// use libcodec2-aidl-client-defaults instead
7cc_library {
8    name: "libcodec2_aidl_client",
9
10    defaults: [
11        "aconfig_lib_cc_static_link.defaults",
12        "libcodec2_hal_selection",
13    ],
14
15    srcs: [
16        "BufferTypes.cpp",
17        "ParamTypes.cpp",
18    ],
19
20    header_libs: [
21        "libcodec2_internal", // private
22        "libgui_headers",
23    ],
24
25    shared_libs: [
26        "android.hardware.common-V2-ndk",
27        "[email protected]",
28        "android.hardware.media.bufferpool2-V2-ndk",
29        "android.hardware.media.c2-V1-ndk",
30        "libbinder_ndk",
31        "libbase",
32        "libcodec2",
33        "libcodec2_hal_common",
34        "libcodec2_vndk",
35        "libcutils",
36        "liblog",
37        "libnativewindow",
38        "libstagefright_aidl_bufferpool2",
39        "libutils",
40    ],
41
42    static_libs: [
43        "libaidlcommonsupport",
44    ],
45
46    export_include_dirs: [
47        "include",
48    ],
49
50    export_shared_lib_headers: [
51        "android.hardware.media.c2-V1-ndk",
52        "libcodec2",
53        "libcodec2_hal_common",
54    ],
55}
56
57// DO NOT DEPEND ON THIS DIRECTLY
58// use libcodec2-aidl-defaults instead
59cc_library {
60    name: "libcodec2_aidl",
61    min_sdk_version: "30",
62    vendor_available: true,
63    apex_available: [
64        "//apex_available:platform",
65        "com.android.media.swcodec",
66    ],
67
68    defaults: [
69        "aconfig_lib_cc_static_link.defaults",
70        "libcodec2_hal_selection",
71    ],
72
73    srcs: [
74        "BufferTypes.cpp",
75        "Component.cpp",
76        "ComponentInterface.cpp",
77        "ComponentStore.cpp",
78        "Configurable.cpp",
79        "InputBufferManager.cpp",
80        "ParamTypes.cpp",
81        "inputsurface/InputSurface.cpp",
82        "inputsurface/InputSurfaceConnection.cpp",
83    ],
84
85    header_libs: [
86        "libcodec2_internal", // private
87    ],
88
89    shared_libs: [
90        "android.hardware.common-V2-ndk",
91        "android.hardware.media.bufferpool2-V2-ndk",
92        "android.hardware.media.c2-V1-ndk",
93        "libbase",
94        "libbinder_ndk",
95        "libcodec2",
96        "libcodec2_hal_common",
97        "libcodec2_hidl_plugin_stub",
98        "libcodec2_vndk",
99        "libcutils",
100        "libhidlbase",
101        "liblog",
102        "libnativewindow",
103        "libmediandk",
104        "libstagefright_aidl_bufferpool2",
105        "[email protected]",
106        "libui",
107        "libutils",
108    ],
109
110    static_libs: [
111        "libaidlcommonsupport",
112    ],
113
114    target: {
115        vendor: {
116            exclude_shared_libs: [
117                "libcodec2_hidl_plugin_stub",
118            ],
119            shared_libs: [
120                "libcodec2_hidl_plugin",
121            ],
122        },
123        apex: {
124            exclude_shared_libs: [
125                "libcodec2_hidl_plugin_stub",
126                "libcodec2_hidl_plugin",
127            ],
128        },
129    },
130
131    export_include_dirs: [
132        "include",
133    ],
134
135    export_shared_lib_headers: [
136        "android.hardware.media.c2-V1-ndk",
137        "libcodec2",
138        "[email protected]",
139        "libui",
140    ],
141}
142
143// public dependency for Codec 2.0 HAL service implementations
144cc_defaults {
145    name: "libcodec2-aidl-defaults",
146    min_sdk_version: "30",
147    defaults: ["libcodec2-impl-defaults"],
148
149    shared_libs: [
150        "android.hardware.media.c2-V1-ndk",
151        "libbinder_ndk",
152        "libcodec2_aidl",
153    ],
154}
155
156// public dependency for Codec 2.0 HAL client
157cc_defaults {
158    name: "libcodec2-aidl-client-defaults",
159    defaults: ["libcodec2-impl-defaults"],
160
161    shared_libs: [
162        "android.hardware.media.c2-V1-ndk",
163        "libcodec2_aidl_client",
164    ],
165}
166
167cc_fuzz {
168    name: "libcodec2-aidl-fuzzer",
169    vendor: true,
170    srcs: [
171        "fuzzer.cpp",
172    ],
173    defaults: [
174        "libcodec2-aidl-defaults",
175        "service_fuzzer_defaults",
176        "libcodec2-runtime-libs",
177    ],
178    shared_libs: [
179        "libcodec2_vndk",
180    ],
181    fuzz_config: {
182        cc: [
183            "[email protected]",
184        ],
185        triage_assignee: "[email protected]",
186    },
187}
188