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_defaults {
11    name: "libaudioprocessing_defaults",
12
13    export_include_dirs: ["include"],
14
15    header_libs: ["libaudioclient_headers"],
16
17    shared_libs: [
18        "libaudioutils",
19        "libcutils",
20        "liblog",
21        "libutils",
22    ],
23
24    cflags: [
25        "-Werror",
26        "-Wall",
27
28        // uncomment to disable NEON on architectures that actually do support NEON, for benchmarking
29        // "-DUSE_NEON=false",
30    ],
31
32    arch: {
33        x86: {
34            avx2: {
35                cflags: [
36                    "-mavx2",
37                    "-mfma",
38                ],
39            },
40        },
41        x86_64: {
42            avx2: {
43                cflags: [
44                    "-mavx2",
45                    "-mfma",
46                ],
47            },
48        },
49    },
50}
51
52cc_library_shared {
53    name: "libaudioprocessing",
54    defaults: ["libaudioprocessing_defaults"],
55
56    srcs: [
57        "AudioMixer.cpp",
58        "BufferProviders.cpp",
59        "RecordBufferConverter.cpp",
60    ],
61
62    header_libs: [
63        "libaudiohal_headers",
64        "libbase_headers",
65        "libmedia_headers"
66    ],
67
68    shared_libs: [
69        "libaudiohal",
70        "libsonic",
71        "libvibrator",
72    ],
73
74    whole_static_libs: ["libaudioprocessing_base"],
75}
76
77cc_library_static {
78    name: "libaudioprocessing_base",
79    defaults: ["libaudioprocessing_defaults"],
80    vendor_available: true,
81
82    srcs: [
83        "AudioMixerBase.cpp",
84        "AudioResampler.cpp",
85        "AudioResamplerCubic.cpp",
86        "AudioResamplerSinc.cpp",
87        "AudioResamplerDyn.cpp",
88    ],
89
90    arch: {
91        arm: {
92            instruction_set: "arm",
93        },
94    },
95}
96