1#Common headers
2common_includes := $(LOCAL_PATH)/../libgralloc
3common_includes += $(LOCAL_PATH)/../liboverlay
4common_includes += $(LOCAL_PATH)/../libcopybit
5common_includes += $(LOCAL_PATH)/../libqdutils
6common_includes += $(LOCAL_PATH)/../libhwcomposer
7common_includes += $(LOCAL_PATH)/../libexternal
8common_includes += $(LOCAL_PATH)/../libqservice
9common_includes += $(LOCAL_PATH)/../libvirtual
10
11ifeq ($(TARGET_USES_POST_PROCESSING),true)
12    common_flags     += -DUSES_POST_PROCESSING
13    common_includes  += $(TARGET_OUT_HEADERS)/pp/inc
14endif
15
16common_header_export_path := qcom/display
17
18#Common libraries external to display HAL
19common_libs := liblog libutils libcutils libhardware
20
21#Common C flags
22common_flags := -DDEBUG_CALC_FPS -Wno-missing-field-initializers
23#TODO: Add -Werror back once all the current warnings are fixed
24common_flags += -Wconversion -Wall
25
26ifeq ($(ARCH_ARM_HAVE_NEON),true)
27    common_flags += -D__ARM_HAVE_NEON
28endif
29
30ifeq ($(call is-board-platform-in-list, msm8974 msm8226 msm8610 apq8084 \
31        mpq8092 msm_bronze msm8916 msm8994), true)
32    common_flags += -DVENUS_COLOR_FORMAT
33    common_flags += -DMDSS_TARGET
34endif
35
36ifeq ($(TARGET_HAS_VSYNC_FAILURE_FALLBACK), true)
37    common_flags += -DVSYNC_FAILURE_FALLBACK
38endif
39
40ifeq ($(DISPLAY_DEBUG_SWAPINTERVAL),true)
41    common_flags += -DDEBUG_SWAPINTERVAL
42endif
43
44common_flags += -D__STDC_FORMAT_MACROS
45
46common_deps  :=
47kernel_includes :=
48
49# Executed only on QCOM BSPs
50ifeq ($(TARGET_USES_QCOM_BSP),true)
51# Enable QCOM Display features
52    common_flags += -DQCOM_BSP
53endif
54
55ifneq (,$(DISPLAY_FEATURE_MAX_ROT_SESSION))
56    common_flags += -DTARGET_SPECIFIC_MAX_ROT_SESSION=$(DISPLAY_FEATURE_MAX_ROT_SESSION)
57endif
58
59ifeq ($(call is-vendor-board-platform,QCOM),true)
60# This check is to pick the kernel headers from the right location.
61# If the macro above is defined, we make the assumption that we have the kernel
62# available in the build tree.
63# If the macro is not present, the headers are picked from hardware/qcom/msmXXXX
64# failing which, they are picked from bionic.
65    common_deps += $(BOARD_KERNEL_HEADER_DEPENDENCIES)
66    kernel_includes += $(BOARD_KERNEL_HEADER_DIR)
67endif
68