Files
platform-external-webrtc/webrtc/voice_engine/Android.mk
pbos@webrtc.org 676ff1ed89 Ref-counted rewrite of ChannelManager.
The complexity of the last ChannelManager and potentially usage of it as well caused race conditions and deadlocks in loopback voe_auto_test. This ref-counted solution takes no long-term locks, uses less locks overall and is significantly easier to understand.

ScopedChannel has been split up into a ChannelOwner with a reference to a channel and an Iterator over ChannelManager. Previous code was really used for both things. ChannelOwner is used as a shared pointer to a channel object, while an Iterator should work as expected.

BUG=2081
R=tommi@webrtc.org, xians@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1802004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4502 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-07 17:57:36 +00:00

88 lines
2.6 KiB
Makefile

# Copyright (c) 2012 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.
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
include $(LOCAL_PATH)/../../../../android-webrtc.mk
LOCAL_ARM_MODE := arm
LOCAL_MODULE := libwebrtc_voe_core
LOCAL_MODULE_TAGS := optional
LOCAL_CPP_EXTENSION := .cc
LOCAL_SRC_FILES := \
audio_frame_operations.cc \
channel.cc \
channel_manager.cc \
dtmf_inband.cc \
dtmf_inband_queue.cc \
level_indicator.cc \
monitor_module.cc \
output_mixer.cc \
ref_count.cc \
shared_data.cc \
statistics.cc \
transmit_mixer.cc \
utility.cc \
voe_audio_processing_impl.cc \
voe_base_impl.cc \
voe_call_report_impl.cc \
voe_codec_impl.cc \
voe_dtmf_impl.cc \
voe_encryption_impl.cc \
voe_external_media_impl.cc \
voe_file_impl.cc \
voe_hardware_impl.cc \
voe_neteq_stats_impl.cc \
voe_network_impl.cc \
voe_rtp_rtcp_impl.cc \
voe_video_sync_impl.cc \
voe_volume_control_impl.cc \
voice_engine_impl.cc
# Flags passed to both C and C++ files.
LOCAL_CFLAGS := \
$(MY_WEBRTC_COMMON_DEFS) \
'-DWEBRTC_ANDROID_OPENSLES'
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/../interface \
$(LOCAL_PATH)/../../.. \
$(LOCAL_PATH)/../../../common_audio/resampler/include \
$(LOCAL_PATH)/../../../common_audio/signal_processing/include \
$(LOCAL_PATH)/../../../modules/interface \
$(LOCAL_PATH)/../../../modules/audio_coding/main/interface \
$(LOCAL_PATH)/../../../modules/audio_conference_mixer/interface \
$(LOCAL_PATH)/../../../modules/audio_device/main/interface \
$(LOCAL_PATH)/../../../modules/audio_device/main/source \
$(LOCAL_PATH)/../../../modules/audio_processing/include \
$(LOCAL_PATH)/../../../modules/media_file/interface \
$(LOCAL_PATH)/../../../modules/rtp_rtcp/interface \
$(LOCAL_PATH)/../../../modules/udp_transport/interface \
$(LOCAL_PATH)/../../../modules/utility/interface \
$(LOCAL_PATH)/../../../system_wrappers/interface
LOCAL_SHARED_LIBRARIES := \
libcutils \
libdl \
libstlport
ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
LOCAL_LDLIBS += -ldl -lpthread
endif
ifneq ($(TARGET_SIMULATOR),true)
LOCAL_SHARED_LIBRARIES += libdl
endif
ifndef NDK_ROOT
include external/stlport/libstlport.mk
endif
include $(BUILD_STATIC_LIBRARY)