mm-video-v4l2: Add conditions to enable integer overflow sanitization

Add condition to enable or disable integer overflow sanitization based
on TARGET_ENABLE_VIDC_INTSAN condition flag.

Change-Id: Ie370e815955c1f370b9cca01d2881f229932afde
diff --git a/conf_files/kona/kona.mk b/conf_files/kona/kona.mk
index 14c7446..9001279 100644
--- a/conf_files/kona/kona.mk
+++ b/conf_files/kona/kona.mk
@@ -10,7 +10,11 @@
     $(CONFIG_PATH)/mediacodec-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \
     $(CONFIG_PATH)/system_properties.xml:$(TARGET_COPY_OUT_VENDOR)/etc/system_properties.xml
 
+# Enable CLANG/LLVM integer-overflow sanitization
+TARGET_ENABLE_VIDC_INTSAN := false
+
 # Enable DIAG mode for CLANG/LLVM integer-overflow sanitization
+# TARGET_ENABLE_VIDC_INTSAN must be set to 'true' before enabling DIAG mode
 # NOTE: DIAG mode should be used only for debug builds
 TARGET_ENABLE_VIDC_INTSAN_DIAG := false
 
diff --git a/libc2dcolorconvert/Android.mk b/libc2dcolorconvert/Android.mk
index 675ebc7..1e7b1a5 100644
--- a/libc2dcolorconvert/Android.mk
+++ b/libc2dcolorconvert/Android.mk
@@ -2,11 +2,13 @@
 
 include $(CLEAR_VARS)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_SRC_FILES := \
         C2DColorConverter.cpp
diff --git a/libplatformconfig/Android.mk b/libplatformconfig/Android.mk
index b59682f..bde1add 100644
--- a/libplatformconfig/Android.mk
+++ b/libplatformconfig/Android.mk
@@ -19,11 +19,13 @@
 
 LOCAL_CFLAGS := $(COMMON_CFLAGS) $(libplatformconfig-def)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_SHARED_LIBRARIES += \
             libexpat \
diff --git a/libstagefrighthw/Android.mk b/libstagefrighthw/Android.mk
index cce48e8..5c19539 100644
--- a/libstagefrighthw/Android.mk
+++ b/libstagefrighthw/Android.mk
@@ -30,11 +30,13 @@
 
 LOCAL_CFLAGS := $(PV_CFLAGS_MINUS_VISIBILITY)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 ifeq ($(PLATFORM_SDK_VERSION), 18)  #JB_MR2
 LOCAL_CFLAGS += -DANDROID_JELLYBEAN_MR2=1
diff --git a/mm-core/Android.mk b/mm-core/Android.mk
index 2be2844..f20c0eb 100644
--- a/mm-core/Android.mk
+++ b/mm-core/Android.mk
@@ -72,10 +72,13 @@
 LOCAL_HEADER_LIBRARIES := \
         libutils_headers
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
-ifeq ($(TARGET_MSM_VIDC_INTSAN_DIAG),true)
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
+$(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_PRELINK_MODULE    := false
 LOCAL_MODULE            := libOmxCore
@@ -124,10 +127,13 @@
 endif
 LOCAL_CFLAGS            := $(OMXCORE_CFLAGS)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
-ifeq ($(TARGET_MSM_VIDC_INTSAN_DIAG),true)
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
+$(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_SRC_FILES         := src/common/omx_core_cmp.cpp
 LOCAL_SRC_FILES         += src/common/qc_omx_core.c
diff --git a/mm-video-v4l2/vidc/common/Android.mk b/mm-video-v4l2/vidc/common/Android.mk
index 9896cb1..9625fc0 100644
--- a/mm-video-v4l2/vidc/common/Android.mk
+++ b/mm-video-v4l2/vidc/common/Android.mk
@@ -41,11 +41,13 @@
 LOCAL_C_INCLUDES                := $(libmm-vidc-inc)
 
 # The type of overflow check must be specified for static libraries
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := signed-integer-overflow unsigned-integer-overflow
 endif
+endif
 
 LOCAL_PRELINK_MODULE      := false
 LOCAL_SHARED_LIBRARIES    := liblog libcutils libdl
diff --git a/mm-video-v4l2/vidc/vdec/Android.mk b/mm-video-v4l2/vidc/vdec/Android.mk
index cab611b..08d3490 100644
--- a/mm-video-v4l2/vidc/vdec/Android.mk
+++ b/mm-video-v4l2/vidc/vdec/Android.mk
@@ -103,11 +103,13 @@
 LOCAL_VENDOR_MODULE             := true
 LOCAL_CFLAGS                    := $(libmm-vdec-def) -Werror
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_HEADER_LIBRARIES := \
         media_plugin_headers \
@@ -148,11 +150,13 @@
 LOCAL_VENDOR_MODULE           := true
 LOCAL_CFLAGS                  := $(libmm-vdec-def)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_HEADER_LIBRARIES := \
         media_plugin_headers \
diff --git a/mm-video-v4l2/vidc/venc/Android.mk b/mm-video-v4l2/vidc/venc/Android.mk
index 661a576..adf9aed 100644
--- a/mm-video-v4l2/vidc/venc/Android.mk
+++ b/mm-video-v4l2/vidc/venc/Android.mk
@@ -83,11 +83,13 @@
 LOCAL_VENDOR_MODULE             := true
 LOCAL_CFLAGS                    := $(libmm-venc-def)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_HEADER_LIBRARIES := \
         media_plugin_headers \
@@ -131,11 +133,13 @@
 LOCAL_VENDOR_MODULE             := true
 LOCAL_CFLAGS                    := $(libmm-venc-def)
 
+ifeq ($(TARGET_ENABLE_VIDC_INTSAN), true)
 LOCAL_SANITIZE := integer_overflow
 ifeq ($(TARGET_ENABLE_VIDC_INTSAN_DIAG), true)
 $(warning INTSAN_DIAG_ENABLED)
 LOCAL_SANITIZE_DIAG := integer_overflow
 endif
+endif
 
 LOCAL_HEADER_LIBRARIES := \
         media_plugin_headers \