resolved conflicts for merge of 7d088644 to klp-modular-dev-plus-aosp

Change-Id: Ib8e9574733170871e88bdc441597dc4130614535
diff --git a/Android.mk b/Android.mk
index 1720a24..5dbbc1d 100644
--- a/Android.mk
+++ b/Android.mk
@@ -6,35 +6,10 @@
 # in the file PATENTS.  All contributing project authors may
 # be found in the AUTHORS file in the root of the source tree.
 
-MY_WEBRTC_ROOT_PATH := $(call my-dir)
-
-# voice
-include $(MY_WEBRTC_ROOT_PATH)/src/common_audio/resampler/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/common_audio/signal_processing/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/common_audio/vad/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_coding/codecs/isac/fix/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/aec/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/aecm/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/agc/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/ns/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_processing/utility/Android.mk
-#include $(MY_WEBRTC_ROOT_PATH)/src/modules/utility/source/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/system_wrappers/source/Android.mk
-
-# libwebrtc_audio_coding_gnustl_static dependencies
-WEBRTC_STL := gnustl_static
-include $(MY_WEBRTC_ROOT_PATH)/src/system_wrappers/source/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/modules/audio_coding/codecs/isac/fix/Android.mk
-include $(MY_WEBRTC_ROOT_PATH)/src/common_audio/signal_processing/Android.mk
-
-# build .so
 LOCAL_PATH := $(call my-dir)
 
 include $(CLEAR_VARS)
-include $(LOCAL_PATH)/../../external/webrtc/android-webrtc.mk
+include $(LOCAL_PATH)/android-webrtc.mk
 
 LOCAL_ARM_MODE := arm
 LOCAL_MODULE := libwebrtc_audio_preprocessing
@@ -54,7 +29,7 @@
 
 # Add Neon libraries.
 ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
-LOCAL_WHOLE_STATIC_LIBRARIES += \
+LOCAL_WHOLE_STATIC_LIBRARIES_arm += \
     libwebrtc_aecm_neon \
     libwebrtc_ns_neon
 endif
@@ -76,7 +51,7 @@
 
 
 include $(CLEAR_VARS)
-include $(LOCAL_PATH)/../../external/webrtc/android-webrtc.mk
+include $(LOCAL_PATH)/android-webrtc.mk
 
 LOCAL_ARM_MODE := arm
 LOCAL_MODULE := libwebrtc_audio_coding
@@ -88,7 +63,7 @@
     libwebrtc_spl \
     libwebrtc_system_wrappers
 ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
-LOCAL_WHOLE_STATIC_LIBRARIES += \
+LOCAL_WHOLE_STATIC_LIBRARIES_arm += \
     libwebrtc_isacfix_neon
 endif
 
@@ -108,7 +83,7 @@
 
 
 include $(CLEAR_VARS)
-include $(LOCAL_PATH)/../../external/webrtc/android-webrtc.mk
+include $(LOCAL_PATH)/android-webrtc.mk
 
 LOCAL_ARM_MODE := arm
 LOCAL_MODULE := libwebrtc_audio_coding_gnustl_static
@@ -120,7 +95,7 @@
     libwebrtc_spl_gnustl_static \
     libwebrtc_system_wrappers_gnustl_static
 ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
-LOCAL_WHOLE_STATIC_LIBRARIES += \
+LOCAL_WHOLE_STATIC_LIBRARIES_arm += \
     libwebrtc_isacfix_neon_gnustl_static
 endif
 
@@ -136,3 +111,26 @@
 LOCAL_SDK_VERSION := 14
 
 include $(BUILD_STATIC_LIBRARY)
+
+webrtc_path := $(LOCAL_PATH)
+# voice
+include $(webrtc_path)/src/common_audio/resampler/Android.mk
+include $(webrtc_path)/src/common_audio/signal_processing/Android.mk
+include $(webrtc_path)/src/common_audio/vad/Android.mk
+include $(webrtc_path)/src/modules/audio_coding/codecs/isac/fix/Android.mk
+include $(webrtc_path)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/aec/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/aecm/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/agc/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/ns/Android.mk
+include $(webrtc_path)/src/modules/audio_processing/utility/Android.mk
+#include $(webrtc_path)/src/modules/utility/source/Android.mk
+include $(webrtc_path)/src/system_wrappers/source/Android.mk
+
+# libwebrtc_audio_coding_gnustl_static dependencies
+WEBRTC_STL := gnustl_static
+include $(webrtc_path)/src/system_wrappers/source/Android.mk
+include $(webrtc_path)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
+include $(webrtc_path)/src/modules/audio_coding/codecs/isac/fix/Android.mk
+include $(webrtc_path)/src/common_audio/signal_processing/Android.mk
diff --git a/android-webrtc.mk b/android-webrtc.mk
index dc92aeb..f131004 100644
--- a/android-webrtc.mk
+++ b/android-webrtc.mk
@@ -19,31 +19,28 @@
 #    '-DWEBRTC_ANDROID_OPENSLES' [module audio_device]
 #    '-DNETEQ_VOICEENGINE_CODECS' [module audio_coding neteq]
 #    '-DWEBRTC_MODULE_UTILITY_VIDEO' [module media_file] [module utility]
