blob: 6fa1cfd9dc1e6929c46ea45552061b14ec41e2dd (
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
|
SUBDIRS = . host-ruby host-asm host-julia host-ocaml host-c \
host-d host-csharp host-go host-java host-rust host-crack host-js
# libragel contains the parse tree and other parsing support code. Everything
# except the reducers, which are specific to the frontends.
lib_LTLIBRARIES = libragel.la
bin_PROGRAMS = ragel
# nodist_pkginclude_HEADERS = config.h
data_DATA = ragel.lm
#
# libragel: ragel program minus host-specific code
#
libragel_la_CPPFLAGS = -I$(top_srcdir)/aapl -I$(top_srcdir)/colm/include -DBINDIR='"@bindir@"'
dist_libragel_la_SOURCES = \
parsedata.h parsetree.h inputdata.h pcheck.h reducer.h rlscan.h load.h \
parsetree.cc longest.cc parsedata.cc inputdata.cc load.cc reducer.cc
libragel_la_LDFLAGS = -no-undefined
libragel_la_LIBADD = $(LIBFSM_LA) $(LIBCOLM_LA)
if LINKER_NO_UNDEFINED
libragel_la_LDFLAGS += -Wl,--no-undefined
endif
#
# ragel program.
#
ragel_CPPFLAGS = -I$(top_srcdir)/aapl -I$(top_srcdir)/colm/include
dist_ragel_SOURCES = \
main.cc
nodist_ragel_SOURCES = \
parse.c rlreduce.cc
ragel_LDADD = $(LIBFSM_LA) $(LIBCOLM_LA) libragel.la
ragel_DEPENDENCIES = $(LIBFSM_LA) $(LIBCOLM_LA) libragel.la
BUILT_SOURCES = \
version.h \
parse.c rlreduce.cc \
include/ragel
include/ragel:
mkdir -p include
ln -s .. include/ragel
if WITH_RAGEL_KELBT
nodist_ragel_SOURCES += \
rlscan.cc rlparse.cc rlparse.h
BUILT_SOURCES += \
rlscan.cc rlparse.cc rlparse.h
endif
version.h: Makefile
echo '#define RAGEL_VERSION "@RAGEL_VERSION@"' > version.h
echo '#define RAGEL_PUBDATE "@RAGEL_PUBDATE@"' >> version.h
EXTRA_DIST = \
$(RAGEL_LM) \
rlscan.rl \
rlparse.kh \
rlparse.kl
CLEANFILES = parse.c commit.cc rlhc.c
if WITH_RAGEL_KELBT
CLEANFILES += rlscan.cc rlparse.cc rlparse.h
endif
RAGEL_LM = \
rlparse.lm \
ragel.lm \
rlreduce.lm
parse.pack: $(RAGEL_LM) $(COLM) $(COLM_WRAP)
$(COLM_WRAP) -c -b rlparseC -o $@ -p parse.c -m rlreduce.cc $<
rlreduce.cc: parse.pack
$(COLM_WRAP) -o $@ $<
parse.c: parse.pack
$(COLM_WRAP) -o $@ $<
if WITH_RAGEL_KELBT
# This dependency comes from the import of the parser defines into the scanner.
rlscan.cc: rlparse.h
inputdata.cc: rlparse.h
ragel-rlscan.$(OBJEXT): rlscan.cc
rlscan.cc: rlscan.rl
$(RAGEL) -G2 -I$(builddir) -o $@ $<
rlparse.h: rlparse.kh
$(KELBT) -o $@ $<
rlparse.cc: rlparse.kl rlparse.kh
$(KELBT) -o $@ $<
endif
|