Refactor the code to emit multiple-inclusion protection to
[profile/ivi/mesa.git] / src / mesa / glapi / Makefile
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 OUTPUTS = glprocs.h glapitemp.h glapioffsets.h glapitable.h \
8         ../x86/glapi_x86.S \
9         ../../glx/x11/indirect.c \
10         ../../glx/x11/indirect.h \
11         ../../glx/x11/indirect_init.c \
12         ../../glx/x11/indirect_size.h \
13         ../../glx/x11/indirect_size.c
14
15 COMMON = gl_XML.pyo license.pyo gl_API.xml
16 COMMON_GLX = $(COMMON) glX_XML.pyo
17
18 PYTHON2 = python
19 PYTHON_FLAGS = -t -O -O
20
21 all: $(OUTPUTS)
22
23 gl_XML.pyo: gl_XML.py
24         rm -f gl_XML.pyo > /dev/null
25         $(PYTHON2) $(PYTHON_FLAGS) gl_XML.py
26
27 glX_XML.pyo: glX_XML.py $(COMMON)
28         rm -f glX_XML.pyo > /dev/null
29         $(PYTHON2) $(PYTHON_FLAGS) glX_XML.py
30
31 license.pyo: license.py
32         rm -f license.pyo > /dev/null
33         $(PYTHON2) $(PYTHON_FLAGS) license.py
34
35 glprocs.h: $(COMMON) gl_procs.py
36         $(PYTHON2) $(PYTHON_FLAGS) gl_procs.py > glprocs.h
37
38 glapitemp.h: $(COMMON) gl_apitemp.py
39         $(PYTHON2) $(PYTHON_FLAGS) gl_apitemp.py > glapitemp.h
40
41 glapioffsets.h: $(COMMON) gl_offsets.py
42         $(PYTHON2) $(PYTHON_FLAGS) gl_offsets.py > glapioffsets.h
43
44 glapitable.h: $(COMMON) gl_table.py
45         $(PYTHON2) $(PYTHON_FLAGS) gl_table.py > glapitable.h
46
47 ../x86/glapi_x86.S: $(COMMON) gl_x86_asm.py
48         $(PYTHON2) $(PYTHON_FLAGS) gl_x86_asm.py > ../x86/glapi_x86.S
49
50 ../../glx/x11/indirect.c: $(COMMON_GLX) glX_proto_send.py
51         $(PYTHON2) $(PYTHON_FLAGS) glX_proto_send.py -m proto > ../../glx/x11/indirect.c
52
53 ../../glx/x11/indirect.h: $(COMMON_GLX) glX_proto_send.py
54         $(PYTHON2) $(PYTHON_FLAGS) glX_proto_send.py -m init_h > ../../glx/x11/indirect.h
55
56 ../../glx/x11/indirect_init.c: $(COMMON_GLX) glX_proto_send.py
57         $(PYTHON2) $(PYTHON_FLAGS) glX_proto_send.py -m init_c > ../../glx/x11/indirect_init.c
58
59 ../../glx/x11/indirect_size.h: $(COMMON_GLX) glX_proto_size.py
60         $(PYTHON2) $(PYTHON_FLAGS) glX_proto_size.py -m size_h --only-set -h _INDIRECT_SIZE_H_ > ../../glx/x11/indirect_size.h
61
62 ../../glx/x11/indirect_size.c: $(COMMON_GLX) glX_proto_size.py
63         $(PYTHON2) $(PYTHON_FLAGS) glX_proto_size.py -m size_c --only-set > ../../glx/x11/indirect_size.c
64
65 clean:
66         rm -f *~ *.pyo
67         rm -f $(OUTPUTS)