Chia-I Wu | f68bf06 | 2009-09-02 12:04:56 +0800 | [diff] [blame] | 1 | TOP = ../../../.. |
| 2 | GLAPI = ../../glapi |
| 3 | include $(TOP)/configs/current |
| 4 | |
| 5 | OUTPUTS := \ |
| 6 | glapi/glapidispatch.h \ |
| 7 | glapi/glapioffsets.h \ |
| 8 | glapi/glapitable.h \ |
| 9 | glapi/glapitemp.h \ |
| 10 | glapi/glprocs.h \ |
| 11 | sparc/glapi_sparc.S \ |
| 12 | x86-64/glapi_x86-64.S \ |
| 13 | x86/glapi_x86.S \ |
| 14 | main/enums.c \ |
| 15 | main/remap_helper.h |
| 16 | |
| 17 | COMMON = gl_XML.py glX_XML.py license.py typeexpr.py |
| 18 | COMMON := $(addprefix $(GLAPI)/, $(COMMON)) |
| 19 | |
| 20 | ES1_APIXML := es1_API.xml |
| 21 | ES2_APIXML := es2_API.xml |
| 22 | ES1_OUTPUT_DIR := glapi-es1 |
| 23 | ES2_OUTPUT_DIR := glapi-es2 |
| 24 | |
| 25 | ES1_DEPS = $(ES1_APIXML) base1_API.xml es1_EXT.xml es_EXT.xml \ |
| 26 | es1_COMPAT.xml es_COMPAT.xml |
| 27 | ES2_DEPS = $(ES2_APIXML) base2_API.xml es2_EXT.xml es_EXT.xml \ |
| 28 | es2_COMPAT.xml es_COMPAT.xml |
| 29 | |
| 30 | ES1_OUTPUTS := $(addprefix $(ES1_OUTPUT_DIR)/, $(OUTPUTS)) |
| 31 | ES2_OUTPUTS := $(addprefix $(ES2_OUTPUT_DIR)/, $(OUTPUTS)) |
| 32 | |
Chia-I Wu | 7be4d6b | 2010-01-24 11:03:20 +0800 | [diff] [blame^] | 33 | all: $(ES1_OUTPUTS) $(ES2_OUTPUTS) |
Chia-I Wu | f68bf06 | 2009-09-02 12:04:56 +0800 | [diff] [blame] | 34 | |
| 35 | $(ES1_OUTPUTS): APIXML := $(ES1_APIXML) |
| 36 | $(ES2_OUTPUTS): APIXML := $(ES2_APIXML) |
| 37 | $(ES1_OUTPUTS): $(ES1_DEPS) |
| 38 | $(ES2_OUTPUTS): $(ES2_DEPS) |
| 39 | |
| 40 | define gen-glapi |
| 41 | @mkdir -p $(dir $@) |
| 42 | $(PYTHON2) $(PYTHON_FLAGS) $< -f $(APIXML) $(1) > $@ |
| 43 | endef |
| 44 | |
| 45 | %/glapidispatch.h: $(GLAPI)/gl_table.py $(COMMON) |
| 46 | $(call gen-glapi,-c -m remap_table) |
| 47 | |
| 48 | %/glapioffsets.h: $(GLAPI)/gl_offsets.py $(COMMON) |
| 49 | $(call gen-glapi,-c) |
| 50 | |
| 51 | %/glapitable.h: $(GLAPI)/gl_table.py $(COMMON) |
| 52 | $(call gen-glapi,-c) |
| 53 | |
| 54 | %/glapitemp.h: $(GLAPI)/gl_apitemp.py $(COMMON) |
Chia-I Wu | f1c7874 | 2009-11-06 16:49:04 +0800 | [diff] [blame] | 55 | $(call gen-glapi,-c) |
Chia-I Wu | f68bf06 | 2009-09-02 12:04:56 +0800 | [diff] [blame] | 56 | |
| 57 | %/glprocs.h: $(GLAPI)/gl_procs.py $(COMMON) |
| 58 | $(call gen-glapi,-c) |
| 59 | |
| 60 | %/sparc/glapi_sparc.S: $(GLAPI)/gl_SPARC_asm.py $(COMMON) |
| 61 | $(call gen-glapi) |
| 62 | |
| 63 | %/x86-64/glapi_x86-64.S: $(GLAPI)/gl_x86-64_asm.py $(COMMON) |
| 64 | $(call gen-glapi) |
| 65 | |
| 66 | %/x86/glapi_x86.S: $(GLAPI)/gl_x86_asm.py $(COMMON) |
| 67 | $(call gen-glapi) |
| 68 | |
| 69 | %/main/enums.c: $(GLAPI)/gl_enums.py $(COMMON) |
| 70 | $(call gen-glapi) |
| 71 | |
| 72 | %/main/remap_helper.h: $(GLAPI)/remap_helper.py $(COMMON) |
| 73 | $(call gen-glapi) |
| 74 | |
| 75 | verify_xml: |
| 76 | @if [ ! -f gl.h ]; then \ |
| 77 | echo "Please copy gl.h and gl2.h to this directory"; \ |
| 78 | exit 1; \ |
| 79 | fi |
| 80 | @echo "Verifying that es1_API.xml covers OpenGL ES 1.1..." |
| 81 | @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl.h > tmp.xml |
| 82 | @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es1_API.xml |
| 83 | @echo "Verifying that es2_API.xml covers OpenGL ES 2.0..." |
| 84 | @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl2.h > tmp.xml |
| 85 | @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es2_API.xml |
| 86 | @rm -f tmp.xml |
| 87 | |
| 88 | clean: |
Chia-I Wu | f68bf06 | 2009-09-02 12:04:56 +0800 | [diff] [blame] | 89 | -rm -rf $(ES1_OUTPUT_DIR) $(ES2_OUTPUT_DIR) |
| 90 | -rm -f *~ *.pyc *.pyo |