diff options
Diffstat (limited to 'Android.bp')
-rw-r--r-- | Android.bp | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/Android.bp b/Android.bp new file mode 100644 index 0000000000..48ff6074ed --- /dev/null +++ b/Android.bp @@ -0,0 +1,156 @@ +// Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. +// +// Use of this source code is governed by a BSD-style license +// that can be found in the LICENSE file in the root of the source +// tree. An additional intellectual property rights grant can be found +// in the file PATENTS. All contributing project authors may +// be found in the AUTHORS file in the root of the source tree. + +// These defines will apply to all source files +// Think again before changing it +cc_defaults { + name: "webrtc_flags", + vendor: true, + + cflags: [ + "-DWEBRTC_POSIX", + "-DWEBRTC_LINUX", + "-DWEBRTC_THREAD_RR", + "-DWEBRTC_CLOCK_TYPE_REALTIME", + "-DWEBRTC_ANDROID", + + // The following macros are used by modules, + // we might need to re-organize them + // "-DWEBRTC_ANDROID_OPENSLES", // [module audio_device] + // "-DNETEQ_VOICEENGINE_CODECS", // [module audio_coding neteq] + // "-DWEBRTC_MODULE_UTILITY_VIDEO", // [module media_file] [module utility] + + "-Wall", + "-Werror", + // The following warnings are disabled in most webrtc modules, + // until we upgrade to newer cleaner upstream webrtc. + "-Wno-missing-braces", + "-Wno-missing-field-initializers", + "-Wno-unused-parameter", + ], + + header_libs: ["libwebrtc_headers"], + + arch: { + arm: { + instruction_set: "arm", + + cflags: [ + "-DWEBRTC_ARCH_ARM", + // "-DWEBRTC_DETECT_ARM_NEON", // only used in a build configuration without Neon + // TODO(kma): figure out if the above define could be moved to NDK build only. + + // The following upstram ARM_NEON and ARMV7A defintions do not work on AOSP yet. + // They should be fixed in the next merge from upstream. + //# TODO(kma): test if the code under next two macros works with generic GCC compilers + // "-DWEBRTC_ARCH_ARM_NEON", + // "-flax-vector-conversions", + // "-DWEBRTC_ARCH_ARM_V7A", + ], + }, + }, + + // The following clang-tidy checks are disabled in most webrtc modules, + // until we upgrade to newer cleaner upstream webrtc. + tidy_checks: [ + "-cert-*", + "-clang-analyzer-*", + "-hicpp-*", + "-llvm-*", + "-google-build-namespaces", + "-google-default-arguments", + "-google-explicit-constructor", + "-google-runtime-int", + "-google-runtime-operator", + "-misc-incorrect-roundings", + "-misc-macro-parentheses", + "-misc-misplaced-widening-cast", + "-misc-noexcept-move-constructor", + "-misc-suspicious-string-compare", + "-misc-unused-parameters", + "-misc-unused-using-decls", + "-performance-type-promotion-in-math-fn", + "-performance-unnecessary-copy-initialization", + "-performance-unnecessary-value-param", + ], +} + +cc_library_shared { + name: "libwebrtc_audio_preprocessing", + vendor: true, + + whole_static_libs: [ + "libwebrtc_aec", + "libwebrtc_aecm", + "libwebrtc_agc", + "libwebrtc_apm", + "libwebrtc_apm_utility", + "libwebrtc_apvad", + "libwebrtc_base", + "libwebrtc_beamformer", + "libwebrtc_common", + "libwebrtc_intell", + "libwebrtc_isac", + "libwebrtc_resampler", + "libwebrtc_ns", + "libwebrtc_spl", + "libwebrtc_system_wrappers", + "libwebrtc_transient", + "libwebrtc_vad", + ], + + shared_libs: [ + "liblog", + "libcutils", + "libdl", + "libprotobuf-cpp-lite", + ], + + arch: { + arm: { + instruction_set: "arm", + }, + }, +} + +cc_library_shared { + name: "libwebrtc_audio_coding", + vendor: true, + + whole_static_libs: [ + "libwebrtc_base", + "libwebrtc_common", + "libwebrtc_intell", + "libwebrtc_isac", + "libwebrtc_isacfix", + "libwebrtc_resampler", + "libwebrtc_spl", + "libwebrtc_system_wrappers", + ], + + shared_libs: [ + "libprotobuf-cpp-lite", + "liblog", + "libcutils", + "libdl", + ], + + arch: { + arm: { + instruction_set: "arm", + }, + }, +} + +cc_library_headers { + name: "libwebrtc_headers", + vendor: true, + export_include_dirs: ["."], +} + +subdirs = ["webrtc/*"] |