xref: /aosp_15_r20/frameworks/av/media/codec2/hal/client/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1package {
2    // See: http://go/android-license-faq
3    // A large-scale-change added 'default_applicable_licenses' to import
4    // all of the 'license_kinds' from "frameworks_av_license"
5    // to get the below license kinds:
6    //   SPDX-license-identifier-Apache-2.0
7    default_applicable_licenses: ["frameworks_av_license"],
8}
9
10cc_library_headers {
11    name: "libcodec2_client_headers",
12    export_include_dirs: ["include"],
13    min_sdk_version: "29",
14    host_supported: true,
15    target: {
16        darwin: {
17            enabled: false,
18        },
19    },
20}
21
22cc_library {
23    name: "libcodec2_client",
24
25    srcs: [
26        "ApexCodecsLazy.cpp",
27        "GraphicBufferAllocator.cpp",
28        "GraphicsTracker.cpp",
29        "client.cpp",
30        "output.cpp",
31    ],
32
33    defaults: [
34        "libcodec2-aidl-client-defaults",
35    ],
36
37    // http://b/343951602#comment4 Explicitly set cpp_std to gnu++20.  The
38    // default inherited from libcodec2-impl-defaults sets it to gnu++17 which
39    // causes a segfault when mixing global std::string symbols built with
40    // gnu++17 and gnu++20.  TODO(b/343951602): clean this after
41    // libcodec2-impl-defaults opt into gnu++17 is removed.
42    cpp_std: "gnu++20",
43
44    header_libs: [
45        "libapexcodecs-header",
46        "libcodec2_internal", // private
47    ],
48
49    shared_libs: [
50        "[email protected]",
51        "android.hardware.media.bufferpool2-V2-ndk",
52        "[email protected]",
53        "android.hardware.media.c2-V1-ndk",
54        "[email protected]",
55        "[email protected]",
56        "[email protected]",
57        "libbase",
58        "libbinder",
59        "libbinder_ndk",
60        "libcodec2",
61        "[email protected]",
62        "[email protected]",
63        "[email protected]",
64        "libcodec2_vndk",
65        "libcutils",
66        "libgui",
67        "libhidlbase",
68        "liblog",
69        "libnativewindow",
70        "libstagefright_aidl_bufferpool2",
71        "[email protected]",
72        "libui",
73        "libutils",
74    ],
75
76    static_libs: [
77        "libaidlcommonsupport",
78    ],
79
80    export_include_dirs: [
81        "include",
82    ],
83
84    export_header_lib_headers: [
85        "libapexcodecs-header",
86    ],
87
88    export_shared_lib_headers: [
89        "[email protected]",
90        "[email protected]",
91        "[email protected]",
92        "libcodec2",
93        "[email protected]",
94        "[email protected]",
95        "[email protected]",
96        "libcodec2_vndk",
97    ],
98}
99