Android.mk revision 3ccf67822ec88d7e25b2c1b75242bf1a572e67f2
1# Copyright (C) 2008 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14# Modified 2011 by InvenSense, Inc
15
16LOCAL_PATH := $(call my-dir)
17
18#ifneq ($(TARGET_SIMULATOR),true)
19
20# InvenSense fragment of the HAL
21include $(CLEAR_VARS)
22
23LOCAL_MODULE := libinvensense_hal
24LOCAL_MODULE_TAGS := optional
25LOCAL_MODULE_OWNER := invensense
26
27LOCAL_CFLAGS := -DLOG_TAG=\"Sensors\"
28LOCAL_CFLAGS += -DANDROID_KITKAT
29
30ifneq (,$(filter $(TARGET_BUILD_VARIANT),eng userdebug))
31ifneq ($(COMPILE_INVENSENSE_COMPASS_CAL),0)
32LOCAL_CFLAGS += -DINVENSENSE_COMPASS_CAL
33endif
34ifeq ($(COMPILE_THIRD_PARTY_ACCEL),1)
35LOCAL_CFLAGS += -DTHIRD_PARTY_ACCEL
36endif
37else # release builds, default
38LOCAL_CFLAGS += -DINVENSENSE_COMPASS_CAL
39endif
40
41LOCAL_SRC_FILES += SensorBase.cpp
42LOCAL_SRC_FILES += MPLSensor.cpp
43LOCAL_SRC_FILES += MPLSupport.cpp
44LOCAL_SRC_FILES += InputEventReader.cpp
45LOCAL_SRC_FILES += PressureSensor.IIO.secondary.cpp
46
47ifneq (,$(filter $(TARGET_BUILD_VARIANT),eng userdebug))
48ifeq ($(COMPILE_INVENSENSE_COMPASS_CAL),0)
49LOCAL_SRC_FILES += AkmSensor.cpp
50LOCAL_SRC_FILES += CompassSensor.AKM.cpp
51else ifeq ($(COMPILE_INVENSENSE_SENSOR_ON_PRIMARY_BUS), 1)
52LOCAL_SRC_FILES += CompassSensor.IIO.primary.cpp
53LOCAL_CFLAGS += -DSENSOR_ON_PRIMARY_BUS
54else
55LOCAL_SRC_FILES += CompassSensor.IIO.9150.cpp
56endif
57else # release builds, default
58LOCAL_SRC_FILES += CompassSensor.IIO.9150.cpp
59endif #userdebug
60
61LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mllite
62LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mllite/linux
63LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/driver/include
64LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/driver/include/linux
65
66LOCAL_SHARED_LIBRARIES := liblog
67LOCAL_SHARED_LIBRARIES += libcutils
68LOCAL_SHARED_LIBRARIES += libutils
69LOCAL_SHARED_LIBRARIES += libdl
70LOCAL_SHARED_LIBRARIES += libmllite
71
72# Additions for SysPed
73LOCAL_SHARED_LIBRARIES += libmplmpu
74LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mpl
75LOCAL_CPPFLAGS += -DLINUX=1
76LOCAL_PRELINK_MODULE := false
77
78LOCAL_SHARED_LIBRARIES += libmllite
79LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mllite
80LOCAL_CPPFLAGS += -DLINUX=1
81LOCAL_PRELINK_MODULE := false
82
83include $(BUILD_SHARED_LIBRARY)
84
85#endif # !TARGET_SIMULATOR
86
87# Build a temporary HAL that links the InvenSense .so
88include $(CLEAR_VARS)
89ifeq ($(filter eng, userdebug, $(TARGET_BUILD_VARIANT)),)
90ifneq ($(filter manta full_grouper tilapia, $(TARGET_PRODUCT)),)
91LOCAL_MODULE := sensors.full_grouper
92else
93ifneq ($(filter aosp_hammerhead, $(TARGET_PRODUCT)),)
94LOCAL_MODULE := sensors.hammerhead
95endif
96ifneq ($(filter platina dory guppy, $(TARGET_PRODUCT)),)
97LOCAL_MODULE := sensors.invensense
98endif
99endif
100else    # eng & userdebug builds
101LOCAL_MODULE := sensors.invensense
102endif   # eng & userdebug builds
103LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw
104
105LOCAL_SHARED_LIBRARIES += libmplmpu
106LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mllite
107LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mllite/linux
108LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/mpl
109LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/driver/include
110LOCAL_C_INCLUDES += $(LOCAL_PATH)/software/core/driver/include/linux
111
112LOCAL_PRELINK_MODULE := false
113LOCAL_MODULE_TAGS := optional
114LOCAL_CFLAGS := -DLOG_TAG=\"Sensors\"
115LOCAL_CFLAGS += -DANDROID_KITKAT
116
117ifneq (,$(filter $(TARGET_BUILD_VARIANT),eng userdebug))
118ifneq ($(COMPILE_INVENSENSE_COMPASS_CAL),0)
119LOCAL_CFLAGS += -DINVENSENSE_COMPASS_CAL
120endif
121ifeq ($(COMPILE_THIRD_PARTY_ACCEL),1)
122LOCAL_CFLAGS += -DTHIRD_PARTY_ACCEL
123endif
124ifeq ($(COMPILE_INVENSENSE_SENSOR_ON_PRIMARY_BUS), 1)
125LOCAL_SRC_FILES += CompassSensor.IIO.primary.cpp
126LOCAL_CFLAGS += -DSENSOR_ON_PRIMARY_BUS
127else
128LOCAL_SRC_FILES += CompassSensor.IIO.9150.cpp
129endif
130else # release builds, default
131LOCAL_SRC_FILES += CompassSensor.IIO.9150.cpp
132endif # userdebug
133
134ifeq (,$(filter $(TARGET_BUILD_VARIANT),eng userdebug))
135ifneq ($(filter manta grouper tilapia, $(TARGET_DEVICE)),)
136# it's already defined in some other Makefile for production builds
137#LOCAL_SRC_FILES := sensors_mpl.cpp
138else
139LOCAL_SRC_FILES := sensors_mpl.cpp
140endif
141else    # eng & userdebug builds
142LOCAL_SRC_FILES := sensors_mpl.cpp
143endif   # eng & userdebug builds
144
145LOCAL_SHARED_LIBRARIES := libinvensense_hal
146LOCAL_SHARED_LIBRARIES += libcutils
147LOCAL_SHARED_LIBRARIES += libutils
148LOCAL_SHARED_LIBRARIES += libdl
149LOCAL_SHARED_LIBRARIES += liblog
150LOCAL_SHARED_LIBRARIES += libmllite
151include $(BUILD_SHARED_LIBRARY)
152
153include $(CLEAR_VARS)
154LOCAL_MODULE := libmplmpu
155LOCAL_SRC_FILES := libmplmpu.so
156LOCAL_MODULE_TAGS := optional
157LOCAL_MODULE_OWNER := invensense
158LOCAL_MODULE_SUFFIX := .so
159LOCAL_MODULE_CLASS := SHARED_LIBRARIES
160LOCAL_MODULE_PATH := $(TARGET_OUT)/lib
161OVERRIDE_BUILT_MODULE_PATH := $(TARGET_OUT_INTERMEDIATE_LIBRARIES)
162include $(BUILD_PREBUILT)
163
164include $(CLEAR_VARS)
165LOCAL_MODULE := libmllite
166LOCAL_SRC_FILES := libmllite.so
167LOCAL_MODULE_TAGS := optional
168LOCAL_MODULE_OWNER := invensense
169LOCAL_MODULE_SUFFIX := .so
170LOCAL_MODULE_CLASS := SHARED_LIBRARIES
171LOCAL_MODULE_PATH := $(TARGET_OUT)/lib
172OVERRIDE_BUILT_MODULE_PATH := $(TARGET_OUT_INTERMEDIATE_LIBRARIES)
173include $(BUILD_PREBUILT)
174
175