summaryrefslogtreecommitdiff
path: root/gen.tab/Makefile.am
blob: 66f35732dcdb7b2881869bc3785c8c843743eeda (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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
EXTRA_PROGRAMS = \
		gen-unicode-version \
		gen-bidi-type-tab \
		gen-joining-type-tab \
		gen-arabic-shaping-tab \
		gen-mirroring-tab \
		gen-brackets-tab \
                gen-brackets-type-tab 

gen_unicode_version_SOURCES = gen-unicode-version.c
gen_bidi_type_tab_SOURCES = gen-bidi-type-tab.c packtab.c packtab.h
gen_joining_type_tab_SOURCES = gen-joining-type-tab.c packtab.c packtab.h
gen_arabic_shaping_tab_SOURCES = gen-arabic-shaping-tab.c
gen_mirroring_tab_SOURCES = gen-mirroring-tab.c packtab.c packtab.h
gen_brackets_tab_SOURCES = gen-brackets-tab.c packtab.c packtab.h
gen_brackets_type_tab_SOURCES = gen-brackets-type-tab.c packtab.c packtab.h

CLEANFILES = $(EXTRA_PROGRAMS)
DISTCLEANFILES =

AM_CPPFLAGS = \
		-I$(top_builddir)/lib \
		-I$(top_srcdir)/lib \
		-I$(top_srcdir)/charset

VPATH += \
		$(builddir)/unidata \
		$(builddir)/unidata/extracted \
		$(srcdir)/unidata \
		$(srcdir)/unidata/extracted \
		$(top_builddir)/lib


UCD_FILES = \
		unidata/ReadMe.txt \
		unidata/UnicodeData.txt \
		unidata/BidiMirroring.txt \
		unidata/BidiBrackets.txt \
		unidata/ArabicShaping.txt

EXTRA_DIST = $(UCD_FILES)

COMPRESSION = 2

# generate bidi-type.tab.i

gen_bidi_type_tab = gen-bidi-type-tab$(EXEEXT)

derived_bidi-type.tab.i: \
		DerivedBidiClass.txt \
		fribidi-unicode-version.h \
		$(gen_bidi_type_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_bidi_type_tab) $(gen_bidi_type_tab_SOURCES)
	./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

bidi-type.tab.i: \
		UnicodeData.txt \
		fribidi-unicode-version.h \
		$(gen_bidi_type_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_bidi_type_tab) $(gen_bidi_type_tab_SOURCES)
	./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

DISTCLEANFILES += derived_bidi-type.tab.i

# generate joining-type.tab.i

gen_joining_type_tab = gen-joining-type-tab$(EXEEXT)

joining-type.tab.i: \
		UnicodeData.txt \
		ArabicShaping.txt \
		fribidi-unicode-version.h \
		$(gen_joining_type_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_joining_type_tab) $(gen_joining_type_tab_SOURCES)
	./$(gen_joining_type_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

# generate arabic-shaping.tab.i

gen_arabic_shaping_tab = gen-arabic-shaping-tab$(EXEEXT)

arabic-shaping.tab.i: \
		UnicodeData.txt \
		fribidi-unicode-version.h \
		$(gen_arabic_shaping_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_arabic_shaping_tab) $(gen_arabic_shaping_tab_SOURCES)
	./$(gen_arabic_shaping_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

# generate mirroring.tab.i

gen_mirroring_tab = gen-mirroring-tab$(EXEEXT)

mirroring.tab.i: \
		BidiMirroring.txt \
		fribidi-unicode-version.h \
		$(gen_mirroring_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_mirroring_tab) $(gen_mirroring_tab_SOURCES)
	./$(gen_mirroring_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

# generate brackets.tab.i

gen_brackets_tab = gen-brackets-tab$(EXEEXT)

brackets.tab.i: \
		BidiBrackets.txt \
		UnicodeData.txt \
		fribidi-unicode-version.h \
		$(gen_brackets_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_brackets_tab) $(gen_brackets_tab_SOURCES)
	./$(gen_brackets_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

# generate brackets-type.tab.i

gen_brackets_type_tab = gen-brackets-type-tab$(EXEEXT)

brackets-type.tab.i: \
		BidiBrackets.txt \
		fribidi-unicode-version.h \
		$(gen_brackets_type_tab_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_brackets_type_tab) $(gen_brackets_type_tab_SOURCES)
	./$(gen_brackets_type_tab) $(COMPRESSION) $^ > $@ \
	|| ($(RM) $@ && false)

# generate fribidi-unicode-version.h

gen_unicode_version = gen-unicode-version$(EXEEXT)

fribidi-unicode-version.h: \
		ReadMe.txt \
		BidiMirroring.txt \
		$(gen_unicode_version_SOURCES)
	$(BUILD_CC) $(BUILD_CFLAGS) -o $(gen_unicode_version) $(gen_unicode_version_SOURCES)
	./$(gen_unicode_version) $^ > $@ \
	|| ($(RM) $@ && false)

# generate all generators:
gen: $(EXTRA_PROGRAMS)

$(top_builddir)/config.h: $(top_srcdir)/config.h.in
	cd $(top_builddir) && $(BUILD_CC) $(BUILD_CFLAGS) -o config.h

$(top_builddir)/lib/fribidi-config.h: $(top_srcdir)/lib/fribidi-config.h.in
	cd $(top_builddir)/lib && $(BUILD_CC) $(BUILD_CFLAGS) -o fribidi-config.h

.PHONY: gen

.DELETE_ON_ERROR:

-include $(top_srcdir)/git.mk