// 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/*"]