1ifneq (,$(filter $(TARGET_ARCH), arm arm64))
2
3LOCAL_PATH:= $(call my-dir)
4
5include $(CLEAR_VARS)
6
7# QCameraParameters.h has unused private field.
8# QCamera2Hal.cpp, QCamera3HWI.cpp, etc. use GNU old-style field designator extension.
9# QCamera3PostProc.cpp has unused label.
10# QCamera3HWI.cpp, QCamera3PostProc.cpp etc. have unused variable.
11# QCamera3Channel.cpp compares array to null pointer.
12# QCamera2Factory.cpp, QCamera3HWI.cpp, etc. have unused parameter.
13# QCamera3HWI.cpp has print format error.
14LOCAL_CLANG_CFLAGS += \
15        -Wno-error=unused-private-field \
16        -Wno-error=gnu-designator \
17        -Wno-error=unused-label \
18        -Wno-error=unused-variable \
19        -Wno-error=unused-parameter \
20        -Wno-error=tautological-pointer-compare \
21        -Wno-error=format
22
23LOCAL_SRC_FILES := \
24        util/QCameraCmdThread.cpp \
25        util/QCameraQueue.cpp \
26        util/QCameraFlash.cpp \
27        QCamera2Hal.cpp \
28        QCamera2Factory.cpp
29
30#HAL 3.0 source
31LOCAL_SRC_FILES += \
32        HAL3/QCamera3HWI.cpp \
33        HAL3/QCamera3Mem.cpp \
34        HAL3/QCamera3Stream.cpp \
35        HAL3/QCamera3Channel.cpp \
36        HAL3/QCamera3VendorTags.cpp \
37        HAL3/QCamera3PostProc.cpp
38
39#HAL 1.0 source
40LOCAL_SRC_FILES += \
41        HAL/QCamera2HWI.cpp \
42        HAL/QCameraMem.cpp \
43        HAL/QCameraStateMachine.cpp \
44        HAL/QCameraChannel.cpp \
45        HAL/QCameraStream.cpp \
46        HAL/QCameraPostProc.cpp \
47        HAL/QCamera2HWICallbacks.cpp \
48        HAL/QCameraParameters.cpp \
49        HAL/QCameraThermalAdapter.cpp
50
51LOCAL_CFLAGS := -Wall -Werror
52LOCAL_CFLAGS += -DHAS_MULTIMEDIA_HINTS
53
54#HAL 1.0 Flags
55LOCAL_CFLAGS += -DDEFAULT_DENOISE_MODE_ON -DHAL3 -DVANILLA_HAL
56
57LOCAL_C_INCLUDES := \
58        $(LOCAL_PATH)/stack/common \
59        frameworks/native/include/media/hardware \
60        frameworks/native/include/media/openmax \
61        hardware/qcom/media/libstagefrighthw \
62        system/media/camera/include \
63        $(LOCAL_PATH)/../mm-image-codec/qexif \
64        $(LOCAL_PATH)/../mm-image-codec/qomx_core \
65        $(LOCAL_PATH)/util \
66
67#HAL 1.0 Include paths
68LOCAL_C_INCLUDES += \
69        frameworks/native/include/media/hardware \
70        device/moto/shamu/camera/QCamera2/HAL
71
72LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
73
74#LOCAL_STATIC_LIBRARIES := libqcamera2_util
75LOCAL_C_INCLUDES += \
76        hardware/qcom/display/$(TARGET_BOARD_PLATFORM)/libgralloc
77LOCAL_C_INCLUDES += \
78        hardware/qcom/display/$(TARGET_BOARD_PLATFORM)/libqdutils
79
80LOCAL_SHARED_LIBRARIES := libcamera_client liblog libhardware libutils libcutils libdl libsync
81LOCAL_SHARED_LIBRARIES += libmmcamera_interface libmmjpeg_interface libui libcamera_metadata
82LOCAL_SHARED_LIBRARIES += libqdMetaData
83
84LOCAL_MODULE_RELATIVE_PATH := hw
85LOCAL_MODULE := camera.$(TARGET_BOARD_PLATFORM)
86LOCAL_MODULE_TAGS := optional
87
88LOCAL_32_BIT_ONLY := true
89include $(BUILD_SHARED_LIBRARY)
90
91include $(LOCAL_PATH)/HAL/test/Android.mk
92
93include $(call first-makefiles-under,$(LOCAL_PATH))
94
95endif
96