iris: Enable fast clears on other miplevels and layers than 0.
[mesa.git] / src / gallium / drivers / iris / Android.mk
1 # Mesa 3-D graphics library
2 #
3 # Copyright (C) 2018 Intel Corporation
4 #
5 # Permission is hereby granted, free of charge, to any person obtaining a
6 # copy of this software and associated documentation files (the "Software"),
7 # to deal in the Software without restriction, including without limitation
8 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
9 # and/or sell copies of the Software, and to permit persons to whom the
10 # Software is furnished to do so, subject to the following conditions:
11 #
12 # The above copyright notice and this permission notice shall be included
13 # in all copies or substantial portions of the Software.
14 #
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 # DEALINGS IN THE SOFTWARE.
22
23 LOCAL_PATH := $(call my-dir)
24
25 # get C_SOURCES
26 include $(LOCAL_PATH)/Makefile.sources
27
28 include $(CLEAR_VARS)
29
30 LIBIRIS_SRC_FILES := \
31 iris_blorp.c \
32 iris_state.c
33
34 LIBIRIS_STATIC_LIBS := \
35 libmesa_nir
36
37 IRIS_COMMON_INCLUDES := \
38 $(MESA_TOP)/src/mapi \
39 $(MESA_TOP)/src/mesa \
40 $(MESA_TOP)/src/gallium/include \
41 $(MESA_TOP)/src/gallium/auxiliary
42
43 #
44 # libiris for gen8
45 #
46
47 include $(CLEAR_VARS)
48 LOCAL_MODULE := libmesa_iris_gen8
49 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
50
51 LOCAL_SRC_FILES := $(LIBIRIS_SRC_FILES)
52 LOCAL_CFLAGS := -DGEN_VERSIONx10=80
53
54 LOCAL_C_INCLUDES := $(IRIS_COMMON_INCLUDES)
55
56 LOCAL_STATIC_LIBRARIES := $(LIBIRIS_STATIC_LIBS)
57
58 LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml
59
60 include $(MESA_COMMON_MK)
61 include $(BUILD_STATIC_LIBRARY)
62
63 #
64 # libiris for gen9
65 #
66
67 include $(CLEAR_VARS)
68 LOCAL_MODULE := libmesa_iris_gen9
69 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
70
71 LOCAL_SRC_FILES := $(LIBIRIS_SRC_FILES)
72 LOCAL_CFLAGS := -DGEN_VERSIONx10=90
73
74 LOCAL_C_INCLUDES := $(IRIS_COMMON_INCLUDES)
75
76 LOCAL_STATIC_LIBRARIES := $(LIBIRIS_STATIC_LIBS)
77
78 LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml
79
80 include $(MESA_COMMON_MK)
81 include $(BUILD_STATIC_LIBRARY)
82
83 #
84 # libiris for gen10
85 #
86
87 include $(CLEAR_VARS)
88 LOCAL_MODULE := libmesa_iris_gen10
89 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
90
91 LOCAL_SRC_FILES := $(LIBIRIS_SRC_FILES)
92 LOCAL_CFLAGS := -DGEN_VERSIONx10=100
93
94 LOCAL_C_INCLUDES := $(IRIS_COMMON_INCLUDES)
95
96 LOCAL_STATIC_LIBRARIES := $(LIBIRIS_STATIC_LIBS)
97
98 LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml
99
100 include $(MESA_COMMON_MK)
101 include $(BUILD_STATIC_LIBRARY)
102
103 #
104 # libiris for gen11
105 #
106
107 include $(CLEAR_VARS)
108 LOCAL_MODULE := libmesa_iris_gen11
109 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
110
111 LOCAL_SRC_FILES := $(LIBIRIS_SRC_FILES)
112 LOCAL_CFLAGS := -DGEN_VERSIONx10=110
113
114 LOCAL_C_INCLUDES := $(IRIS_COMMON_INCLUDES)
115
116 LOCAL_STATIC_LIBRARIES := $(LIBIRIS_STATIC_LIBS)
117
118 LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml
119
120 include $(MESA_COMMON_MK)
121 include $(BUILD_STATIC_LIBRARY)
122
123
124 ###########################################################
125 include $(CLEAR_VARS)
126
127 LOCAL_MODULE := libmesa_pipe_iris
128 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
129
130 intermediates := $(call local-generated-sources-dir)
131
132 LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/iris/,$(GENERATED_SOURCES))
133
134 GEN_DRIINFO_INPUTS := \
135 $(MESA_TOP)/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h \
136 $(LOCAL_PATH)/driinfo_iris.h
137
138 MERGE_DRIINFO := $(MESA_TOP)/src/util/merge_driinfo.py
139
140 $(intermediates)/iris/iris_driinfo.h: $(MERGE_DRIINFO) $(GEN_DRIINFO_INPUTS)
141 @mkdir -p $(dir $@)
142 @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))"
143 $(hide) $(MESA_PYTHON2) $(MERGE_DRIINFO) $(GEN_DRIINFO_INPUTS) > $@ || ($(RM) $@; false)
144
145 LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
146
147 LOCAL_SRC_FILES := \
148 $(IRIS_C_SOURCES)
149
150 LOCAL_C_INCLUDES := \
151 $(MESA_TOP)/src/mapi \
152 $(MESA_TOP)/src/mesa \
153 $(MESA_TOP)/include/drm-uapi \
154 $(MESA_TOP)/src/gallium/include
155
156 LOCAL_SHARED_LIBRARIES := libdrm_intel
157
158 LOCAL_STATIC_LIBRARIES := \
159 libmesa_intel_common \
160 libmesa_nir
161
162 LOCAL_WHOLE_STATIC_LIBRARIES := \
163 libmesa_genxml \
164 libmesa_blorp \
165 libmesa_intel_common \
166 libmesa_intel_compiler \
167 libmesa_iris_gen8 \
168 libmesa_iris_gen9 \
169 libmesa_iris_gen10 \
170 libmesa_iris_gen11
171
172 include $(GALLIUM_COMMON_MK)
173 include $(BUILD_STATIC_LIBRARY)
174
175 ifneq ($(HAVE_GALLIUM_IRIS),)
176 GALLIUM_TARGET_DRIVERS += iris
177 $(eval GALLIUM_LIBS += $(LOCAL_MODULE) libmesa_winsys_iris)
178 $(eval GALLIUM_SHARED_LIBS += $(LOCAL_SHARED_LIBRARIES))
179 endif