OSDN Git Service

change hal name to gralloc.drm
[android-x86/external-drm_gralloc.git] / Android.mk
1 # Copyright (C) 2010 Chia-I Wu <olvaffe@gmail.com>
2 # Copyright (C) 2010-2011 LunarG Inc.
3
4 # Permission is hereby granted, free of charge, to any person obtaining a
5 # copy of this software and associated documentation files (the "Software"),
6 # to deal in the Software without restriction, including without limitation
7 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 # and/or sell copies of the Software, and to permit persons to whom the
9 # Software is furnished to do so, subject to the following conditions:
10
11 # The above copyright notice and this permission notice shall be included
12 # in all copies or substantial portions of the Software.
13
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20 # DEALINGS IN THE SOFTWARE.
21
22 # Android.mk for drm_gralloc
23
24 DRM_GPU_DRIVERS := $(strip $(filter-out swrast, $(BOARD_GPU_DRIVERS)))
25
26 intel_drivers := i915 i965 i915g ilo
27 radeon_drivers := r300g r600g
28 nouveau_drivers := nouveau
29 vmwgfx_drivers := vmwgfx
30
31 valid_drivers := \
32         prebuilt \
33         $(intel_drivers) \
34         $(radeon_drivers) \
35         $(nouveau_drivers) \
36         $(vmwgfx_drivers)
37
38 # warn about invalid drivers
39 invalid_drivers := $(filter-out $(valid_drivers), $(DRM_GPU_DRIVERS))
40 ifneq ($(invalid_drivers),)
41 $(warning invalid GPU drivers: $(invalid_drivers))
42 # tidy up
43 DRM_GPU_DRIVERS := $(filter-out $(invalid_drivers), $(DRM_GPU_DRIVERS))
44 endif
45
46 ifneq ($(filter $(vmwgfx_drivers), $(DRM_GPU_DRIVERS)),)
47 DRM_USES_PIPE := true
48 else
49 DRM_USES_PIPE := false
50 endif
51
52 ifneq ($(strip $(DRM_GPU_DRIVERS)),)
53
54 LOCAL_PATH := $(call my-dir)
55
56
57 # Use the PREBUILT libraries
58 ifeq ($(strip $(DRM_GPU_DRIVERS)),prebuilt)
59
60 include $(CLEAR_VARS)
61 LOCAL_MODULE := libgralloc_drm
62 LOCAL_MODULE_TAGS := optional
63 LOCAL_SRC_FILES := ../../$(BOARD_GPU_DRIVER_BINARY)
64 LOCAL_MODULE_CLASS := SHARED_LIBRARIES
65 LOCAL_MODULE_SUFFIX := $(TARGET_SHLIB_SUFFIX)
66 include $(BUILD_PREBUILT)
67
68 include $(CLEAR_VARS)
69 LOCAL_MODULE := gralloc.$(TARGET_PRODUCT)
70 LOCAL_MODULE_TAGS := optional
71 LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw/
72 LOCAL_SRC_FILES := ../../$(BOARD_GPU_DRIVER_BINARY)
73 LOCAL_MODULE_CLASS := SHARED_LIBRARIES
74 LOCAL_MODULE_SUFFIX := $(TARGET_SHLIB_SUFFIX)
75 include $(BUILD_PREBUILT)
76
77 # Use the sources
78 else
79
80 include $(CLEAR_VARS)
81 LOCAL_MODULE := libgralloc_drm
82 LOCAL_MODULE_TAGS := optional
83
84 LOCAL_SRC_FILES := \
85         gralloc_drm.c \
86         gralloc_drm_kms.c
87
88 LOCAL_C_INCLUDES := \
89         external/drm \
90         external/drm/include/drm
91
92 LOCAL_SHARED_LIBRARIES := \
93         libdrm \
94         liblog \
95         libcutils \
96         libhardware_legacy \
97
98 ifneq ($(filter $(intel_drivers), $(DRM_GPU_DRIVERS)),)
99 LOCAL_SRC_FILES += gralloc_drm_intel.c
100 LOCAL_C_INCLUDES += external/drm/intel
101 LOCAL_CFLAGS += -DENABLE_INTEL
102 LOCAL_SHARED_LIBRARIES += libdrm_intel
103 endif
104
105 ifneq ($(filter $(radeon_drivers), $(DRM_GPU_DRIVERS)),)
106 LOCAL_SRC_FILES += gralloc_drm_radeon.c
107 LOCAL_C_INCLUDES += external/drm/radeon
108 LOCAL_CFLAGS += -DENABLE_RADEON
109 LOCAL_SHARED_LIBRARIES += libdrm_radeon
110 endif
111
112 ifneq ($(filter $(nouveau_drivers), $(DRM_GPU_DRIVERS)),)
113 LOCAL_SRC_FILES += gralloc_drm_nouveau.c
114 LOCAL_C_INCLUDES += external/drm/nouveau
115 LOCAL_CFLAGS += -DENABLE_NOUVEAU
116 LOCAL_SHARED_LIBRARIES += libdrm_nouveau
117 endif
118
119 ifeq ($(strip $(DRM_USES_PIPE)),true)
120 LOCAL_SRC_FILES += gralloc_drm_pipe.c
121 LOCAL_CFLAGS += -DENABLE_PIPE
122 LOCAL_C_INCLUDES += \
123         external/mesa/include \
124         external/mesa/src/gallium/include \
125         external/mesa/src/gallium/winsys \
126         external/mesa/src/gallium/drivers \
127         external/mesa/src/gallium/auxiliary
128
129 ifneq ($(filter r600g, $(DRM_GPU_DRIVERS)),)
130 LOCAL_CFLAGS += -DENABLE_PIPE_R600
131 LOCAL_STATIC_LIBRARIES += \
132         libmesa_pipe_r600 \
133         libmesa_winsys_radeon
134 endif
135 ifneq ($(filter vmwgfx, $(DRM_GPU_DRIVERS)),)
136 LOCAL_CFLAGS += -DENABLE_PIPE_VMWGFX
137 LOCAL_STATIC_LIBRARIES += \
138         libmesa_pipe_svga \
139         libmesa_winsys_svga
140 LOCAL_C_INCLUDES += \
141         external/mesa/src/gallium/drivers/svga/include
142 endif
143
144 LOCAL_STATIC_LIBRARIES += \
145         libmesa_gallium
146 LOCAL_SHARED_LIBRARIES += libdl
147 endif # DRM_USES_PIPE
148 include $(BUILD_SHARED_LIBRARY)
149
150
151 include $(CLEAR_VARS)
152 LOCAL_SRC_FILES := \
153         gralloc.c \
154
155 LOCAL_C_INCLUDES := \
156         external/drm \
157         external/drm/include/drm \
158
159 LOCAL_SHARED_LIBRARIES := \
160         libgralloc_drm \
161         liblog \
162
163 # for glFlush/glFinish
164 LOCAL_SHARED_LIBRARIES += \
165         libGLESv1_CM
166
167 LOCAL_MODULE := gralloc.drm
168 LOCAL_MODULE_TAGS := optional
169 LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw/
170 include $(BUILD_SHARED_LIBRARY)
171
172 endif # DRM_GPU_DRIVERS=prebuilt
173 endif # DRM_GPU_DRIVERS