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: "libsfplugin_ccodec_internal_headers",
12    export_include_dirs: ["."],
13    // only for internal tests, perhaps restrict via visibility clause
14}
15
16cc_library_shared {
17    name: "libsfplugin_ccodec",
18
19    export_include_dirs: ["include"],
20
21    srcs: [
22        "C2AidlNode.cpp",
23        "C2OMXNode.cpp",
24        "C2NodeImpl.cpp",
25        "CCodec.cpp",
26        "CCodecBufferChannel.cpp",
27        "CCodecBuffers.cpp",
28        "CCodecConfig.cpp",
29        "Codec2Buffer.cpp",
30        "Codec2InfoBuilder.cpp",
31        "FrameReassembler.cpp",
32        "PipelineWatcher.cpp",
33        "ReflectedParamUpdater.cpp",
34    ],
35
36    cflags: [
37        "-Werror",
38        "-Wall",
39    ],
40
41    header_libs: [
42        "libcodec2_internal",
43        "libmediadrm_headers",
44        "libmediametrics_headers",
45        "media_ndk_headers",
46    ],
47
48    static_libs: [
49        "libSurfaceFlingerProperties",
50        "aconfig_mediacodec_flags_c_lib",
51        "android.media.codec-aconfig-cc",
52    ],
53
54    shared_libs: [
55        "android.hardware.cas.native@1.0",
56        "android.hardware.drm@1.0",
57        "android.hardware.media.c2@1.0",
58        "android.hardware.media.omx@1.0",
59        "android.hardware.graphics.common-V5-ndk",
60        "graphicbuffersource-aidl-ndk",
61        "libbase",
62        "libbinder",
63        "libbinder_ndk",
64        "libcodec2",
65        "libcodec2_client",
66        "libcodec2_vndk",
67        "libcutils",
68        "libgralloctypes",
69        "libgui",
70        "libhidlallocatorutils",
71        "libhidlbase",
72        "liblog",
73        "libmedia_codeclist",
74        "libmedia_omx",
75        "libnativewindow",
76        "libsfplugin_ccodec_utils",
77        "libstagefright_bufferqueue_helper",
78        "libstagefright_codecbase",
79        "libstagefright_graphicbuffersource_aidl",
80        "libstagefright_foundation",
81        "libstagefright_omx",
82        "libstagefright_surface_utils",
83        "libstagefright_xmlparser",
84        "libui",
85        "libutils",
86        "server_configurable_flags",
87        "libaconfig_storage_read_api_cc",
88    ],
89
90    export_shared_lib_headers: [
91        "libcodec2",
92        "libcodec2_client",
93    ],
94
95    sanitize: {
96        cfi: true,
97        misc_undefined: [
98            "unsigned-integer-overflow",
99            "signed-integer-overflow",
100        ],
101    },
102}
103