blob: 8ed278fdb5983f501a6385f6e9e39ca591a03fdd [file] [log] [blame]
Harish Mahendrakar17641392019-06-14 14:45:41 -07001cc_library {
Colin Crossfcddc562017-04-26 14:12:48 -07002 name: "libvpx",
Johanndf371112018-01-16 14:31:39 -08003 vendor_available: true,
Jorge Moreira Brochebded9f12020-01-02 18:45:22 +00004 host_supported: true,
Harish Mahendrakar2356f9b2019-05-10 19:27:31 -07005 version_script: "exports.lds",
Colin Crossfcddc562017-04-26 14:12:48 -07006
Jorge Moreira Brochebded9f12020-01-02 18:45:22 +00007 target: {
8 darwin: {
9 enabled: false,
10 },
11 },
12
Colin Crossfcddc562017-04-26 14:12:48 -070013 arch: {
Johann9d86dd82019-01-18 09:13:56 -080014 // configured to require the neon unit
Colin Crossfcddc562017-04-26 14:12:48 -070015 arm: {
Colin Crossfcddc562017-04-26 14:12:48 -070016 neon: {
Johann9d86dd82019-01-18 09:13:56 -080017 // Want arm, not thumb, optimized
18 instruction_set: "arm",
19
Dan Willemsenfac59912018-10-05 14:54:21 -070020 srcs: libvpx_arm_neon_c_srcs + libvpx_arm_neon_asm_srcs,
Colin Crossfcddc562017-04-26 14:12:48 -070021 local_include_dirs: ["config/arm-neon"],
22 },
23 },
24
25 arm64: {
26 srcs: libvpx_arm64_c_srcs,
27 local_include_dirs: ["config/arm64"],
28 },
29
Colin Crossfcddc562017-04-26 14:12:48 -070030 x86: {
31 srcs: libvpx_x86_c_srcs + libvpx_x86_asm_srcs,
32 local_include_dirs: ["config/x86"],
Jorge Moreira Brochebded9f12020-01-02 18:45:22 +000033 cflags: [
34 "-mssse3",
35 ],
Colin Crossfcddc562017-04-26 14:12:48 -070036 },
37
38 x86_64: {
Johann57b15122019-01-29 14:24:45 -080039 srcs: libvpx_x86_64_c_srcs + libvpx_x86_64_asm_srcs,
40 local_include_dirs: ["config/x86_64"],
Jorge Moreira Brochebded9f12020-01-02 18:45:22 +000041 cflags: [
42 "-mssse3",
43 ],
Colin Crossfcddc562017-04-26 14:12:48 -070044 },
45 },
46
47 cflags: [
48 "-O3",
49 "-Wno-unused-parameter",
50 ],
51
52 export_include_dirs: ["libvpx"],
53
54 sanitize: {
Johann9c8a1ae2019-01-16 10:31:45 -080055 integer_overflow: true,
56 misc_undefined: ["bounds"],
57 // Enable CFI if this becomes a shared library.
58 // cfi: true,
Pirama Arumuga Nainare43bab52020-07-28 14:36:17 -070059 blocklist: "libvpx_blocklist.txt",
Colin Crossfcddc562017-04-26 14:12:48 -070060 },
61}
Harish Mahendrakaref01cf02019-09-05 17:10:26 -070062
63cc_fuzz {
64 name: "vp9_dec_fuzzer",
65 host_supported: true,
66 srcs: [
67 "libvpx/examples/vpx_dec_fuzzer.cc",
68 ],
69 target: {
70 darwin: {
71 enabled: false,
72 },
73 },
74 arch: {
75 arm: {
76 neon: {
77 local_include_dirs: ["config/arm-neon"],
78 },
79 },
80
81 arm64: {
82 local_include_dirs: ["config/arm64"],
83 },
84
85 x86: {
86 local_include_dirs: ["config/x86"],
87 },
88
89 x86_64: {
90 local_include_dirs: ["config/x86_64"],
91 },
92 },
93 cflags: ["-DDECODER=vp9"],
94 static_libs: [
95 "libvpx",
96 ],
97}
98
99cc_fuzz {
100 name: "vp8_dec_fuzzer",
101 host_supported: true,
102 srcs: [
103 "libvpx/examples/vpx_dec_fuzzer.cc",
104 ],
105 target: {
106 darwin: {
107 enabled: false,
108 },
109 },
110 arch: {
111 arm: {
112 neon: {
113 local_include_dirs: ["config/arm-neon"],
114 },
115 },
116
117 arm64: {
118 local_include_dirs: ["config/arm64"],
119 },
120
121 x86: {
122 local_include_dirs: ["config/x86"],
123 },
124
125 x86_64: {
126 local_include_dirs: ["config/x86_64"],
127 },
128 },
129
130 cflags: ["-DDECODER=vp8"],
131 static_libs: [
132 "libvpx",
133 ],
134}