xref: /aosp_15_r20/frameworks/av/media/libaudioprocessing/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1*ec779b8eSAndroid Build Coastguard Workerpackage {
2*ec779b8eSAndroid Build Coastguard Worker    // See: http://go/android-license-faq
3*ec779b8eSAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
4*ec779b8eSAndroid Build Coastguard Worker    // all of the 'license_kinds' from "frameworks_av_license"
5*ec779b8eSAndroid Build Coastguard Worker    // to get the below license kinds:
6*ec779b8eSAndroid Build Coastguard Worker    //   SPDX-license-identifier-Apache-2.0
7*ec779b8eSAndroid Build Coastguard Worker    default_applicable_licenses: ["frameworks_av_license"],
8*ec779b8eSAndroid Build Coastguard Worker}
9*ec779b8eSAndroid Build Coastguard Worker
10*ec779b8eSAndroid Build Coastguard Workercc_defaults {
11*ec779b8eSAndroid Build Coastguard Worker    name: "libaudioprocessing_defaults",
12*ec779b8eSAndroid Build Coastguard Worker
13*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
14*ec779b8eSAndroid Build Coastguard Worker
15*ec779b8eSAndroid Build Coastguard Worker    header_libs: ["libaudioclient_headers"],
16*ec779b8eSAndroid Build Coastguard Worker
17*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
18*ec779b8eSAndroid Build Coastguard Worker        "libaudioutils",
19*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
20*ec779b8eSAndroid Build Coastguard Worker        "liblog",
21*ec779b8eSAndroid Build Coastguard Worker        "libutils",
22*ec779b8eSAndroid Build Coastguard Worker    ],
23*ec779b8eSAndroid Build Coastguard Worker
24*ec779b8eSAndroid Build Coastguard Worker    cflags: [
25*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
26*ec779b8eSAndroid Build Coastguard Worker
27*ec779b8eSAndroid Build Coastguard Worker        // uncomment to disable NEON on architectures that actually do support NEON, for benchmarking
28*ec779b8eSAndroid Build Coastguard Worker
29*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
30*ec779b8eSAndroid Build Coastguard Worker        // "-DUSE_NEON=false",
31*ec779b8eSAndroid Build Coastguard Worker    ],
32*ec779b8eSAndroid Build Coastguard Worker
33*ec779b8eSAndroid Build Coastguard Worker    arch: {
34*ec779b8eSAndroid Build Coastguard Worker        x86: {
35*ec779b8eSAndroid Build Coastguard Worker            avx2: {
36*ec779b8eSAndroid Build Coastguard Worker                cflags: [
37*ec779b8eSAndroid Build Coastguard Worker                    "-mavx2",
38*ec779b8eSAndroid Build Coastguard Worker                    "-mfma",
39*ec779b8eSAndroid Build Coastguard Worker                ],
40*ec779b8eSAndroid Build Coastguard Worker            },
41*ec779b8eSAndroid Build Coastguard Worker        },
42*ec779b8eSAndroid Build Coastguard Worker        x86_64: {
43*ec779b8eSAndroid Build Coastguard Worker            avx2: {
44*ec779b8eSAndroid Build Coastguard Worker                cflags: [
45*ec779b8eSAndroid Build Coastguard Worker                    "-mavx2",
46*ec779b8eSAndroid Build Coastguard Worker                    "-mfma",
47*ec779b8eSAndroid Build Coastguard Worker                ],
48*ec779b8eSAndroid Build Coastguard Worker            },
49*ec779b8eSAndroid Build Coastguard Worker        },
50*ec779b8eSAndroid Build Coastguard Worker    },
51*ec779b8eSAndroid Build Coastguard Worker}
52*ec779b8eSAndroid Build Coastguard Worker
53*ec779b8eSAndroid Build Coastguard Workercc_library_shared {
54*ec779b8eSAndroid Build Coastguard Worker    name: "libaudioprocessing",
55*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libaudioprocessing_defaults"],
56*ec779b8eSAndroid Build Coastguard Worker
57*ec779b8eSAndroid Build Coastguard Worker    srcs: [
58*ec779b8eSAndroid Build Coastguard Worker        "AudioMixer.cpp",
59*ec779b8eSAndroid Build Coastguard Worker        "BufferProviders.cpp",
60*ec779b8eSAndroid Build Coastguard Worker        "RecordBufferConverter.cpp",
61*ec779b8eSAndroid Build Coastguard Worker    ],
62*ec779b8eSAndroid Build Coastguard Worker
63*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
64*ec779b8eSAndroid Build Coastguard Worker        "libaudiohal_headers",
65*ec779b8eSAndroid Build Coastguard Worker        "libbase_headers",
66*ec779b8eSAndroid Build Coastguard Worker        "libmedia_headers",
67*ec779b8eSAndroid Build Coastguard Worker    ],
68*ec779b8eSAndroid Build Coastguard Worker
69*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
70*ec779b8eSAndroid Build Coastguard Worker        "libaudiohal",
71*ec779b8eSAndroid Build Coastguard Worker        "libsonic",
72*ec779b8eSAndroid Build Coastguard Worker        "libvibrator",
73*ec779b8eSAndroid Build Coastguard Worker    ],
74*ec779b8eSAndroid Build Coastguard Worker
75*ec779b8eSAndroid Build Coastguard Worker    whole_static_libs: ["libaudioprocessing_base"],
76*ec779b8eSAndroid Build Coastguard Worker
77*ec779b8eSAndroid Build Coastguard Worker    export_shared_lib_headers: [
78*ec779b8eSAndroid Build Coastguard Worker        "libvibrator",
79*ec779b8eSAndroid Build Coastguard Worker    ],
80*ec779b8eSAndroid Build Coastguard Worker}
81*ec779b8eSAndroid Build Coastguard Worker
82*ec779b8eSAndroid Build Coastguard Workercc_library_static {
83*ec779b8eSAndroid Build Coastguard Worker    name: "libaudioprocessing_base",
84*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libaudioprocessing_defaults"],
85*ec779b8eSAndroid Build Coastguard Worker    vendor_available: true,
86*ec779b8eSAndroid Build Coastguard Worker
87*ec779b8eSAndroid Build Coastguard Worker    srcs: [
88*ec779b8eSAndroid Build Coastguard Worker        "AudioMixerBase.cpp",
89*ec779b8eSAndroid Build Coastguard Worker        "AudioResampler.cpp",
90*ec779b8eSAndroid Build Coastguard Worker        "AudioResamplerCubic.cpp",
91*ec779b8eSAndroid Build Coastguard Worker        "AudioResamplerDyn.cpp",
92*ec779b8eSAndroid Build Coastguard Worker        "AudioResamplerSinc.cpp",
93*ec779b8eSAndroid Build Coastguard Worker    ],
94*ec779b8eSAndroid Build Coastguard Worker
95*ec779b8eSAndroid Build Coastguard Worker    arch: {
96*ec779b8eSAndroid Build Coastguard Worker        arm: {
97*ec779b8eSAndroid Build Coastguard Worker            instruction_set: "arm",
98*ec779b8eSAndroid Build Coastguard Worker        },
99*ec779b8eSAndroid Build Coastguard Worker    },
100*ec779b8eSAndroid Build Coastguard Worker}
101