summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/library/Makefile
blob: 0e03fac2ee176ad8c296acf752785b1c3bac8869 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# src/mesa/shader/slang/library/Makefile

TOP = ../../../../..

include $(TOP)/configs/current

INCDIR = $(TOP)/include

LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)

#
# targets
#

.PHONY: default clean

default: syntax builtin

clean:
	-rm -f syn_to_c gc_to_bin *_syn.h *_gc.h

syntax: slang_pp_directives_syn.h slang_pp_expression_syn.h slang_shader_syn.h slang_pp_version_syn.h

builtin: builtin_110 builtin_120

#
# executables
#

syn_to_c: syn_to_c.c
	$(CC) syn_to_c.c -o syn_to_c

gc_to_bin: gc_to_bin.c slang_shader_syn.h
	$(CC) gc_to_bin.c -o gc_to_bin

#
# syntax scripts
#

slang_pp_directives_syn.h: syn_to_c slang_pp_directives.syn
	./syn_to_c slang_pp_directives.syn > slang_pp_directives_syn.h

slang_pp_expression_syn.h: syn_to_c slang_pp_expression.syn
	./syn_to_c slang_pp_expression.syn > slang_pp_expression_syn.h

slang_shader_syn.h: syn_to_c slang_shader.syn
	./syn_to_c slang_shader.syn > slang_shader_syn.h

slang_pp_version_syn.h: syn_to_c slang_pp_version.syn
	./syn_to_c slang_pp_version.syn > slang_pp_version_syn.h

#
# builtin library sources
#

builtin_110: slang_common_builtin_gc.h slang_core_gc.h slang_fragment_builtin_gc.h slang_vertex_builtin_gc.h

builtin_120: slang_120_core_gc.h slang_builtin_120_common_gc.h slang_builtin_120_fragment_gc.h


slang_120_core_gc.h: gc_to_bin slang_120_core.gc
	./gc_to_bin 1 slang_120_core.gc slang_120_core_gc.h

slang_builtin_120_common_gc.h: gc_to_bin slang_builtin_120_common.gc
	./gc_to_bin 1 slang_builtin_120_common.gc slang_builtin_120_common_gc.h

slang_builtin_120_fragment_gc.h: gc_to_bin slang_builtin_120_fragment.gc
	./gc_to_bin 1 slang_builtin_120_fragment.gc slang_builtin_120_fragment_gc.h

slang_common_builtin_gc.h: gc_to_bin slang_common_builtin.gc
	./gc_to_bin 1 slang_common_builtin.gc slang_common_builtin_gc.h

slang_core_gc.h: gc_to_bin slang_core.gc
	./gc_to_bin 1 slang_core.gc slang_core_gc.h

slang_fragment_builtin_gc.h: gc_to_bin slang_fragment_builtin.gc
	./gc_to_bin 1 slang_fragment_builtin.gc slang_fragment_builtin_gc.h

slang_vertex_builtin_gc.h: gc_to_bin slang_vertex_builtin.gc
	./gc_to_bin 2 slang_vertex_builtin.gc slang_vertex_builtin_gc.h