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
:= \
30 # ---------------------------------------
31 # Build libmesa_isl_gen4
32 # ---------------------------------------
36 LOCAL_MODULE
:= libmesa_isl_gen4
38 LOCAL_SRC_FILES
:= $(ISL_GEN4_FILES
)
40 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=40
42 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
44 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
46 include $(MESA_COMMON_MK
)
47 include $(BUILD_STATIC_LIBRARY
)
49 # ---------------------------------------
50 # Build libmesa_isl_gen5
51 # ---------------------------------------
55 LOCAL_MODULE
:= libmesa_isl_gen5
57 LOCAL_SRC_FILES
:= $(ISL_GEN5_FILES
)
59 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=50
61 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
63 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
65 include $(MESA_COMMON_MK
)
66 include $(BUILD_STATIC_LIBRARY
)
68 # ---------------------------------------
69 # Build libmesa_isl_gen6
70 # ---------------------------------------
74 LOCAL_MODULE
:= libmesa_isl_gen6
76 LOCAL_SRC_FILES
:= $(ISL_GEN6_FILES
)
78 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=60
80 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
82 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
84 include $(MESA_COMMON_MK
)
85 include $(BUILD_STATIC_LIBRARY
)
87 # ---------------------------------------
88 # Build libmesa_isl_gen7
89 # ---------------------------------------
93 LOCAL_MODULE
:= libmesa_isl_gen7
95 LOCAL_SRC_FILES
:= $(ISL_GEN7_FILES
)
97 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=70
99 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
101 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
103 include $(MESA_COMMON_MK
)
104 include $(BUILD_STATIC_LIBRARY
)
106 # ---------------------------------------
107 # Build libmesa_isl_gen75
108 # ---------------------------------------
110 include $(CLEAR_VARS
)
112 LOCAL_MODULE
:= libmesa_isl_gen75
114 LOCAL_SRC_FILES
:= $(ISL_GEN75_FILES
)
116 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=75
118 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
120 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
122 include $(MESA_COMMON_MK
)
123 include $(BUILD_STATIC_LIBRARY
)
125 # ---------------------------------------
126 # Build libmesa_isl_gen8
127 # ---------------------------------------
129 include $(CLEAR_VARS
)
131 LOCAL_MODULE
:= libmesa_isl_gen8
133 LOCAL_SRC_FILES
:= $(ISL_GEN8_FILES
)
135 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=80
137 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
139 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
141 include $(MESA_COMMON_MK
)
142 include $(BUILD_STATIC_LIBRARY
)
144 # ---------------------------------------
145 # Build libmesa_isl_gen9
146 # ---------------------------------------
148 include $(CLEAR_VARS
)
150 LOCAL_MODULE
:= libmesa_isl_gen9
152 LOCAL_SRC_FILES
:= $(ISL_GEN9_FILES
)
154 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=90
156 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
158 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
160 include $(MESA_COMMON_MK
)
161 include $(BUILD_STATIC_LIBRARY
)
163 # ---------------------------------------
164 # Build libmesa_isl_gen10
165 # ---------------------------------------
167 include $(CLEAR_VARS
)
169 LOCAL_MODULE
:= libmesa_isl_gen10
171 LOCAL_SRC_FILES
:= $(ISL_GEN10_FILES
)
173 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=100
175 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
177 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
179 include $(MESA_COMMON_MK
)
180 include $(BUILD_STATIC_LIBRARY
)
182 # ---------------------------------------
183 # Build libmesa_isl_gen11
184 # ---------------------------------------
186 include $(CLEAR_VARS
)
188 LOCAL_MODULE
:= libmesa_isl_gen11
190 LOCAL_SRC_FILES
:= $(ISL_GEN11_FILES
)
192 LOCAL_CFLAGS
:= -DGEN_VERSIONx10
=110
194 LOCAL_C_INCLUDES
:= $(LIBISL_GENX_COMMON_INCLUDES
)
196 LOCAL_WHOLE_STATIC_LIBRARIES
:= libmesa_genxml
198 include $(MESA_COMMON_MK
)
199 include $(BUILD_STATIC_LIBRARY
)
201 # ---------------------------------------
202 # Build libmesa_isl_tiled_memcpy
203 # ---------------------------------------
205 include $(CLEAR_VARS
)
207 LOCAL_MODULE
:= libmesa_isl_tiled_memcpy
209 LOCAL_C_INCLUDES
:= \
210 $(MESA_TOP
)/src
/gallium
/include \
211 $(MESA_TOP
)/src
/mapi \
214 LOCAL_SRC_FILES
:= $(ISL_TILED_MEMCPY_FILES
)
216 include $(MESA_COMMON_MK
)
217 include $(BUILD_STATIC_LIBRARY
)
219 # ---------------------------------------
220 # Build libmesa_isl_tiled_memcpy_sse41
221 # ---------------------------------------
223 ifeq ($(ARCH_X86_HAVE_SSE4_1
),true
)
224 include $(CLEAR_VARS
)
226 LOCAL_MODULE
:= libmesa_isl_tiled_memcpy_sse41
228 LOCAL_C_INCLUDES
:= \
229 $(MESA_TOP
)/src
/gallium
/include \
230 $(MESA_TOP
)/src
/mapi \
233 LOCAL_SRC_FILES
:= $(ISL_TILED_MEMCPY_SSE41_FILES
)
236 -DUSE_SSE41
-msse4.1
-mstackrealign
238 include $(MESA_COMMON_MK
)
239 include $(BUILD_STATIC_LIBRARY
)
242 # ---------------------------------------
244 # ---------------------------------------
246 include $(CLEAR_VARS
)
248 LOCAL_MODULE
:= libmesa_isl
250 LOCAL_SRC_FILES
:= $(ISL_FILES
)
252 LOCAL_C_INCLUDES
:= \
253 $(MESA_TOP
)/src
/gallium
/include \
254 $(MESA_TOP
)/src
/gallium
/auxiliary \
255 $(MESA_TOP
)/src
/mapi \
256 $(MESA_TOP
)/src
/mesa \
257 $(MESA_TOP
)/src
/intel
259 LOCAL_EXPORT_C_INCLUDE_DIRS
:= $(MESA_TOP
)/src
/intel
261 LOCAL_WHOLE_STATIC_LIBRARIES
:= \
272 libmesa_isl_tiled_memcpy
274 ifeq ($(ARCH_X86_HAVE_SSE4_1
),true
)
277 LOCAL_WHOLE_STATIC_LIBRARIES
+= \
278 libmesa_isl_tiled_memcpy_sse41
281 # Autogenerated sources
283 LOCAL_MODULE_CLASS
:= STATIC_LIBRARIES
285 intermediates
:= $(call local-generated-sources-dir
)
287 LOCAL_GENERATED_SOURCES
+= $(addprefix $(intermediates
)/, $(ISL_GENERATED_FILES
))
291 @echo
"Gen Bash: $(PRIVATE_MODULE) <= $(notdir $(@))"
292 $(hide
) $(PRIVATE_SCRIPT
) --csv
$(PRIVATE_CSV
) --out
$@
295 isl_format_layout_deps
:= \
296 $(LOCAL_PATH
)/isl
/gen_format_layout.py \
297 $(LOCAL_PATH
)/isl
/isl_format_layout.csv
299 $(intermediates
)/isl
/isl_format_layout.c
: PRIVATE_SCRIPT
:= $(MESA_PYTHON2
) $(LOCAL_PATH
)/isl
/gen_format_layout.py
300 $(intermediates
)/isl
/isl_format_layout.c
: PRIVATE_CSV
:= $(LOCAL_PATH
)/isl
/isl_format_layout.csv
301 $(intermediates
)/isl
/isl_format_layout.c
: $(isl_format_layout_deps
)
304 include $(MESA_COMMON_MK
)
305 include $(BUILD_STATIC_LIBRARY
)