blob: 822195f49392276af6116271519cb6833c903327
1 | LOCAL_PATH:= $(call my-dir) |
2 | CAMHAL_V3:=true |
3 | |
4 | ifneq ($(CAMHAL_V3),true) |
5 | |
6 | CAMHAL_GIT_VERSION="$(shell cd $(LOCAL_PATH);git log | grep commit -m 1 | cut -d' ' -f 2)" |
7 | CAMHAL_GIT_UNCOMMIT_FILE_NUM=$(shell cd $(LOCAL_PATH);git diff | grep +++ -c) |
8 | CAMHAL_LAST_CHANGED="$(shell cd $(LOCAL_PATH);git log | grep Date -m 1)" |
9 | CAMHAL_BUILD_TIME=" $(shell date)" |
10 | CAMHAL_BUILD_NAME=" $(shell echo ${LOGNAME})" |
11 | CAMHAL_BRANCH_NAME="$(shell cd $(LOCAL_PATH);git branch -a | sed -n '/'*'/p')" |
12 | CAMHAL_BUILD_MODE=$(shell echo ${TARGET_BUILD_VARIANT}) |
13 | CAMHAL_HOSTNAME="$(shell hostname)" |
14 | CAMHAL_IP="$(shell ifconfig eth0|grep -oE '([0-9]{1,3}\.?){4}'|head -n 1)" |
15 | CAMHAL_PATH="$(shell pwd)/$(LOCAL_PATH)" |
16 | |
17 | CAMERA_HAL_SRC := \ |
18 | CameraHal_Module.cpp \ |
19 | CameraHal.cpp \ |
20 | CameraHalUtilClasses.cpp \ |
21 | AppCallbackNotifier.cpp \ |
22 | ANativeWindowDisplayAdapter.cpp \ |
23 | CameraProperties.cpp \ |
24 | MemoryManager.cpp \ |
25 | Encoder_libjpeg.cpp \ |
26 | NV12_resize.c |
27 | #SensorListener.cpp \ |
28 | |
29 | CAMERA_COMMON_SRC:= \ |
30 | CameraParameters.cpp \ |
31 | ExCameraParameters.cpp \ |
32 | CameraHalCommon.cpp |
33 | |
34 | CAMERA_V4L_SRC:= \ |
35 | BaseCameraAdapter.cpp \ |
36 | V4LCameraAdapter/V4LCameraAdapter.cpp |
37 | |
38 | CAMERA_USB_FMT_SRC:= \ |
39 | usb_fmt.cpp |
40 | CAMERA_UTILS_SRC:= \ |
41 | utils/ErrorUtils.cpp \ |
42 | utils/MessageQueue.cpp \ |
43 | utils/Semaphore.cpp \ |
44 | utils/util.cpp |
45 | |
46 | CAMERA_HAL_VERTURAL_CAMERA_SRC:= \ |
47 | vircam/VirtualCamHal.cpp \ |
48 | vircam/AppCbNotifier.cpp \ |
49 | vircam/V4LCamAdpt.cpp |
50 | |
51 | CAMERA_HAL_HW_JPEGENC_SRC:=\ |
52 | jpegenc_hw/jpegenc.cpp |
53 | |
54 | include $(CLEAR_VARS) |
55 | |
56 | LOCAL_SRC_FILES:= \ |
57 | $(CAMERA_HAL_SRC) \ |
58 | $(CAMERA_V4L_SRC) \ |
59 | $(CAMERA_COMMON_SRC) \ |
60 | $(CAMERA_UTILS_SRC) \ |
61 | $(CAMERA_USB_FMT_SRC) |
62 | |
63 | ifeq ($(BOARD_HAVE_HW_JPEGENC),true) |
64 | LOCAL_SRC_FILES += $(CAMERA_HAL_HW_JPEGENC_SRC) |
65 | endif |
66 | |
67 | MESON_GRALLOC_DIR ?= hardware/amlogic/gralloc |
68 | |
69 | LOCAL_C_INCLUDES += \ |
70 | $(LOCAL_PATH)/inc/ \ |
71 | $(LOCAL_PATH)/utils \ |
72 | $(LOCAL_PATH)/inc/V4LCameraAdapter \ |
73 | frameworks/native/include/ui \ |
74 | frameworks/native/include/utils \ |
75 | frameworks/base/include/media/stagefright \ |
76 | external/jhead/ \ |
77 | external/jpeg/ \ |
78 | frameworks/native/include/media/hardware \ |
79 | system/core/include/ion \ |
80 | $(LOCAL_PATH)/inc/mjpeg/ \ |
81 | $(MESON_GRALLOC_DIR) \ |
82 | $(TOP)/system/media/camera/include \ |
83 | system/core/include/utils \ |
84 | system/core/libion/include/ \ |
85 | system/core/libion/kernel-headers \ |
86 | external/libyuv/files/include/ \ |
87 | |
88 | LOCAL_STATIC_LIBRARIES := \ |
89 | libyuv_static \ |
90 | |
91 | ifeq ($(BOARD_HAVE_HW_JPEGENC),true) |
92 | LOCAL_C_INCLUDES += \ |
93 | $(LOCAL_PATH)/inc/jpegenc_hw/ |
94 | endif |
95 | |
96 | LOCAL_C_INCLUDES_VIRCAM := \ |
97 | $(LOCAL_PATH)/vircam/inc |
98 | |
99 | |
100 | LOCAL_SHARED_LIBRARIES:= \ |
101 | libui \ |
102 | libbinder \ |
103 | libutils \ |
104 | libcutils \ |
105 | libcamera_client \ |
106 | libjhead \ |
107 | libjpeg \ |
108 | libgui \ |
109 | libion |
110 | |
111 | LOCAL_CFLAGS := -fno-short-enums -DCOPY_IMAGE_BUFFER |
112 | |
113 | LOCAL_CFLAGS+=-DHAVE_VERSION_INFO |
114 | LOCAL_CFLAGS+=-DCAMHAL_GIT_VERSION=\"${CAMHAL_GIT_VERSION}${CAMHAL_GIT_DIRTY}\" |
115 | LOCAL_CFLAGS+=-DCAMHAL_BRANCH_NAME=\"${CAMHAL_BRANCH_NAME}\" |
116 | LOCAL_CFLAGS+=-DCAMHAL_LAST_CHANGED=\"${CAMHAL_LAST_CHANGED}\" |
117 | LOCAL_CFLAGS+=-DCAMHAL_BUILD_TIME=\"${CAMHAL_BUILD_TIME}\" |
118 | LOCAL_CFLAGS+=-DCAMHAL_BUILD_NAME=\"${CAMHAL_BUILD_NAME}\" |
119 | LOCAL_CFLAGS+=-DCAMHAL_GIT_UNCOMMIT_FILE_NUM=${CAMHAL_GIT_UNCOMMIT_FILE_NUM} |
120 | LOCAL_CFLAGS+=-DCAMHAL_HOSTNAME=\"${CAMHAL_HOSTNAME}\" |
121 | LOCAL_CFLAGS+=-DCAMHAL_IP=\"${CAMHAL_IP}\" |
122 | LOCAL_CFLAGS+=-DCAMHAL_PATH=\"${CAMHAL_PATH}\" |
123 | |
124 | ifeq ($(CAMHAL_BUILD_MODE),user) |
125 | LOCAL_CFLAGS += -DCAMHAL_USER_MODE |
126 | endif |
127 | ifeq ($(BOARD_HAVE_FRONT_CAM),true) |
128 | LOCAL_CFLAGS += -DAMLOGIC_FRONT_CAMERA_SUPPORT |
129 | endif |
130 | |
131 | ifeq ($(BOARD_HAVE_BACK_CAM),true) |
132 | LOCAL_CFLAGS += -DAMLOGIC_BACK_CAMERA_SUPPORT |
133 | endif |
134 | |
135 | ifneq ($(IS_CAM_NONBLOCK),false) |
136 | LOCAL_CFLAGS += -DAMLOGIC_CAMERA_NONBLOCK_SUPPORT |
137 | endif |
138 | |
139 | ifeq ($(BOARD_USE_USB_CAMERA),true) |
140 | LOCAL_CFLAGS += -DAMLOGIC_USB_CAMERA_SUPPORT |
141 | #descrease the number of camera captrue frames,and let skype run smoothly |
142 | ifeq ($(BOARD_USB_CAMREA_DECREASE_FRAMES), true) |
143 | LOCAL_CFLAGS += -DAMLOGIC_USB_CAMERA_DECREASE_FRAMES |
144 | endif |
145 | ifeq ($(BOARD_USBCAM_IS_TWOCH),true) |
146 | LOCAL_CFLAGS += -DAMLOGIC_TWO_CH_UVC |
147 | endif |
148 | else |
149 | ifeq ($(BOARD_HAVE_MULTI_CAMERAS),true) |
150 | LOCAL_CFLAGS += -DAMLOGIC_MULTI_CAMERA_SUPPORT |
151 | endif |
152 | ifeq ($(BOARD_HAVE_FLASHLIGHT),true) |
153 | LOCAL_CFLAGS += -DAMLOGIC_FLASHLIGHT_SUPPORT |
154 | endif |
155 | endif |
156 | |
157 | ifeq ($(BOARD_ENABLE_VIDEO_SNAPSHOT),true) |
158 | LOCAL_CFLAGS += -DAMLOGIC_ENABLE_VIDEO_SNAPSHOT |
159 | endif |
160 | |
161 | ifeq ($(BOARD_HAVE_VIRTUAL_CAMERA),true) |
162 | LOCAL_CFLAGS += -DAMLOGIC_VIRTUAL_CAMERA_SUPPORT |
163 | |
164 | ifneq ($(IS_VIRTUAL_CAMERA_NONBLOCK),false) |
165 | LOCAL_CFLAGS += -DAMLOGIC_VCAM_NONBLOCK_SUPPORT |
166 | endif |
167 | |
168 | LOCAL_SRC_FILES+= \ |
169 | $(CAMERA_HAL_VERTURAL_CAMERA_SRC) |
170 | LOCAL_C_INCLUDES += \ |
171 | $(LOCAL_C_INCLUDES_VIRCAM) |
172 | endif |
173 | |
174 | ifeq ($(BOARD_HAVE_HW_JPEGENC),true) |
175 | LOCAL_CFLAGS += -DAMLOGIC_HW_JPEGENC |
176 | endif |
177 | |
178 | LOCAL_KK=0 |
179 | ifeq ($(GPU_TYPE),t83x) |
180 | LOCAL_KK:=1 |
181 | endif |
182 | ifeq ($(GPU_ARCH),midgard) |
183 | LOCAL_KK:=1 |
184 | endif |
185 | ifeq ($(LOCAL_KK),1) |
186 | LOCAL_CFLAGS += -DMALI_AFBC_GRALLOC=1 |
187 | else |
188 | LOCAL_CFLAGS += -DMALI_AFBC_GRALLOC=0 |
189 | endif |
190 | |
191 | LOCAL_MODULE_RELATIVE_PATH := hw |
192 | LOCAL_MODULE:= camera.amlogic |
193 | LOCAL_MODULE_TAGS:= optional |
194 | |
195 | #include $(BUILD_HEAPTRACKED_SHARED_LIBRARY) |
196 | include $(BUILD_SHARED_LIBRARY) |
197 | |
198 | else |
199 | |
200 | include $(LOCAL_PATH)/v3/Android.mk |
201 | |
202 | endif |
203 | |
204 | include $(CLEAR_VARS) |
205 |