blob: 8c7f8db34866f046f20c1661ae21102d68d91281 [file] [log] [blame]
Pawin Vongmasa36653902018-11-15 00:10:25 -08001// DO NOT DEPEND ON THIS DIRECTLY
Pawin Vongmasad0f0e142018-11-15 03:36:28 -08002// use libcodec2_soft-defaults instead
Bob Badour56786ac2021-02-25 15:24:36 -08003package {
4 // See: http://go/android-license-faq
5 // A large-scale-change added 'default_applicable_licenses' to import
6 // all of the 'license_kinds' from "frameworks_av_license"
7 // to get the below license kinds:
8 // SPDX-license-identifier-Apache-2.0
9 default_applicable_licenses: ["frameworks_av_license"],
10}
11
Ray Essick4dfd2f32022-03-07 11:40:28 -080012cc_library_headers {
13 name: "libcodec2_soft_common_headers",
14 defaults: ["libcodec2-impl-defaults"],
15 vendor_available: true,
16
17 export_include_dirs: [
18 "include",
19 ],
20}
21
S Vasudev Prasadee173172020-11-23 12:17:14 +053022cc_library {
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080023 name: "libcodec2_soft_common",
24 defaults: ["libcodec2-impl-defaults"],
Pawin Vongmasa36653902018-11-15 00:10:25 -080025 vendor_available: true,
26
27 srcs: [
28 "SimpleC2Component.cpp",
29 "SimpleC2Interface.cpp",
30 ],
31
32 export_include_dirs: [
33 "include",
34 ],
35
36 export_shared_lib_headers: [
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080037 "libsfplugin_ccodec_utils",
Pawin Vongmasa36653902018-11-15 00:10:25 -080038 ],
39
40 shared_libs: [
41 "libcutils", // for properties
Cindy Zhou544fc2b2020-12-03 06:24:18 -080042 "liblog", // for ALOG
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080043 "libsfplugin_ccodec_utils", // for ImageCopy
Pawin Vongmasa36653902018-11-15 00:10:25 -080044 "libstagefright_foundation", // for Mutexed
45 ],
46
Ray Essickef519d72022-01-30 19:34:35 -080047 min_sdk_version: "29",
48 apex_available: [
49 "//apex_available:platform",
50 "com.android.media.swcodec",
51 ],
52
Pawin Vongmasa36653902018-11-15 00:10:25 -080053 sanitize: {
54 misc_undefined: [
55 "unsigned-integer-overflow",
56 "signed-integer-overflow",
57 ],
58 cfi: true,
Pawin Vongmasa36653902018-11-15 00:10:25 -080059 },
60
61 ldflags: ["-Wl,-Bsymbolic"],
62}
63
Harish Mahendrakarc76cdae2019-03-12 10:56:36 -070064filegroup {
65 name: "codec2_soft_exports",
Cindy Zhou544fc2b2020-12-03 06:24:18 -080066 srcs: ["exports.lds"],
Harish Mahendrakarc76cdae2019-03-12 10:56:36 -070067}
68
Pawin Vongmasa36653902018-11-15 00:10:25 -080069// public dependency for software codec implementation
70// to be used by code under media/codecs/* only as its stability is not guaranteed
71cc_defaults {
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080072 name: "libcodec2_soft-defaults",
73 defaults: ["libcodec2-impl-defaults"],
Pawin Vongmasa36653902018-11-15 00:10:25 -080074 vendor_available: true,
Harish Mahendrakarc76cdae2019-03-12 10:56:36 -070075 version_script: ":codec2_soft_exports",
Pawin Vongmasa36653902018-11-15 00:10:25 -080076 export_shared_lib_headers: [
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080077 "libsfplugin_ccodec_utils",
Pawin Vongmasa36653902018-11-15 00:10:25 -080078 ],
79
80 shared_libs: [
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080081 "libcodec2_soft_common",
Pawin Vongmasa36653902018-11-15 00:10:25 -080082 "libcutils", // for properties
83 "liblog", // for ALOG
Pawin Vongmasad0f0e142018-11-15 03:36:28 -080084 "libsfplugin_ccodec_utils", // for ImageCopy
Pawin Vongmasa36653902018-11-15 00:10:25 -080085 "libstagefright_foundation", // for ColorUtils and MIME
Pawin Vongmasa36653902018-11-15 00:10:25 -080086 ],
87
88 cflags: [
89 "-Wall",
90 "-Werror",
91 ],
92
93 ldflags: ["-Wl,-Bsymbolic"],
Ray Essickef519d72022-01-30 19:34:35 -080094
95 min_sdk_version: "29",
96 apex_available: [
97 "//apex_available:platform",
98 "com.android.media.swcodec",
99 ],
Pawin Vongmasa36653902018-11-15 00:10:25 -0800100}
101
102// public dependency for software codec implementation
103// to be used by code under media/codecs/* only
104cc_defaults {
Pawin Vongmasad0f0e142018-11-15 03:36:28 -0800105 name: "libcodec2_soft_sanitize_all-defaults",
Pawin Vongmasa36653902018-11-15 00:10:25 -0800106
107 sanitize: {
108 misc_undefined: [
109 "unsigned-integer-overflow",
110 "signed-integer-overflow",
111 ],
112 cfi: true,
Pawin Vongmasa36653902018-11-15 00:10:25 -0800113 },
114}
115
116// public dependency for software codec implementation
117// to be used by code under media/codecs/* only
118cc_defaults {
Pawin Vongmasad0f0e142018-11-15 03:36:28 -0800119 name: "libcodec2_soft_sanitize_signed-defaults",
Pawin Vongmasa36653902018-11-15 00:10:25 -0800120
121 sanitize: {
122 misc_undefined: [
123 "signed-integer-overflow",
124 ],
Cindy Zhou544fc2b2020-12-03 06:24:18 -0800125 },
126}
127
128cc_defaults {
129 name: "libcodec2_soft_sanitize_cfi-defaults",
130
131 sanitize: {
Pawin Vongmasa36653902018-11-15 00:10:25 -0800132 cfi: true,
Cindy Zhou544fc2b2020-12-03 06:24:18 -0800133 config: {
134 cfi_assembly_support: true,
135 },
Pawin Vongmasa36653902018-11-15 00:10:25 -0800136 },
137}
138
139// TEMP: used by cheets2 project - remove when no longer used
S Vasudev Prasadee173172020-11-23 12:17:14 +0530140cc_library {
Pawin Vongmasad0f0e142018-11-15 03:36:28 -0800141 name: "libcodec2_simple_component",
Pawin Vongmasa36653902018-11-15 00:10:25 -0800142 vendor_available: true,
143
144 srcs: [
145 "SimpleC2Interface.cpp",
146 ],
147
148 local_include_dirs: [
149 "include",
150 ],
151
152 export_include_dirs: [
153 "include",
154 ],
155
156 shared_libs: [
Pawin Vongmasad0f0e142018-11-15 03:36:28 -0800157 "libcodec2",
158 "libcodec2_vndk",
Pawin Vongmasa36653902018-11-15 00:10:25 -0800159 "libcutils",
160 "liblog",
Pawin Vongmasa36653902018-11-15 00:10:25 -0800161 "libstagefright_foundation",
162 "libutils",
163 ],
164
165 sanitize: {
166 misc_undefined: [
167 "unsigned-integer-overflow",
168 "signed-integer-overflow",
169 ],
170 cfi: true,
Pawin Vongmasa36653902018-11-15 00:10:25 -0800171 },
172
173 ldflags: ["-Wl,-Bsymbolic"],
174}