7c4fadaa4610fa3879b60c97ba61f6ec05eea2e1
[mesa.git] / src / mesa / drivers / dri / i965 / Android.mk
1 #
2 # Copyright (C) 2011 Intel Corporation
3 # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4 # Copyright (C) 2010-2011 LunarG
5 #
6 # Permission is hereby granted, free of charge, to any person obtaining a
7 # copy of this software and associated documentation files (the "Software"),
8 # to deal in the Software without restriction, including without limitation
9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 # and/or sell copies of the Software, and to permit persons to whom the
11 # Software is furnished to do so, subject to the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 # DEALINGS IN THE SOFTWARE.
23 #
24
25 LOCAL_PATH := $(call my-dir)
26
27 # Import variables i965_FILES.
28 include $(LOCAL_PATH)/Makefile.sources
29
30 I965_PERGEN_COMMON_INCLUDES := \
31 $(MESA_DRI_C_INCLUDES) \
32 $(MESA_TOP)/src/intel
33
34 I965_PERGEN_SHARED_LIBRARIES := \
35 $(MESA_DRI_SHARED_LIBRARIES) \
36 libdrm_intel
37
38 I965_PERGEN_STATIC_LIBRARIES := \
39 libmesa_genxml \
40 libmesa_nir
41
42 I965_PERGEN_LIBS := \
43 libmesa_i965_gen4 \
44 libmesa_i965_gen45 \
45 libmesa_i965_gen5 \
46 libmesa_i965_gen6 \
47 libmesa_i965_gen7 \
48 libmesa_i965_gen75 \
49 libmesa_i965_gen8 \
50 libmesa_i965_gen9
51
52 # ---------------------------------------
53 # Build libmesa_i965_gen4
54 # ---------------------------------------
55
56 include $(CLEAR_VARS)
57
58 LOCAL_MODULE := libmesa_i965_gen4
59
60 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
61
62 LOCAL_SRC_FILES := $(i965_gen4_FILES)
63
64 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
65
66 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
67
68 LOCAL_CFLAGS := -DGEN_VERSIONx10=40
69
70 include $(MESA_COMMON_MK)
71 include $(BUILD_STATIC_LIBRARY)
72
73 # ---------------------------------------
74 # Build libmesa_i965_gen45
75 # ---------------------------------------
76
77 include $(CLEAR_VARS)
78
79 LOCAL_MODULE := libmesa_i965_gen45
80
81 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
82
83 LOCAL_SRC_FILES := $(i965_gen45_FILES)
84
85 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
86
87 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
88
89 LOCAL_CFLAGS := -DGEN_VERSIONx10=45
90
91 include $(MESA_COMMON_MK)
92 include $(BUILD_STATIC_LIBRARY)
93
94 # ---------------------------------------
95 # Build libmesa_i965_gen5
96 # ---------------------------------------
97
98 include $(CLEAR_VARS)
99
100 LOCAL_MODULE := libmesa_i965_gen5
101
102 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
103
104 LOCAL_SRC_FILES := $(i965_gen5_FILES)
105
106 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
107
108 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
109
110 LOCAL_CFLAGS := -DGEN_VERSIONx10=50
111
112 include $(MESA_COMMON_MK)
113 include $(BUILD_STATIC_LIBRARY)
114
115 # ---------------------------------------
116 # Build libmesa_i965_gen6
117 # ---------------------------------------
118
119 include $(CLEAR_VARS)
120
121 LOCAL_MODULE := libmesa_i965_gen6
122
123 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
124
125 LOCAL_SRC_FILES := $(i965_gen6_FILES)
126
127 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
128
129 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
130
131 LOCAL_CFLAGS := -DGEN_VERSIONx10=60
132
133 include $(MESA_COMMON_MK)
134 include $(BUILD_STATIC_LIBRARY)
135
136 # ---------------------------------------
137 # Build libmesa_i965_gen7
138 # ---------------------------------------
139
140 include $(CLEAR_VARS)
141
142 LOCAL_MODULE := libmesa_i965_gen7
143
144 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
145
146 LOCAL_SRC_FILES := $(i965_gen7_FILES)
147
148 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
149
150 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
151
152 LOCAL_CFLAGS := -DGEN_VERSIONx10=70
153
154 include $(MESA_COMMON_MK)
155 include $(BUILD_STATIC_LIBRARY)
156
157 # ---------------------------------------
158 # Build libmesa_i965_gen75
159 # ---------------------------------------
160
161 include $(CLEAR_VARS)
162
163 LOCAL_MODULE := libmesa_i965_gen75
164
165 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
166
167 LOCAL_SRC_FILES := $(i965_gen75_FILES)
168
169 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
170
171 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
172
173 LOCAL_CFLAGS := -DGEN_VERSIONx10=75
174
175 include $(MESA_COMMON_MK)
176 include $(BUILD_STATIC_LIBRARY)
177
178 # ---------------------------------------
179 # Build libmesa_i965_gen8
180 # ---------------------------------------
181
182 include $(CLEAR_VARS)
183
184 LOCAL_MODULE := libmesa_i965_gen8
185
186 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
187
188 LOCAL_SRC_FILES := $(i965_gen8_FILES)
189
190 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
191
192 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
193
194 LOCAL_CFLAGS := -DGEN_VERSIONx10=80
195
196 include $(MESA_COMMON_MK)
197 include $(BUILD_STATIC_LIBRARY)
198
199 # ---------------------------------------
200 # Build libmesa_i965_gen9
201 # ---------------------------------------
202
203 include $(CLEAR_VARS)
204
205 LOCAL_MODULE := libmesa_i965_gen9
206
207 LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
208
209 LOCAL_SRC_FILES := $(i965_gen9_FILES)
210
211 LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
212
213 LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
214
215 LOCAL_CFLAGS := -DGEN_VERSIONx10=90
216
217 include $(MESA_COMMON_MK)
218 include $(BUILD_STATIC_LIBRARY)
219
220 # ---------------------------------------
221 # Build i965_dri
222 # ---------------------------------------
223
224 include $(CLEAR_VARS)
225
226 LOCAL_MODULE := i965_dri
227 LOCAL_MODULE_RELATIVE_PATH := $(MESA_DRI_MODULE_REL_PATH)
228
229 LOCAL_CFLAGS := \
230 $(MESA_DRI_CFLAGS)
231
232 ifeq ($(ARCH_X86_HAVE_SSE4_1),true)
233 LOCAL_CFLAGS += \
234 -DUSE_SSE41
235 endif
236
237 LOCAL_C_INCLUDES := \
238 $(MESA_DRI_C_INCLUDES)
239
240 LOCAL_SRC_FILES := \
241 $(i965_FILES)
242
243 LOCAL_WHOLE_STATIC_LIBRARIES := \
244 $(MESA_DRI_WHOLE_STATIC_LIBRARIES) \
245 $(I965_PERGEN_LIBS) \
246 libmesa_intel_common \
247 libmesa_isl \
248 libmesa_blorp \
249 libmesa_intel_compiler
250
251 LOCAL_SHARED_LIBRARIES := \
252 $(MESA_DRI_SHARED_LIBRARIES) \
253 libdrm_intel
254
255 LOCAL_GENERATED_SOURCES := \
256 $(MESA_DRI_OPTIONS_H) \
257 $(MESA_GEN_NIR_H)
258
259 LOCAL_MODULE_CLASS := SHARED_LIBRARIES
260
261 intermediates := $(call local-generated-sources-dir)
262
263 LOCAL_GENERATED_SOURCES += $(addprefix $(intermediates)/, \
264 $(i965_oa_GENERATED_FILES))
265
266 $(intermediates)/brw_oa_%.h: $(LOCAL_PATH)/brw_oa_%.xml $(LOCAL_PATH)/brw_oa.py
267 @echo "target Generated: $(PRIVATE_MODULE) <= $(notdir $(@))"
268 @mkdir -p $(dir $@)
269 $(hide) $(MESA_PYTHON2) $(word 2, $^) --header=$@ --chipset=$(basename $*) $<
270
271 $(intermediates)/brw_oa_%.c: $(LOCAL_PATH)/brw_oa_%.xml $(LOCAL_PATH)/brw_oa.py
272 @echo "target Generated: $(PRIVATE_MODULE) <= $(notdir $(@))"
273 @mkdir -p $(dir $@)
274 $(hide) $(MESA_PYTHON2) $(word 2, $^) --code=$@ --chipset=$(basename $*) $<
275
276 include $(MESA_COMMON_MK)
277 include $(BUILD_SHARED_LIBRARY)