• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
15LOCAL_PATH := $(call my-dir)
16
17# HAL module implemenation, not prelinked and stored in
18# hw/<OVERLAY_HARDWARE_MODULE_ID>.<ro.product.board>.so
19include $(CLEAR_VARS)
20
21LOCAL_PRELINK_MODULE := false
22LOCAL_MODULE_RELATIVE_PATH := hw
23LOCAL_SHARED_LIBRARIES := liblog libcutils libdrm \
24                          libwsbm libutils libhardware \
25                          libva libva-tpi libva-android libsync
26
27LOCAL_HEADER_LIBRARIES := libsystem_headers
28
29LOCAL_SRC_FILES := \
30    ../../common/base/Drm.cpp \
31    ../../common/base/HwcLayer.cpp \
32    ../../common/base/HwcLayerList.cpp \
33    ../../common/base/Hwcomposer.cpp \
34    ../../common/base/HwcModule.cpp \
35    ../../common/base/DisplayAnalyzer.cpp \
36    ../../common/base/VsyncManager.cpp \
37    ../../common/buffers/BufferCache.cpp \
38    ../../common/buffers/GraphicBuffer.cpp \
39    ../../common/buffers/BufferManager.cpp \
40    ../../common/devices/PhysicalDevice.cpp \
41    ../../common/devices/PrimaryDevice.cpp \
42    ../../common/devices/ExternalDevice.cpp \
43    ../../common/devices/VirtualDevice.cpp \
44    ../../common/observers/UeventObserver.cpp \
45    ../../common/observers/VsyncEventObserver.cpp \
46    ../../common/observers/SoftVsyncObserver.cpp \
47    ../../common/observers/MultiDisplayObserver.cpp \
48    ../../common/planes/DisplayPlane.cpp \
49    ../../common/planes/DisplayPlaneManager.cpp \
50    ../../common/utils/Dump.cpp
51
52
53LOCAL_SRC_FILES += \
54    ../../ips/common/BlankControl.cpp \
55    ../../ips/common/HdcpControl.cpp \
56    ../../ips/common/DrmControl.cpp \
57    ../../ips/common/VsyncControl.cpp \
58    ../../ips/common/PrepareListener.cpp \
59    ../../ips/common/OverlayPlaneBase.cpp \
60    ../../ips/common/SpritePlaneBase.cpp \
61    ../../ips/common/PixelFormat.cpp \
62    ../../ips/common/GrallocBufferBase.cpp \
63    ../../ips/common/GrallocBufferMapperBase.cpp \
64    ../../ips/common/TTMBufferMapper.cpp \
65    ../../ips/common/DrmConfig.cpp \
66    ../../ips/common/VideoPayloadManager.cpp \
67    ../../ips/common/Wsbm.cpp \
68    ../../ips/common/WsbmWrapper.c \
69    ../../ips/common/RotationBufferProvider.cpp
70
71LOCAL_SRC_FILES += \
72    ../../ips/tangier/TngGrallocBuffer.cpp \
73    ../../ips/tangier/TngGrallocBufferMapper.cpp \
74    ../../ips/tangier/TngDisplayQuery.cpp \
75    ../../ips/tangier/TngDisplayContext.cpp
76
77
78LOCAL_SRC_FILES += \
79    ../../ips/anniedale/AnnPlaneManager.cpp \
80    ../../ips/anniedale/AnnOverlayPlane.cpp \
81    ../../ips/anniedale/AnnRGBPlane.cpp \
82    ../../ips/anniedale/AnnCursorPlane.cpp \
83    ../../ips/anniedale/PlaneCapabilities.cpp
84
85
86LOCAL_SRC_FILES += \
87    PlatfBufferManager.cpp \
88    PlatFactory.cpp
89
90
91LOCAL_C_INCLUDES := $(addprefix $(LOCAL_PATH)/../../../, $(SGX_INCLUDES)) \
92    frameworks/native/include/media/openmax \
93    $(TARGET_OUT_HEADERS)/khronos/openmax \
94    frameworks/native/opengl/include \
95    hardware/libhardware_legacy/include/hardware_legacy \
96    prebuilts/intel/vendor/intel/hardware/prebuilts/$(REF_DEVICE_NAME)/rgx \
97    prebuilts/intel/vendor/intel/hardware/prebuilts/$(REF_DEVICE_NAME)/rgx/include \
98    vendor/intel/hardware/PRIVATE/widi/libhwcwidi/ \
99    system/core \
100    system/core/libsync/include \
101    $(TARGET_OUT_HEADERS)/drm \
102    $(TARGET_OUT_HEADERS)/libdrm \
103    $(TARGET_OUT_HEADERS)/libdrm/shared-core \
104    $(TARGET_OUT_HEADERS)/libwsbm/wsbm \
105    $(TARGET_OUT_HEADERS)/libttm \
106    $(TARGET_OUT_HEADERS)/libva
107
108LOCAL_C_INCLUDES += $(LOCAL_PATH) \
109    $(LOCAL_PATH)/../../include \
110    $(LOCAL_PATH)/../../include/pvr/hal \
111    $(LOCAL_PATH)/../../common/base \
112    $(LOCAL_PATH)/../../common/buffers \
113    $(LOCAL_PATH)/../../common/devices \
114    $(LOCAL_PATH)/../../common/observers \
115    $(LOCAL_PATH)/../../common/planes \
116    $(LOCAL_PATH)/../../common/utils \
117    $(LOCAL_PATH)/../../ips/ \
118    $(LOCAL_PATH)/
119
120
121LOCAL_MODULE_TAGS := optional
122LOCAL_MODULE := hwcomposer.$(TARGET_BOARD_PLATFORM)
123LOCAL_CFLAGS += -DLINUX
124
125ifeq ($(INTEL_WIDI), true)
126   LOCAL_SHARED_LIBRARIES += libhwcwidi libbinder
127   LOCAL_CFLAGS += -DINTEL_WIDI
128endif
129
130ifeq ($(TARGET_HAS_MULTIPLE_DISPLAY),true)
131   LOCAL_SHARED_LIBRARIES += libmultidisplay libbinder
132   LOCAL_CFLAGS += -DTARGET_HAS_MULTIPLE_DISPLAY
133endif
134
135LOCAL_COPY_HEADERS := \
136    ../../include/pvr/hal/img_gralloc.h \
137    ../../include/pvr/hal/img_gralloc1.h \
138    ../../include/pvr/hal/img_gralloc_common_public.h \
139    ../../include/pvr/hal/hal_public.h
140LOCAL_COPY_HEADERS_TO := pvr/hal
141
142ifneq ($(TARGET_BUILD_VARIANT),user)
143   LOCAL_CFLAGS += -DHWC_TRACE_FPS
144endif
145
146include $(BUILD_SHARED_LIBRARY)
147
148