-ifeq ($(TARGET_ARCH),arm)
-MY_WEBRTC_COMMON_DEFS += \
+MY_WEBRTC_COMMON_DEFS_arm := \
     '-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.
 
 # TODO(kma): test if the code under next two macros works with generic GCC compilers
 ifeq ($(ARCH_ARM_HAVE_NEON),true)
-MY_WEBRTC_COMMON_DEFS += \
+MY_WEBRTC_COMMON_DEFS_arm += \
     '-DWEBRTC_ARCH_ARM_NEON'
 MY_ARM_CFLAGS_NEON := \
     -flax-vector-conversions
 endif
 
 ifneq (,$(filter '-DWEBRTC_DETECT_ARM_NEON' '-DWEBRTC_ARCH_ARM_NEON', \
-    $(MY_WEBRTC_COMMON_DEFS)))
+    $(MY_WEBRTC_COMMON_DEFS_arm)))
 WEBRTC_BUILD_NEON_LIBS := true
 endif
 
 ifeq ($(ARCH_ARM_HAVE_ARMV7A),true)
-MY_WEBRTC_COMMON_DEFS += \
+MY_WEBRTC_COMMON_DEFS_arm += \
     '-DWEBRTC_ARCH_ARM_V7A'
 endif
 
-else ifeq ($(TARGET_ARCH),x86)
-MY_WEBRTC_COMMON_DEFS += \
+MY_WEBRTC_COMMON_DEFS_x86 := \
     '-DWEBRTC_USE_SSE2'
-endif
diff --git a/src/common_audio/resampler/Android.mk b/src/common_audio/resampler/Android.mk
index 8238eb5..9d052ed 100644
--- a/src/common_audio/resampler/Android.mk
+++ b/src/common_audio/resampler/Android.mk
@@ -23,6 +23,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/include \
     $(LOCAL_PATH)/../.. \
@@ -32,13 +39,7 @@
     libcutils \
     libdl
 
-ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
-LOCAL_LDLIBS += -ldl -lpthread
-endif
-
-ifneq ($(TARGET_SIMULATOR),true)
 LOCAL_SHARED_LIBRARIES += libdl
-endif
 
 ifndef NDK_ROOT
 ifndef WEBRTC_STL
diff --git a/src/common_audio/signal_processing/Android.mk b/src/common_audio/signal_processing/Android.mk
index 142a66e..fc34246 100644
--- a/src/common_audio/signal_processing/Android.mk
+++ b/src/common_audio/signal_processing/Android.mk
@@ -53,32 +53,34 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/include \
     $(LOCAL_PATH)/../..
 
 ifeq ($(ARCH_ARM_HAVE_NEON),true)
-LOCAL_SRC_FILES += \
+LOCAL_SRC_FILES_arm += \
     min_max_operations_neon.c
-LOCAL_CFLAGS += \
+LOCAL_CFLAGS_arm += \
     $(MY_ARM_CFLAGS_NEON)
 endif
 
-ifeq ($(TARGET_ARCH),arm)
-LOCAL_SRC_FILES += \
-    spl_sqrt_floor.s
-else
-LOCAL_SRC_FILES += \
-    spl_sqrt_floor.c
-endif
+my_as_src := spl_sqrt_floor.s
+my_c_src := spl_sqrt_floor.c
+LOCAL_SRC_FILES_arm += $(my_as_src)
+LOCAL_SRC_FILES_x86 += $(my_c_src)
+LOCAL_SRC_FILES_mips += $(my_c_src)
+LOCAL_SRC_FILES_arm64 += $(my_c_src)
+LOCAL_SRC_FILES_x86_64 += $(my_c_src)
+LOCAL_SRC_FILES_mips64 += $(my_c_src)
 
-ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
-LOCAL_LDLIBS += -ldl -lpthread
-endif
-
-ifneq ($(TARGET_SIMULATOR),true)
 LOCAL_SHARED_LIBRARIES += libdl
-endif
 
 ifndef NDK_ROOT
 ifndef WEBRTC_STL
diff --git a/src/common_audio/vad/Android.mk b/src/common_audio/vad/Android.mk
index 6cacbdb..d13d571 100644
--- a/src/common_audio/vad/Android.mk
+++ b/src/common_audio/vad/Android.mk
@@ -27,6 +27,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/include \
     $(LOCAL_PATH)/../.. \
@@ -35,13 +42,7 @@
 LOCAL_SHARED_LIBRARIES := \
     libdl
 
-ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
-LOCAL_LDLIBS += -ldl -lpthread
-endif
-
-ifneq ($(TARGET_SIMULATOR),true)
 LOCAL_SHARED_LIBRARIES += libdl
-endif
 
 ifndef NDK_ROOT
 ifndef WEBRTC_STL
diff --git a/src/modules/audio_coding/codecs/isac/fix/source/Android.mk b/src/modules/audio_coding/codecs/isac/fix/source/Android.mk
index f6ad4d4..75748e5 100644
--- a/src/modules/audio_coding/codecs/isac/fix/source/Android.mk
+++ b/src/modules/audio_coding/codecs/isac/fix/source/Android.mk
@@ -45,21 +45,31 @@
     spectrum_ar_model_tables.c \
     transform.c
 
-ifeq ($(ARCH_ARM_HAVE_ARMV7A),true)
 # Using .S (instead of .s) extention is to include a C header file in assembly.
-LOCAL_SRC_FILES += \
+my_as_src := \
     lattice_armv7.S \
     pitch_filter_armv6.S
-else
-LOCAL_SRC_FILES += \
+my_c_src := \
     lattice_c.c \
     pitch_filter_c.c
-endif
+LOCAL_SRC_FILES_arm += $(my_as_src)
+LOCAL_SRC_FILES_x86 += $(my_c_src)
+LOCAL_SRC_FILES_mips += $(my_c_src)
+LOCAL_SRC_FILES_arm64 += $(my_c_src)
+LOCAL_SRC_FILES_x86_64 += $(my_c_src)
+LOCAL_SRC_FILES_mips64 += $(my_c_src)
 
 # Flags passed to both C and C++ files.
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/../interface \
     $(LOCAL_PATH)/../../../../../.. \
@@ -108,6 +118,9 @@
     -mfloat-abi=softfp \
     -flax-vector-conversions
 
+LOCAL_MODULE_TARGET_ARCH := arm
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/../interface \
     $(LOCAL_PATH)/../../../../../.. \
diff --git a/src/modules/audio_coding/codecs/isac/fix/test/Android.mk b/src/modules/audio_coding/codecs/isac/fix/test/Android.mk
index fc8c193..d8e685f 100644
--- a/src/modules/audio_coding/codecs/isac/fix/test/Android.mk
+++ b/src/modules/audio_coding/codecs/isac/fix/test/Android.mk
@@ -12,6 +12,13 @@
 # Flags passed to both C and C++ files.
 LOCAL_CFLAGS := $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/../interface \
     $(LOCAL_PATH)/../../../../../..
@@ -27,7 +34,10 @@
     libwebrtc_system_wrappers$(MY_LIB_SUFFIX)
 
 ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
-LOCAL_STATIC_LIBRARIES += \
+# We need to dup libwebrtc_isacfix$(MY_LIB_SUFFIX) because ibwebrtc_isacfix_neon$(MY_LIB_SUFFIX)
+# has dependency on it.
+LOCAL_STATIC_LIBRARIES_arm += \
+    libwebrtc_isacfix$(MY_LIB_SUFFIX) \
     libwebrtc_isacfix_neon$(MY_LIB_SUFFIX)
 endif
 
