1# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. 2# 3# Use of this source code is governed by a BSD-style license 4# that can be found in the LICENSE file in the root of the source 5# tree. An additional intellectual property rights grant can be found 6# in the file PATENTS. All contributing project authors may 7# be found in the AUTHORS file in the root of the source tree. 8 9LOCAL_PATH := $(call my-dir) 10 11include $(CLEAR_VARS) 12 13include $(LOCAL_PATH)/../../../android-webrtc.mk 14 15LOCAL_ARM_MODE := arm 16LOCAL_MODULE := libwebrtc_apm 17LOCAL_MODULE_TAGS := optional 18LOCAL_CPP_EXTENSION := .cc 19LOCAL_SRC_FILES := \ 20 $(call all-proto-files-under, .) \ 21 audio_buffer.cc \ 22 audio_processing_impl.cc \ 23 echo_cancellation_impl.cc \ 24 echo_control_mobile_impl.cc \ 25 gain_control_impl.cc \ 26 high_pass_filter_impl.cc \ 27 level_estimator_impl.cc \ 28 noise_suppression_impl.cc \ 29 splitting_filter.cc \ 30 processing_component.cc \ 31 voice_detection_impl.cc 32 33# Flags passed to both C and C++ files. 34LOCAL_CFLAGS := \ 35 $(MY_WEBRTC_COMMON_DEFS) \ 36 '-DWEBRTC_NS_FIXED' 37# floating point 38# -DWEBRTC_NS_FLOAT' 39 40LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm) 41LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86) 42LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips) 43LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64) 44LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64) 45LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64) 46 47LOCAL_C_INCLUDES := \ 48 $(LOCAL_PATH)/interface \ 49 $(LOCAL_PATH)/aec/interface \ 50 $(LOCAL_PATH)/aecm/interface \ 51 $(LOCAL_PATH)/agc/interface \ 52 $(LOCAL_PATH)/ns/interface \ 53 $(LOCAL_PATH)/../interface \ 54 $(LOCAL_PATH)/../.. \ 55 $(LOCAL_PATH)/../../common_audio/signal_processing/include \ 56 $(LOCAL_PATH)/../../common_audio/vad/include \ 57 $(LOCAL_PATH)/../../system_wrappers/interface \ 58 external/protobuf/src 59 60LOCAL_SHARED_LIBRARIES := \ 61 libcutils \ 62 libdl 63 64ifdef WEBRTC_STL 65LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 66LOCAL_SDK_VERSION := 14 67LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 68endif 69 70include $(BUILD_STATIC_LIBRARY) 71 72# apm process test app 73 74include $(CLEAR_VARS) 75 76LOCAL_MODULE_TAGS := tests 77LOCAL_CPP_EXTENSION := .cc 78LOCAL_SRC_FILES:= \ 79 $(call all-proto-files-under, .) \ 80 test/process_test.cc 81 82# Flags passed to both C and C++ files. 83LOCAL_CFLAGS := \ 84 $(MY_WEBRTC_COMMON_DEFS) 85 86LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm) 87LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86) 88LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips) 89LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64) 90LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64) 91LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64) 92 93LOCAL_C_INCLUDES := \ 94 $(LOCAL_PATH)/interface \ 95 $(LOCAL_PATH)/../interface \ 96 $(LOCAL_PATH)/../.. \ 97 $(LOCAL_PATH)/../../system_wrappers/interface \ 98 99MY_LIB_SUFFIX := 100ifdef WEBRTC_STL 101MY_LIB_SUFFIX := _$(WEBRTC_STL) 102endif 103 104LOCAL_SHARED_LIBRARIES := \ 105 libutils \ 106 libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX) 107 108LOCAL_MODULE:= webrtc_apm_process_test 109 110ifndef WEBRTC_STL 111LOCAL_SHARED_LIBRARIES += libprotobuf-cpp-lite 112else 113LOCAL_STATIC_LIBRARIES := \ 114 libprotobuf-cpp-lite 115LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 116LOCAL_SDK_VERSION := 14 117LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 118endif 119include $(BUILD_NATIVE_TEST) 120 121# apm unit test app 122 123include $(CLEAR_VARS) 124 125LOCAL_MODULE_TAGS := tests 126LOCAL_CPP_EXTENSION := .cc 127LOCAL_SRC_FILES:= \ 128 $(call all-proto-files-under, test) \ 129 test/unit_test.cc \ 130 test/testsupport/fileutils.cc 131 132# Flags passed to both C and C++ files. 133LOCAL_CFLAGS := \ 134 $(MY_WEBRTC_COMMON_DEFS) \ 135 '-DWEBRTC_APM_UNIT_TEST_FIXED_PROFILE' 136 137LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm) 138LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86) 139LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips) 140LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64) 141LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64) 142LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64) 143 144LOCAL_C_INCLUDES := \ 145 $(LOCAL_PATH)/interface \ 146 $(LOCAL_PATH)/../interface \ 147 $(LOCAL_PATH)/../.. \ 148 $(LOCAL_PATH)/test \ 149 $(LOCAL_PATH)/../../system_wrappers/interface \ 150 $(LOCAL_PATH)/../../common_audio/signal_processing/include \ 151 external/protobuf/src 152 153MY_LIB_SUFFIX := 154ifdef WEBRTC_STL 155MY_LIB_SUFFIX := _$(WEBRTC_STL) 156endif 157 158LOCAL_SHARED_LIBRARIES := \ 159 libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX) 160 161LOCAL_MODULE:= webrtc_apm_unit_test 162 163ifndef WEBRTC_STL 164LOCAL_SHARED_LIBRARIES += libprotobuf-cpp-lite 165else 166LOCAL_STATIC_LIBRARIES := \ 167 libprotobuf-cpp-lite 168LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 169LOCAL_SDK_VERSION := 14 170LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 171endif 172include $(BUILD_NATIVE_TEST) 173