• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1cc_library {
2    name: "libvpx",
3    vendor_available: true,
4    host_supported: true,
5    version_script: "exports.lds",
6
7    target: {
8        darwin: {
9            enabled: false,
10        },
11    },
12
13    arch: {
14        // configured to require the neon unit
15        arm: {
16            neon: {
17                // Want arm, not thumb, optimized
18                instruction_set: "arm",
19
20                srcs: libvpx_arm_neon_c_srcs + libvpx_arm_neon_asm_srcs,
21                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
30        x86: {
31            srcs: libvpx_x86_c_srcs + libvpx_x86_asm_srcs,
32            local_include_dirs: ["config/x86"],
33            cflags: [
34                "-mssse3",
35            ],
36        },
37
38        x86_64: {
39            srcs: libvpx_x86_64_c_srcs + libvpx_x86_64_asm_srcs,
40            local_include_dirs: ["config/x86_64"],
41            cflags: [
42                "-mssse3",
43            ],
44        },
45    },
46
47    cflags: [
48        "-O3",
49        "-Wno-unused-parameter",
50    ],
51
52    export_include_dirs: ["libvpx"],
53
54    sanitize: {
55        integer_overflow: true,
56        misc_undefined: ["bounds"],
57        // Enable CFI if this becomes a shared library.
58        // cfi: true,
59        blacklist: "libvpx_blacklist.txt",
60    },
61}
62
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}
135