diff --git a/src/modules/audio_coding/codecs/isac/fix/test/kenny.c b/src/modules/audio_coding/codecs/isac/fix/test/kenny.c
index 8b04c98..ea6b09e 100644
--- a/src/modules/audio_coding/codecs/isac/fix/test/kenny.c
+++ b/src/modules/audio_coding/codecs/isac/fix/test/kenny.c
@@ -363,7 +363,7 @@
       testCE = atoi(argv[i + 1]);
       if (testCE==1 || testCE==2) {
         i++;
-        scale = (float)atof( argv[i+1] );
+        scale = (float)strtod( argv[i+1], NULL );
       } else if (testCE < 1 || testCE > 3) {
         printf("\n%d is not a valid CE-test number, valid Fault "
                "Scenarios are numbered 1-3\n", testCE);
diff --git a/src/modules/audio_coding/codecs/isac/main/source/Android.mk b/src/modules/audio_coding/codecs/isac/main/source/Android.mk
index bacd151..71df4d5 100644
--- a/src/modules/audio_coding/codecs/isac/main/source/Android.mk
+++ b/src/modules/audio_coding/codecs/isac/main/source/Android.mk
@@ -50,6 +50,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/../interface \
     $(LOCAL_PATH)/../../../../../.. \
diff --git a/src/modules/audio_processing/Android.mk b/src/modules/audio_processing/Android.mk
index fd283c1..8f6bdde 100644
--- a/src/modules/audio_processing/Android.mk
+++ b/src/modules/audio_processing/Android.mk
@@ -37,6 +37,13 @@
 #   floating point
 #   -DWEBRTC_NS_FLOAT'
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/aec/interface \
@@ -82,6 +89,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../interface \
@@ -134,6 +148,13 @@
     $(MY_WEBRTC_COMMON_DEFS) \
     '-DWEBRTC_APM_UNIT_TEST_FIXED_PROFILE'
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../interface \
diff --git a/src/modules/audio_processing/aec/Android.mk b/src/modules/audio_processing/aec/Android.mk
index 8eebf6c..ee72c8e 100644
--- a/src/modules/audio_processing/aec/Android.mk
+++ b/src/modules/audio_processing/aec/Android.mk
@@ -28,6 +28,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../utility \
diff --git a/src/modules/audio_processing/aecm/Android.mk b/src/modules/audio_processing/aecm/Android.mk
index 5d238fb..fff8f52 100644
--- a/src/modules/audio_processing/aecm/Android.mk
+++ b/src/modules/audio_processing/aecm/Android.mk
@@ -26,6 +26,13 @@
 # Flags passed to both C and C++ files.
 LOCAL_CFLAGS := $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../utility \
@@ -74,6 +81,9 @@
     -mfloat-abi=softfp \
     -flax-vector-conversions
 
+LOCAL_MODULE_TARGET_ARCH := arm
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../../.. \
diff --git a/src/modules/audio_processing/agc/Android.mk b/src/modules/audio_processing/agc/Android.mk
index 1e8969b..6bfd5a6 100644
--- a/src/modules/audio_processing/agc/Android.mk
+++ b/src/modules/audio_processing/agc/Android.mk
@@ -24,6 +24,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../../.. \
diff --git a/src/modules/audio_processing/ns/Android.mk b/src/modules/audio_processing/ns/Android.mk
index d7149e6..3043e7c 100644
--- a/src/modules/audio_processing/ns/Android.mk
+++ b/src/modules/audio_processing/ns/Android.mk
@@ -28,6 +28,13 @@
 # Flags passed to both C and C++ files.
 LOCAL_CFLAGS := $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../utility \
@@ -76,6 +83,9 @@
     -mfloat-abi=softfp \
     -flax-vector-conversions
 
+LOCAL_MODULE_TARGET_ARCH := arm
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/interface \
     $(LOCAL_PATH)/../../.. \
diff --git a/src/modules/audio_processing/utility/Android.mk b/src/modules/audio_processing/utility/Android.mk
index 8ca1281..60a6686 100644
--- a/src/modules/audio_processing/utility/Android.mk
+++ b/src/modules/audio_processing/utility/Android.mk
@@ -26,6 +26,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 # Include paths placed before CFLAGS/CPPFLAGS
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH) \
diff --git a/src/system_wrappers/source/Android.mk b/src/system_wrappers/source/Android.mk
index 923a2fb..4b928b6 100644
--- a/src/system_wrappers/source/Android.mk
+++ b/src/system_wrappers/source/Android.mk
@@ -46,6 +46,13 @@
 LOCAL_CFLAGS := \
     $(MY_WEBRTC_COMMON_DEFS)
 
+LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
+LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
+LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
+LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
+LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
+LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
+
 LOCAL_C_INCLUDES := \
     $(LOCAL_PATH)/../.. \
     $(LOCAL_PATH)/../interface \