2 # Copyright (C) 2011 Intel Corporation
3 # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4 # Copyright (C) 2010-2011 LunarG
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:
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
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.
25 LOCAL_PATH
:= $(call my-dir
)
27 # Import variables i965_FILES.
28 include $(LOCAL_PATH
)/Makefile.sources
30 I965_PERGEN_COMMON_INCLUDES
:= \
31 $(MESA_DRI_C_INCLUDES
) \
32 $(MESA_TOP
)/src
/intel \
35 I965_PERGEN_SHARED_LIBRARIES
:= \
36 $(MESA_DRI_SHARED_LIBRARIES
)
38 I965_PERGEN_STATIC_LIBRARIES
:= \
54 # ---------------------------------------
55 # Build libmesa_i965_gen4
56 # ---------------------------------------
60 LOCAL_MODULE
:= libmesa_i965_gen4
62 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
64 LOCAL_SRC_FILES
:= $(i965_gen4_FILES
)
66 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
68 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
70 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=40
72 include $(MESA_COMMON_MK
)
73 include $(BUILD_STATIC_LIBRARY
)
75 # ---------------------------------------
76 # Build libmesa_i965_gen45
77 # ---------------------------------------
81 LOCAL_MODULE
:= libmesa_i965_gen45
83 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
85 LOCAL_SRC_FILES
:= $(i965_gen45_FILES
)
87 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
89 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
91 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=45
93 include $(MESA_COMMON_MK
)
94 include $(BUILD_STATIC_LIBRARY
)
96 # ---------------------------------------
97 # Build libmesa_i965_gen5
98 # ---------------------------------------
100 include $(CLEAR_VARS
)
102 LOCAL_MODULE
:= libmesa_i965_gen5
104 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
106 LOCAL_SRC_FILES
:= $(i965_gen5_FILES
)
108 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
110 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
112 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=50
114 include $(MESA_COMMON_MK
)
115 include $(BUILD_STATIC_LIBRARY
)
117 # ---------------------------------------
118 # Build libmesa_i965_gen6
119 # ---------------------------------------
121 include $(CLEAR_VARS
)
123 LOCAL_MODULE
:= libmesa_i965_gen6
125 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
127 LOCAL_SRC_FILES
:= $(i965_gen6_FILES
)
129 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
131 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
133 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=60
135 include $(MESA_COMMON_MK
)
136 include $(BUILD_STATIC_LIBRARY
)
138 # ---------------------------------------
139 # Build libmesa_i965_gen7
140 # ---------------------------------------
142 include $(CLEAR_VARS
)
144 LOCAL_MODULE
:= libmesa_i965_gen7
146 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
148 LOCAL_SRC_FILES
:= $(i965_gen7_FILES
)
150 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
152 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
154 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=70
156 include $(MESA_COMMON_MK
)
157 include $(BUILD_STATIC_LIBRARY
)
159 # ---------------------------------------
160 # Build libmesa_i965_gen75
161 # ---------------------------------------
163 include $(CLEAR_VARS
)
165 LOCAL_MODULE
:= libmesa_i965_gen75
167 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
169 LOCAL_SRC_FILES
:= $(i965_gen75_FILES
)
171 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
173 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
175 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=75
177 include $(MESA_COMMON_MK
)
178 include $(BUILD_STATIC_LIBRARY
)
180 # ---------------------------------------
181 # Build libmesa_i965_gen8
182 # ---------------------------------------
184 include $(CLEAR_VARS
)
186 LOCAL_MODULE
:= libmesa_i965_gen8
188 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
190 LOCAL_SRC_FILES
:= $(i965_gen8_FILES
)
192 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
194 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
196 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=80
198 include $(MESA_COMMON_MK
)
199 include $(BUILD_STATIC_LIBRARY
)
201 # ---------------------------------------
202 # Build libmesa_i965_gen9
203 # ---------------------------------------
205 include $(CLEAR_VARS
)
207 LOCAL_MODULE
:= libmesa_i965_gen9
209 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
211 LOCAL_SRC_FILES
:= $(i965_gen9_FILES
)
213 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
215 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
217 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=90
219 include $(MESA_COMMON_MK
)
220 include $(BUILD_STATIC_LIBRARY
)
222 # ---------------------------------------
223 # Build libmesa_i965_gen10
224 # ---------------------------------------
226 include $(CLEAR_VARS
)
228 LOCAL_MODULE
:= libmesa_i965_gen10
230 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
232 LOCAL_SRC_FILES
:= $(i965_gen10_FILES
)
234 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
236 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
238 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=100
240 include $(MESA_COMMON_MK
)
241 include $(BUILD_STATIC_LIBRARY
)
243 # ---------------------------------------
244 # Build libmesa_i965_gen11
245 # ---------------------------------------
247 include $(CLEAR_VARS
)
249 LOCAL_MODULE
:= libmesa_i965_gen11
251 LOCAL_C_INCLUDES
:= $(I965_PERGEN_COMMON_INCLUDES
)
253 LOCAL_SRC_FILES
:= $(i965_gen11_FILES
)
255 LOCAL_SHARED_LIBRARIES
:= $(I965_PERGEN_SHARED_LIBRARIES
)
257 LOCAL_STATIC_LIBRARIES
:= $(I965_PERGEN_STATIC_LIBRARIES
)
259 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=110
261 include $(MESA_COMMON_MK
)
262 include $(BUILD_STATIC_LIBRARY
)
264 # ---------------------------------------
266 # ---------------------------------------
268 include $(CLEAR_VARS
)
270 LOCAL_MODULE
:= i965_dri
271 LOCAL_MODULE_RELATIVE_PATH
:= $(MESA_DRI_MODULE_REL_PATH
)
272 LOCAL_LDFLAGS
+= $(MESA_DRI_LDFLAGS
)
277 LOCAL_C_INCLUDES
:= \
278 $(MESA_DRI_C_INCLUDES
) \
279 $(call generated-sources-dir-for
,STATIC_LIBRARIES
,libmesa_glsl
,,) \
285 LOCAL_WHOLE_STATIC_LIBRARIES
:= \
286 $(MESA_DRI_WHOLE_STATIC_LIBRARIES
) \
287 $(I965_PERGEN_LIBS
) \
289 libmesa_intel_common \
292 libmesa_intel_compiler \
295 ifeq ($(ARCH_X86_HAVE_SSE4_1
),true
)
300 LOCAL_SHARED_LIBRARIES
:= \
301 $(MESA_DRI_SHARED_LIBRARIES
)
303 LOCAL_GENERATED_SOURCES
:= \
304 $(MESA_DRI_OPTIONS_H
) \
307 LOCAL_MODULE_CLASS
:= SHARED_LIBRARIES
309 intermediates
:= $(call local-generated-sources-dir
)
311 LOCAL_GENERATED_SOURCES
+= $(addprefix $(intermediates
)/, \
312 $(i965_oa_GENERATED_FILES
))
314 i965_oa_xml_FILES
:= $(addprefix $(MESA_TOP
)/src
/mesa
/drivers
/dri
/i965
/, \
315 $(i965_oa_xml_FILES
))
317 $(intermediates
)/brw_oa_metrics.c
: $(LOCAL_PATH
)/brw_oa.py
$(i965_oa_xml_FILES
)
318 @echo
"target Generated: $(PRIVATE_MODULE) <= $(notdir $(@))"
320 $(hide
) $(MESA_PYTHON2
) $< \
322 --header
=$(call generated-sources-dir-for
,SHARED_LIBRARIES
,i965_dri
,,)/brw_oa_metrics.h \
325 $(intermediates
)/brw_oa_metrics.h
: $(intermediates
)/brw_oa_metrics.c
327 include $(MESA_COMMON_MK
)
328 include $(BUILD_SHARED_LIBRARY
)