summaryrefslogtreecommitdiffstats
path: root/sensorhal/Android.mk
blob: d789d167076cca13ed1a052c6f9dc108c43a3e4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# Copyright (C) 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# Nanohub sensor HAL usage instructions:
#
# Add the following to your device.mk file.
#
# # Enable the nanohub sensor HAL
# TARGET_USES_NANOHUB_SENSORHAL := true
#
# # Nanohub sensor list source file
# NANOHUB_SENSORHAL_SENSORLIST := $(LOCAL_PATH)/sensorhal/sensorlist.cpp
#
# # Sensor HAL name override (optional)
# NANOHUB_SENSORHAL_NAME_OVERRIDE := sensors.nanohub
#
# # Enable lid-state reporting (optional)
# NANOHUB_SENSORHAL_LID_STATE_ENABLED := true
#
# # Enable mag-bias reporting (optional)
# NANOHUB_SENSORHAL_USB_MAG_BIAS_ENABLED := true
#

LOCAL_PATH := $(call my-dir)

ifeq ($(TARGET_USES_NANOHUB_SENSORHAL), true)

COMMON_CFLAGS := -Wall -Werror -Wextra

################################################################################

include $(CLEAR_VARS)

ifeq ($(NANOHUB_SENSORHAL_NAME_OVERRIDE),)
ifeq ($(TARGET_DEVICE),angler_treble)
LOCAL_MODULE := sensors.angler
else
ifeq ($(TARGET_DEVICE),bullhead_treble)
LOCAL_MODULE := sensors.bullhead
else
LOCAL_MODULE := sensors.$(TARGET_DEVICE)
endif
endif
else
LOCAL_MODULE := $(NANOHUB_SENSORHAL_NAME_OVERRIDE)
endif

LOCAL_MODULE_RELATIVE_PATH := hw
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := google
LOCAL_PROPRIETARY_MODULE := true

LOCAL_CFLAGS += $(COMMON_CFLAGS)

LOCAL_C_INCLUDES += \
	device/google/contexthub/firmware/os/inc \
	device/google/contexthub/util/common

LOCAL_SRC_FILES := \
	sensors.cpp \
	../../../../$(NANOHUB_SENSORHAL_SENSORLIST)

LOCAL_HEADER_LIBRARIES := \
    libhardware_headers

LOCAL_SHARED_LIBRARIES := \
	liblog \
	libcutils \
	libhubconnection \
	libstagefright_foundation \
	libutils

ifeq ($(NANOHUB_SENSORHAL_DIRECT_REPORT_ENABLED), true)
LOCAL_CFLAGS += -DDIRECT_REPORT_ENABLED
endif

ifeq ($(NANOHUB_SENSORHAL_DYNAMIC_SENSOR_EXT_ENABLED), true)
LOCAL_CFLAGS += -DDYNAMIC_SENSOR_EXT_ENABLED
LOCAL_SHARED_LIBRARIES += libdynamic_sensor_ext
endif

ifeq ($(NANOHUB_SENSORHAL_LEFTY_SERVICE_ENABLED), true)
LOCAL_CFLAGS += -DLEFTY_SERVICE_ENABLED
LOCAL_SHARED_LIBRARIES += liblefty_service_nanohub
endif

include $(BUILD_SHARED_LIBRARY)

################################################################################

include $(CLEAR_VARS)

LOCAL_MODULE := libhubconnection
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := google
LOCAL_PROPRIETARY_MODULE := true

LOCAL_CFLAGS += $(COMMON_CFLAGS)

ifeq ($(NANOHUB_SENSORHAL_LID_STATE_ENABLED), true)
LOCAL_CFLAGS += -DLID_STATE_REPORTING_ENABLED
endif

ifeq ($(NANOHUB_SENSORHAL_USB_MAG_BIAS_ENABLED), true)
LOCAL_CFLAGS += -DUSB_MAG_BIAS_REPORTING_ENABLED
endif

ifeq ($(NANOHUB_SENSORHAL_DOUBLE_TOUCH_ENABLED), true)
LOCAL_CFLAGS += -DDOUBLE_TOUCH_ENABLED
endif

ifeq ($(NANOHUB_SENSORHAL_DIRECT_REPORT_ENABLED), true)
LOCAL_CFLAGS += -DDIRECT_REPORT_ENABLED
endif

LOCAL_C_INCLUDES += \
    device/google/contexthub/firmware/os/inc

LOCAL_SRC_FILES := \
    hubconnection.cpp \
    directchannel.cpp

LOCAL_STATIC_LIBRARIES := \
    libhubutilcommon

LOCAL_SHARED_LIBRARIES := \
    libcutils \
    libhardware \
    libhardware_legacy \
    liblog \
    libstagefright_foundation \
    libutils \

include $(BUILD_SHARED_LIBRARY)

################################################################################

endif