1 # Copyright © 2016 Intel Corporation
2 # Copyright © 2016 Mauro Rossi <issor.oruam@gmail.com>
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:
11 # The above copyright notice and this permission notice shall be included
12 # in all copies or substantial portions of the Software.
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.
23 # ---------------------------------------
24 # libmesa_isl_gen* common variables
25 # ---------------------------------------
27 LIBISL_GENX_COMMON_INCLUDES
:= \
29 $(MESA_TOP
)/src
/gallium
/include/
31 # ---------------------------------------
32 # Build libmesa_isl_gen4
33 # ---------------------------------------
37 LOCAL_MODULE
:= libmesa_isl_gen4
39 LOCAL_SRC_FILES
:= $(ISL_GEN4_FILES
)
41 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=40
43 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
45 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
47 include $(MESA_COMMON_MK
)
48 include $(BUILD_STATIC_LIBRARY
)
50 # ---------------------------------------
51 # Build libmesa_isl_gen5
52 # ---------------------------------------
56 LOCAL_MODULE
:= libmesa_isl_gen5
58 LOCAL_SRC_FILES
:= $(ISL_GEN5_FILES
)
60 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=50
62 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
64 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
66 include $(MESA_COMMON_MK
)
67 include $(BUILD_STATIC_LIBRARY
)
69 # ---------------------------------------
70 # Build libmesa_isl_gen6
71 # ---------------------------------------
75 LOCAL_MODULE
:= libmesa_isl_gen6
77 LOCAL_SRC_FILES
:= $(ISL_GEN6_FILES
)
79 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=60
81 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
83 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
85 include $(MESA_COMMON_MK
)
86 include $(BUILD_STATIC_LIBRARY
)
88 # ---------------------------------------
89 # Build libmesa_isl_gen7
90 # ---------------------------------------
94 LOCAL_MODULE
:= libmesa_isl_gen7
96 LOCAL_SRC_FILES
:= $(ISL_GEN7_FILES
)
98 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=70
100 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
102 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
104 include $(MESA_COMMON_MK
)
105 include $(BUILD_STATIC_LIBRARY
)
107 # ---------------------------------------
108 # Build libmesa_isl_gen75
109 # ---------------------------------------
111 include $(CLEAR_VARS
)
113 LOCAL_MODULE
:= libmesa_isl_gen75
115 LOCAL_SRC_FILES
:= $(ISL_GEN75_FILES
)
117 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=75
119 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
121 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
123 include $(MESA_COMMON_MK
)
124 include $(BUILD_STATIC_LIBRARY
)
126 # ---------------------------------------
127 # Build libmesa_isl_gen8
128 # ---------------------------------------
130 include $(CLEAR_VARS
)
132 LOCAL_MODULE
:= libmesa_isl_gen8
134 LOCAL_SRC_FILES
:= $(ISL_GEN8_FILES
)
136 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=80
138 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
140 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
142 include $(MESA_COMMON_MK
)
143 include $(BUILD_STATIC_LIBRARY
)
145 # ---------------------------------------
146 # Build libmesa_isl_gen9
147 # ---------------------------------------
149 include $(CLEAR_VARS
)
151 LOCAL_MODULE
:= libmesa_isl_gen9
153 LOCAL_SRC_FILES
:= $(ISL_GEN9_FILES
)
155 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=90
157 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
159 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
161 include $(MESA_COMMON_MK
)
162 include $(BUILD_STATIC_LIBRARY
)
164 # ---------------------------------------
165 # Build libmesa_isl_gen10
166 # ---------------------------------------
168 include $(CLEAR_VARS
)
170 LOCAL_MODULE
:= libmesa_isl_gen10
172 LOCAL_SRC_FILES
:= $(ISL_GEN10_FILES
)
174 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=100
176 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
178 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
180 include $(MESA_COMMON_MK
)
181 include $(BUILD_STATIC_LIBRARY
)
183 # ---------------------------------------
184 # Build libmesa_isl_gen11
185 # ---------------------------------------
187 include $(CLEAR_VARS
)
189 LOCAL_MODULE
:= libmesa_isl_gen11
191 LOCAL_SRC_FILES
:= $(ISL_GEN11_FILES
)
193 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=110
195 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
197 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
199 include $(MESA_COMMON_MK
)
200 include $(BUILD_STATIC_LIBRARY
)
202 # ---------------------------------------
203 # Build libmesa_isl_gen12
204 # ---------------------------------------
206 include $(CLEAR_VARS
)
208 LOCAL_MODULE
:= libmesa_isl_gen12
210 LOCAL_SRC_FILES
:= $(ISL_GEN12_FILES
)
212 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=120
214 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
216 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
218 include $(MESA_COMMON_MK
)
219 include $(BUILD_STATIC_LIBRARY
)
221 # ---------------------------------------
222 # Build libmesa_isl_tiled_memcpy
223 # ---------------------------------------
225 include $(CLEAR_VARS
)
227 LOCAL_MODULE
:= libmesa_isl_tiled_memcpy
229 LOCAL_C_INCLUDES
:= \
230 $(MESA_TOP
)/src
/gallium
/include \
231 $(MESA_TOP
)/src
/mapi \
234 LOCAL_SRC_FILES
:= $(ISL_TILED_MEMCPY_FILES
)
236 include $(MESA_COMMON_MK
)
237 include $(BUILD_STATIC_LIBRARY
)
239 # ---------------------------------------
240 # Build libmesa_isl_tiled_memcpy_sse41
241 # ---------------------------------------
243 ifeq ($(ARCH_X86_HAVE_SSE4_1
),true
)
244 include $(CLEAR_VARS
)
246 LOCAL_MODULE
:= libmesa_isl_tiled_memcpy_sse41
248 LOCAL_C_INCLUDES
:= \
249 $(MESA_TOP
)/src
/gallium
/include \
250 $(MESA_TOP
)/src
/mapi \
253 LOCAL_SRC_FILES
:= $(ISL_TILED_MEMCPY_SSE41_FILES
)
256 -DUSE_SSE41
-msse4.1
-mstackrealign
258 include $(MESA_COMMON_MK
)
259 include $(BUILD_STATIC_LIBRARY
)
262 # ---------------------------------------
264 # ---------------------------------------
266 include $(CLEAR_VARS
)
268 LOCAL_MODULE
:= libmesa_isl
270 LOCAL_SRC_FILES
:= $(ISL_FILES
)
272 LOCAL_C_INCLUDES
:= \
273 $(MESA_TOP
)/src
/gallium
/include \
274 $(MESA_TOP
)/src
/gallium
/auxiliary \
275 $(MESA_TOP
)/src
/mapi \
276 $(MESA_TOP
)/src
/mesa \
277 $(MESA_TOP
)/src
/intel
279 LOCAL_EXPORT_C_INCLUDE_DIRS
:= $(MESA_TOP
)/src
/intel
281 LOCAL_WHOLE_STATIC_LIBRARIES
:= \
293 libmesa_isl_tiled_memcpy
295 ifeq ($(ARCH_X86_HAVE_SSE4_1
),true
)
298 LOCAL_WHOLE_STATIC_LIBRARIES
+= \
299 libmesa_isl_tiled_memcpy_sse41
302 # Autogenerated sources
304 LOCAL_MODULE_CLASS
:= STATIC_LIBRARIES
306 intermediates
:= $(call local-generated-sources-dir
)
308 LOCAL_GENERATED_SOURCES
+= $(addprefix $(intermediates
)/, $(ISL_GENERATED_FILES
))
312 @echo
"Gen Bash: $(PRIVATE_MODULE) <= $(notdir $(@))"
313 $(hide
) $(PRIVATE_SCRIPT
) --csv
$(PRIVATE_CSV
) --out
$@
316 isl_format_layout_deps
:= \
317 $(LOCAL_PATH
)/isl
/gen_format_layout.py \
318 $(LOCAL_PATH
)/isl
/isl_format_layout.csv
320 $(intermediates
)/isl
/isl_format_layout.c
: PRIVATE_SCRIPT
:= $(MESA_PYTHON2
) $(LOCAL_PATH
)/isl
/gen_format_layout.py
321 $(intermediates
)/isl
/isl_format_layout.c
: PRIVATE_CSV
:= $(LOCAL_PATH
)/isl
/isl_format_layout.csv
322 $(intermediates
)/isl
/isl_format_layout.c
: $(isl_format_layout_deps
)
325 include $(MESA_COMMON_MK
)
326 include $(BUILD_STATIC_LIBRARY
)