aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/Makefile.am
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2004-01-30 15:21:42 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2004-01-30 15:21:42 +0000
commitc5baaafae69394082817ede9e6eb3910c4601a72 (patch)
treebfc2599717c4274e16ba02959617254873c0c007 /src/libexpr/Makefile.am
parentabd1878b26200ba3fa75592637aa87e04f52100d (diff)
* Replaced the SDF parser by a substantially faster Bison/Flex
parser (roughly 80x faster). The absolutely latest version of Bison (1.875c) is required for reentrant GLR support, as well as a recent version of Flex (say, 2.5.31). Note that most Unix distributions ship with the prehistoric Flex 2.5.4, which doesn't support reentrancy.
Diffstat (limited to 'src/libexpr/Makefile.am')
-rw-r--r--src/libexpr/Makefile.am18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/libexpr/Makefile.am b/src/libexpr/Makefile.am
index a11dbbda6..66a3008ed 100644
--- a/src/libexpr/Makefile.am
+++ b/src/libexpr/Makefile.am
@@ -1,20 +1,22 @@
noinst_LIBRARIES = libexpr.a
libexpr_a_SOURCES = nixexpr.cc nixexpr.hh parser.cc parser.hh \
- eval.cc eval.hh primops.cc primops.hh nix.sdf
+ eval.cc eval.hh primops.cc primops.hh \
+ lexer-tab.c lexer-tab.h parser-tab.c parser-tab.h
AM_CXXFLAGS = \
-I.. -I../../externals/inst/include -I../libutil -I../libstore
+AM_CFLAGS = \
+ -I../../externals/inst/include
-# Parse table generation.
+# Parser generation.
-parser.o: parse-table.h
+parser-tab.c parser-tab.h: parser.y
+ ../grammartest/inst/bin/bison -v -o parser-tab.c parser.y -d
-parse-table.h: nix.tbl
- ../bin2c/bin2c nixParseTable < $< > $@ || (rm $@ && exit 1)
+lexer-tab.c lexer-tab.h: lexer.l
+ flex --outfile lexer-tab.c --header-file=lexer-tab.h lexer.l
-%.tbl: %.sdf
- ../../externals/inst/bin/sdf2table -s -i $< -o $@
-CLEANFILES = parse-table.h nix.tbl
+CLEANFILES =