Home | History | Annotate | Download | only in audio_processing
      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