Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1901 | serge | 1 | # This file isn't used during a normal compilation since we don't want to |
2 | # require Python in order to compile Mesa. |
||
3 | # Instead, when the Mesa developers update/change the API interface it's |
||
4 | # up to him/her to re-run this makefile and check in the newly generated files. |
||
5 | |||
6 | |||
7 | TOP = ../../../.. |
||
8 | include $(TOP)/configs/current |
||
9 | |||
10 | MESA_DIR = $(TOP)/src/mesa |
||
11 | MESA_GLAPI_DIR = $(TOP)/src/mapi/glapi |
||
12 | MESA_GLX_DIR = $(TOP)/src/glx |
||
13 | |||
14 | MESA_GLAPI_OUTPUTS = \ |
||
15 | $(MESA_GLAPI_DIR)/glprocs.h \ |
||
16 | $(MESA_GLAPI_DIR)/glapitemp.h \ |
||
17 | $(MESA_GLAPI_DIR)/glapitable.h |
||
18 | |||
19 | MESA_GLAPI_ASM_OUTPUTS = \ |
||
20 | $(MESA_GLAPI_DIR)/glapi_x86.S \ |
||
21 | $(MESA_GLAPI_DIR)/glapi_x86-64.S \ |
||
22 | $(MESA_GLAPI_DIR)/glapi_sparc.S |
||
23 | |||
24 | MESA_OUTPUTS = \ |
||
25 | $(MESA_GLAPI_OUTPUTS) \ |
||
26 | $(MESA_GLAPI_ASM_OUTPUTS) \ |
||
27 | $(MESA_DIR)/main/enums.c \ |
||
28 | $(MESA_DIR)/main/glapidispatch.h \ |
||
29 | $(MESA_DIR)/main/remap_helper.h \ |
||
30 | $(MESA_GLX_DIR)/indirect.c \ |
||
31 | $(MESA_GLX_DIR)/indirect.h \ |
||
32 | $(MESA_GLX_DIR)/indirect_init.c \ |
||
33 | $(MESA_GLX_DIR)/indirect_size.h \ |
||
34 | $(MESA_GLX_DIR)/indirect_size.c |
||
35 | |||
36 | ###################################################################### |
||
37 | |||
38 | XORG_GLX_DIR = $(XORG_BASE)/glx |
||
39 | XORG_GLAPI_DIR = $(XORG_BASE)/glx |
||
40 | |||
41 | XORG_GLAPI_FILES = \ |
||
42 | $(XORG_GLAPI_DIR)/glapi.h \ |
||
43 | $(XORG_GLAPI_DIR)/glapi.c \ |
||
44 | $(XORG_GLAPI_DIR)/glapi_getproc.c \ |
||
45 | $(XORG_GLAPI_DIR)/glapi_nop.c \ |
||
46 | $(XORG_GLAPI_DIR)/glthread.c \ |
||
47 | $(XORG_GLAPI_DIR)/glthread.h |
||
48 | |||
49 | XORG_GLAPI_OUTPUTS = \ |
||
50 | $(XORG_GLAPI_DIR)/glprocs.h \ |
||
51 | $(XORG_GLAPI_DIR)/glapitemp.h \ |
||
52 | $(XORG_GLAPI_DIR)/glapioffsets.h \ |
||
53 | $(XORG_GLAPI_DIR)/glapitable.h \ |
||
54 | $(XORG_GLAPI_DIR)/glapidispatch.h |
||
55 | |||
56 | XORG_OUTPUTS = \ |
||
57 | $(XORG_GLAPI_FILES) \ |
||
58 | $(XORG_GLAPI_OUTPUTS) \ |
||
59 | $(XORG_GLX_DIR)/indirect_dispatch.c \ |
||
60 | $(XORG_GLX_DIR)/indirect_dispatch_swap.c \ |
||
61 | $(XORG_GLX_DIR)/indirect_dispatch.h \ |
||
62 | $(XORG_GLX_DIR)/indirect_reqsize.c \ |
||
63 | $(XORG_GLX_DIR)/indirect_reqsize.h \ |
||
64 | $(XORG_GLX_DIR)/indirect_size.h \ |
||
65 | $(XORG_GLX_DIR)/indirect_size_get.c \ |
||
66 | $(XORG_GLX_DIR)/indirect_size_get.h \ |
||
67 | $(XORG_GLX_DIR)/indirect_table.c |
||
68 | |||
69 | ###################################################################### |
||
70 | |||
71 | API_XML = \ |
||
72 | gl_API.xml \ |
||
73 | ARB_copy_buffer.xml \ |
||
74 | ARB_depth_clamp.xml \ |
||
75 | ARB_draw_elements_base_vertex.xml \ |
||
76 | ARB_draw_instanced.xml \ |
||
77 | ARB_ES2_compatibility.xml \ |
||
78 | ARB_framebuffer_object.xml \ |
||
79 | ARB_geometry_shader4.xml \ |
||
80 | ARB_map_buffer_range.xml \ |
||
81 | ARB_seamless_cube_map.xml \ |
||
82 | ARB_sync.xml \ |
||
83 | ARB_vertex_array_object.xml \ |
||
84 | APPLE_object_purgeable.xml \ |
||
85 | APPLE_vertex_array_object.xml \ |
||
86 | EXT_draw_buffers2.xml \ |
||
87 | EXT_framebuffer_object.xml \ |
||
88 | EXT_gpu_shader4.xml \ |
||
89 | EXT_packed_depth_stencil.xml \ |
||
90 | EXT_provoking_vertex.xml \ |
||
91 | EXT_separate_shader_objects.xml \ |
||
92 | EXT_texture_array.xml \ |
||
93 | EXT_texture_integer.xml \ |
||
94 | EXT_transform_feedback.xml \ |
||
95 | NV_conditional_render.xml \ |
||
96 | NV_primitive_restart.xml \ |
||
97 | OES_EGL_image.xml \ |
||
98 | GL3x.xml |
||
99 | |||
100 | |||
101 | COMMON = $(API_XML) gl_XML.py glX_XML.py license.py typeexpr.py |
||
102 | |||
103 | COMMON_GLX = $(COMMON) glX_API.xml glX_XML.py glX_proto_common.py |
||
104 | |||
105 | ###################################################################### |
||
106 | |||
107 | all: mesa xorg |
||
108 | |||
109 | mesa: $(MESA_OUTPUTS) |
||
110 | |||
111 | xorg: check-xorg-source $(XORG_OUTPUTS) |
||
112 | |||
113 | check-xorg-source: |
||
114 | @if ! test -d $(XORG_GLX_DIR); then \ |
||
115 | echo "ERROR: Must specify path to xserver/GL/ checkout; set XORG_BASE env var."; \ |
||
116 | exit 1; \ |
||
117 | fi |
||
118 | |||
119 | clean: |
||
120 | -rm -f *~ *.pyo |
||
121 | -rm -f $(MESA_OUTPUTS) |
||
122 | |||
123 | ###################################################################### |
||
124 | |||
125 | $(XORG_GLAPI_DIR)/%.c: $(MESA_GLAPI_DIR)/%.c |
||
126 | cp $< $@ |
||
127 | |||
128 | $(XORG_GLAPI_DIR)/%.h: $(MESA_GLAPI_DIR)/%.h |
||
129 | cp $< $@ |
||
130 | |||
131 | ###################################################################### |
||
132 | |||
133 | $(MESA_GLAPI_DIR)/glprocs.h: gl_procs.py $(COMMON) |
||
134 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
135 | |||
136 | $(MESA_GLAPI_DIR)/glapitemp.h: gl_apitemp.py $(COMMON) |
||
137 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
138 | |||
139 | $(MESA_GLAPI_DIR)/glapitable.h: gl_table.py $(COMMON) |
||
140 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
141 | |||
142 | ###################################################################### |
||
143 | |||
144 | $(MESA_GLAPI_DIR)/glapi_x86.S: gl_x86_asm.py $(COMMON) |
||
145 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
146 | |||
147 | $(MESA_GLAPI_DIR)/glapi_x86-64.S: gl_x86-64_asm.py $(COMMON) |
||
148 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
149 | |||
150 | $(MESA_GLAPI_DIR)/glapi_sparc.S: gl_SPARC_asm.py $(COMMON) |
||
151 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
152 | |||
153 | ###################################################################### |
||
154 | |||
155 | $(MESA_DIR)/main/enums.c: gl_enums.py $(COMMON) $(ES_API) |
||
156 | $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_API.xml \ |
||
157 | -f $(MESA_GLAPI_DIR)/gen-es/es1_API.xml \ |
||
158 | -f $(MESA_GLAPI_DIR)/gen-es/es2_API.xml > $@ |
||
159 | |||
160 | $(MESA_DIR)/main/glapidispatch.h: gl_table.py $(COMMON) |
||
161 | $(PYTHON2) $(PYTHON_FLAGS) $< -m remap_table > $@ |
||
162 | |||
163 | $(MESA_DIR)/main/remap_helper.h: remap_helper.py $(COMMON) |
||
164 | $(PYTHON2) $(PYTHON_FLAGS) $< > $@ |
||
165 | |||
166 | ###################################################################### |
||
167 | |||
168 | $(MESA_GLX_DIR)/indirect.c: glX_proto_send.py $(COMMON_GLX) |
||
169 | $(PYTHON2) $(PYTHON_FLAGS) $< -m proto | $(INDENT) $(INDENT_FLAGS) > $@ |
||
170 | |||
171 | $(MESA_GLX_DIR)/indirect.h: glX_proto_send.py $(COMMON_GLX) |
||
172 | $(PYTHON2) $(PYTHON_FLAGS) $< -m init_h > $@ |
||
173 | |||
174 | $(MESA_GLX_DIR)/indirect_init.c: glX_proto_send.py $(COMMON_GLX) |
||
175 | $(PYTHON2) $(PYTHON_FLAGS) $< -m init_c > $@ |
||
176 | |||
177 | $(MESA_GLX_DIR)/indirect_size.h $(XORG_GLX_DIR)/indirect_size.h: glX_proto_size.py $(COMMON_GLX) |
||
178 | $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-set -h _INDIRECT_SIZE_H_ \ |
||
179 | | $(INDENT) $(INDENT_FLAGS) > $@ |
||
180 | |||
181 | $(MESA_GLX_DIR)/indirect_size.c: glX_proto_size.py $(COMMON_GLX) |
||
182 | $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c --only-set \ |
||
183 | | $(INDENT) $(INDENT_FLAGS) > $@ |
||
184 | |||
185 | ###################################################################### |
||
186 | |||
187 | $(XORG_GLX_DIR)/indirect_dispatch.c: glX_proto_recv.py $(COMMON_GLX) |
||
188 | $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c > $@ |
||
189 | |||
190 | $(XORG_GLX_DIR)/indirect_dispatch_swap.c: glX_proto_recv.py $(COMMON_GLX) |
||
191 | $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c -s > $@ |
||
192 | |||
193 | $(XORG_GLX_DIR)/indirect_dispatch.h: glX_proto_recv.py gl_and_glX_API.xml $(COMMON_GLX) |
||
194 | $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_h -f gl_and_glX_API.xml -s > $@ |
||
195 | |||
196 | $(XORG_GLX_DIR)/indirect_size_get.h: glX_proto_size.py $(COMMON_GLX) |
||
197 | $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-get -h '_INDIRECT_SIZE_GET_H_' \ |
||
198 | | $(INDENT) $(INDENT_FLAGS) > $@ |
||
199 | |||
200 | $(XORG_GLX_DIR)/indirect_size_get.c: glX_proto_size.py $(COMMON_GLX) |
||
201 | $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c | $(INDENT) $(INDENT_FLAGS) > $@ |
||
202 | |||
203 | $(XORG_GLX_DIR)/indirect_reqsize.h: glX_proto_size.py $(COMMON_GLX) |
||
204 | $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_h --only-get -h '_INDIRECT_SIZE_GET_H_' \ |
||
205 | | $(INDENT) $(INDENT_FLAGS) -l200 > $@ |
||
206 | |||
207 | $(XORG_GLX_DIR)/indirect_reqsize.c: glX_proto_size.py $(COMMON_GLX) |
||
208 | $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_c | $(INDENT) $(INDENT_FLAGS) > $@ |
||
209 | |||
210 | $(XORG_GLX_DIR)/indirect_table.c: glX_server_table.py gl_and_glX_API.xml $(COMMON_GLX) |
||
211 | $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_and_glX_API.xml > $@>>>>>>>>>>>>>>>>>>>>>>>> |