| cc_library { |
| name: "libaaudio", |
| |
| local_include_dirs: [ |
| "binding", |
| "client", |
| "core", |
| "fifo", |
| "flowgraph", |
| "legacy", |
| "utility", |
| ], |
| header_libs: [ |
| "libaaudio_headers", |
| ], |
| export_header_lib_headers: ["libaaudio_headers"], |
| version_script: "libaaudio.map.txt", |
| |
| srcs: [ |
| "core/AAudioAudio.cpp", |
| ], |
| |
| cflags: [ |
| "-Wthread-safety", |
| "-Wno-unused-parameter", |
| "-Wall", |
| "-Werror", |
| |
| // By default, all symbols are hidden. |
| // "-fvisibility=hidden", |
| // AAUDIO_API is used to explicitly export a function or a variable as a visible symbol. |
| "-DAAUDIO_API=__attribute__((visibility(\"default\")))", |
| ], |
| |
| shared_libs: [ |
| "libaaudio_internal", |
| "libaudioclient", |
| "libaudioutils", |
| "libmedia_helper", |
| "libmediametrics", |
| "libmediautils", |
| "liblog", |
| "libcutils", |
| "libutils", |
| "libbinder", |
| ], |
| |
| sanitize: { |
| integer_overflow: true, |
| misc_undefined: ["bounds"], |
| }, |
| |
| stubs: { |
| symbol_file: "libaaudio.map.txt", |
| versions: ["28"], |
| }, |
| } |
| |
| cc_library { |
| name: "libaaudio_internal", |
| |
| local_include_dirs: [ |
| "binding", |
| "client", |
| "core", |
| "fifo", |
| "legacy", |
| "utility", |
| ], |
| |
| export_include_dirs: ["."], |
| header_libs: [ |
| "libaaudio_headers", |
| "libmedia_headers", |
| "libmediametrics_headers", |
| ], |
| export_header_lib_headers: ["libaaudio_headers"], |
| |
| shared_libs: [ |
| "libaudioclient", |
| "libaudioutils", |
| "libmedia_helper", |
| "libmediametrics", |
| "libmediautils", |
| "liblog", |
| "libcutils", |
| "libutils", |
| "libbinder", |
| "aaudio-aidl-cpp", |
| ], |
| |
| cflags: [ |
| "-Wno-unused-parameter", |
| "-Wall", |
| "-Werror", |
| ], |
| |
| srcs: [ |
| "core/AudioGlobal.cpp", |
| "core/AudioStream.cpp", |
| "core/AudioStreamBuilder.cpp", |
| "core/AAudioStreamParameters.cpp", |
| "legacy/AudioStreamLegacy.cpp", |
| "legacy/AudioStreamRecord.cpp", |
| "legacy/AudioStreamTrack.cpp", |
| "utility/AAudioUtilities.cpp", |
| "utility/FixedBlockAdapter.cpp", |
| "utility/FixedBlockReader.cpp", |
| "utility/FixedBlockWriter.cpp", |
| "fifo/FifoBuffer.cpp", |
| "fifo/FifoControllerBase.cpp", |
| "client/AAudioFlowGraph.cpp", |
| "client/AudioEndpoint.cpp", |
| "client/AudioStreamInternal.cpp", |
| "client/AudioStreamInternalCapture.cpp", |
| "client/AudioStreamInternalPlay.cpp", |
| "client/IsochronousClockModel.cpp", |
| "binding/AudioEndpointParcelable.cpp", |
| "binding/AAudioBinderAdapter.cpp", |
| "binding/AAudioBinderClient.cpp", |
| "binding/AAudioStreamRequest.cpp", |
| "binding/AAudioStreamConfiguration.cpp", |
| "binding/RingBufferParcelable.cpp", |
| "binding/SharedMemoryParcelable.cpp", |
| "binding/SharedRegionParcelable.cpp", |
| "flowgraph/AudioProcessorBase.cpp", |
| "flowgraph/ClipToRange.cpp", |
| "flowgraph/MonoToMultiConverter.cpp", |
| "flowgraph/RampLinear.cpp", |
| "flowgraph/SinkFloat.cpp", |
| "flowgraph/SinkI16.cpp", |
| "flowgraph/SinkI24.cpp", |
| "flowgraph/SinkI32.cpp", |
| "flowgraph/SourceFloat.cpp", |
| "flowgraph/SourceI16.cpp", |
| "flowgraph/SourceI24.cpp", |
| "flowgraph/SourceI32.cpp", |
| ], |
| sanitize: { |
| integer_overflow: true, |
| misc_undefined: ["bounds"], |
| }, |
| } |
| |
| aidl_interface { |
| name: "aaudio-aidl", |
| unstable: true, |
| local_include_dir: "binding/aidl", |
| srcs: [ |
| "binding/aidl/aaudio/Endpoint.aidl", |
| "binding/aidl/aaudio/RingBuffer.aidl", |
| "binding/aidl/aaudio/SharedRegion.aidl", |
| "binding/aidl/aaudio/StreamParameters.aidl", |
| "binding/aidl/aaudio/StreamRequest.aidl", |
| "binding/aidl/aaudio/IAAudioClient.aidl", |
| "binding/aidl/aaudio/IAAudioService.aidl", |
| ], |
| imports: [ |
| "audio_common-aidl", |
| "shared-file-region-aidl", |
| ], |
| backend: |
| { |
| cpp: { |
| enabled: true, |
| }, |
| java: { |
| // TODO: need to have audio_common-aidl available in Java to enable |
| // this. |
| enabled: false, |
| }, |
| }, |
| } |