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 9 LOCAL_PATH := $(call my-dir) 10 11 include $(CLEAR_VARS) 12 13 include $(LOCAL_PATH)/../../../android-webrtc.mk 14 15 LOCAL_ARM_MODE := arm 16 LOCAL_MODULE := libwebrtc_apm 17 LOCAL_MODULE_TAGS := optional 18 LOCAL_CPP_EXTENSION := .cc 19 LOCAL_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. 34 LOCAL_CFLAGS := \ 35 $(MY_WEBRTC_COMMON_DEFS) \ 36 '-DWEBRTC_NS_FIXED' 37 # floating point 38 # -DWEBRTC_NS_FLOAT' 39 40 LOCAL_C_INCLUDES := \ 41 $(LOCAL_PATH)/interface \ 42 $(LOCAL_PATH)/aec/interface \ 43 $(LOCAL_PATH)/aecm/interface \ 44 $(LOCAL_PATH)/agc/interface \ 45 $(LOCAL_PATH)/ns/interface \ 46 $(LOCAL_PATH)/../interface \ 47 $(LOCAL_PATH)/../.. \ 48 $(LOCAL_PATH)/../../common_audio/signal_processing/include \ 49 $(LOCAL_PATH)/../../common_audio/vad/include \ 50 $(LOCAL_PATH)/../../system_wrappers/interface \ 51 external/protobuf/src 52 53 LOCAL_SHARED_LIBRARIES := \ 54 libcutils \ 55 libdl 56 57 ifndef NDK_ROOT 58 ifndef WEBRTC_STL 59 include external/stlport/libstlport.mk 60 else 61 LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 62 LOCAL_SDK_VERSION := 14 63 LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 64 endif 65 else 66 LOCAL_SHARED_LIBRARIES += libstlport 67 endif 68 69 include $(BUILD_STATIC_LIBRARY) 70 71 # apm process test app 72 73 include $(CLEAR_VARS) 74 75 LOCAL_MODULE_TAGS := tests 76 LOCAL_CPP_EXTENSION := .cc 77 LOCAL_SRC_FILES:= \ 78 $(call all-proto-files-under, .) \ 79 test/process_test.cc 80 81 # Flags passed to both C and C++ files. 82 LOCAL_CFLAGS := \ 83 $(MY_WEBRTC_COMMON_DEFS) 84 85 LOCAL_C_INCLUDES := \ 86 $(LOCAL_PATH)/interface \ 87 $(LOCAL_PATH)/../interface \ 88 $(LOCAL_PATH)/../.. \ 89 $(LOCAL_PATH)/../../system_wrappers/interface \ 90 external/gtest/include 91 92 LOCAL_STATIC_LIBRARIES := \ 93 libgtest \ 94 libprotobuf-cpp-2.3.0-lite 95 96 MY_LIB_SUFFIX := 97 ifdef WEBRTC_STL 98 MY_LIB_SUFFIX := _$(WEBRTC_STL) 99 endif 100 101 LOCAL_SHARED_LIBRARIES := \ 102 libutils \ 103 libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX) 104 105 LOCAL_MODULE:= webrtc_apm_process_test 106 107 ifdef NDK_ROOT 108 LOCAL_SHARED_LIBRARIES += libstlport 109 include $(BUILD_EXECUTABLE) 110 else 111 ifndef WEBRTC_STL 112 include external/stlport/libstlport.mk 113 else 114 LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 115 LOCAL_SDK_VERSION := 14 116 LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 117 endif 118 include $(BUILD_NATIVE_TEST) 119 endif 120 121 # apm unit test app 122 123 include $(CLEAR_VARS) 124 125 LOCAL_MODULE_TAGS := tests 126 LOCAL_CPP_EXTENSION := .cc 127 LOCAL_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. 133 LOCAL_CFLAGS := \ 134 $(MY_WEBRTC_COMMON_DEFS) \ 135 '-DWEBRTC_APM_UNIT_TEST_FIXED_PROFILE' 136 137 LOCAL_C_INCLUDES := \ 138 $(LOCAL_PATH)/interface \ 139 $(LOCAL_PATH)/../interface \ 140 $(LOCAL_PATH)/../.. \ 141 $(LOCAL_PATH)/../../../test \ 142 $(LOCAL_PATH)/../../system_wrappers/interface \ 143 $(LOCAL_PATH)/../../common_audio/signal_processing/include \ 144 external/gtest/include \ 145 external/protobuf/src 146 147 LOCAL_STATIC_LIBRARIES := \ 148 libgtest \ 149 libprotobuf-cpp-2.3.0-lite 150 151 MY_LIB_SUFFIX := 152 ifdef WEBRTC_STL 153 MY_LIB_SUFFIX := _$(WEBRTC_STL) 154 endif 155 156 LOCAL_SHARED_LIBRARIES := \ 157 libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX) 158 159 LOCAL_MODULE:= webrtc_apm_unit_test 160 161 ifdef NDK_ROOT 162 LOCAL_SHARED_LIBRARIES += libstlport 163 include $(BUILD_EXECUTABLE) 164 else 165 ifndef WEBRTC_STL 166 include external/stlport/libstlport.mk 167 else 168 LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL) 169 LOCAL_SDK_VERSION := 14 170 LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL) 171 endif 172 include $(BUILD_NATIVE_TEST) 173 endif 174