summaryrefslogtreecommitdiffstats
path: root/media/codec2/vndk/Android.bp
blob: 52cc7adf236a0be48bed2a72c8d7d6be0d1d4eb8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
cc_library_headers {
    name: "libcodec2_internal",

    export_include_dirs: [
        "internal",
    ],

    // TODO: Remove this when this module is moved back to frameworks/av.
    vendor_available: true,
}

// !!!DO NOT DEPEND ON THIS SHARED LIBRARY DIRECTLY!!!
// use libcodec2-impl-defaults instead
cc_library_shared {
    name: "libcodec2_vndk",
    vendor_available: true,

    srcs: [
        "C2AllocatorIon.cpp",
        "C2AllocatorGralloc.cpp",
        "C2Buffer.cpp",
        "C2Config.cpp",
        "C2PlatformStorePluginLoader.cpp",
        "C2Store.cpp",
        "platform/C2BqBuffer.cpp",
        "types.cpp",
        "util/C2Debug.cpp",
        "util/C2InterfaceHelper.cpp",
        "util/C2InterfaceUtils.cpp",
        "util/C2ParamUtils.cpp",
    ],

    export_include_dirs: [
        "include",
    ],

    export_shared_lib_headers: [
        "libbase",
        "android.hardware.media.bufferpool@2.0",
    ],

    local_include_dirs: [
        "internal",
    ],

    header_libs: [
        "media_plugin_headers",
        "libcodec2_headers",
    ],

    shared_libs: [
        "android.hardware.graphics.allocator@2.0",
        "android.hardware.graphics.allocator@3.0",
        "android.hardware.graphics.bufferqueue@2.0",
        "android.hardware.graphics.mapper@2.0",
        "android.hardware.graphics.mapper@3.0",
        "android.hardware.media.bufferpool@2.0",
        "libbase",
        "libbinder",
        "libcutils",
        "libdl",
        "libhardware",
        "libhidlbase",
        "libion",
        "libfmq",
        "liblog",
        "libnativewindow",
        "libstagefright_foundation",
        "libstagefright_bufferpool@2.0.1",
        "libui",
        "libutils",
    ],

    cflags: [
        "-Werror",
        "-Wall",
    ],
}

// public dependency for implementing Codec 2 components
cc_defaults {
    name: "libcodec2-impl-defaults",

    shared_libs: [
        "libbase", // for C2_LOG
        "liblog", // for ALOG
        "libcodec2",
        "libcodec2_vndk",
        "libutils",
    ],
}

// public dependency for implementing Codec 2 framework utilities
// THIS IS ONLY FOR FRAMEWORK USE ONLY
cc_defaults {
    name: "libcodec2-internal-defaults",
    defaults: ["libcodec2-impl-defaults"],

    shared_libs: [
        "libcutils", // for properties
    ],

    // TODO: separate internal headers so they can be exposed here
}