diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2004-10-26T22·54+0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2004-10-26T22·54+0000 |
commit | 5fe9222b36ad49d74c84edb04d6bc4a7d844be01 (patch) | |
tree | e46926a3d60274e5b2dc9e6090df2804986292b0 /src/libexpr/Makefile.am | |
parent | eb8284ddaa66448d369647f68cb9f89b93a187de (diff) |
* Don't use ATmake / ATmatch anymore, nor the ATMatcher class.
Instead we generate data bindings (build and match functions) for the constructors specified in `constructors.def'. In particular this removes the conversions between AFuns and strings, and Nix expression evaluation now seems 3 to 4 times faster.
Diffstat (limited to 'src/libexpr/Makefile.am')
-rw-r--r-- | src/libexpr/Makefile.am | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/libexpr/Makefile.am b/src/libexpr/Makefile.am index 45145a6bdb18..99ed1a5ed3f8 100644 --- a/src/libexpr/Makefile.am +++ b/src/libexpr/Makefile.am @@ -2,9 +2,10 @@ noinst_LIBRARIES = libexpr.a libexpr_a_SOURCES = nixexpr.cc nixexpr.hh parser.cc parser.hh \ eval.cc eval.hh primops.cc \ - lexer-tab.c lexer-tab.h parser-tab.c parser-tab.h + lexer-tab.c lexer-tab.h parser-tab.c parser-tab.h \ + constructors.hh -EXTRA_DIST = lexer.l parser.y +EXTRA_DIST = lexer.l parser.y constructors.cc AM_CXXFLAGS = \ -I.. ${bdb_include} ${aterm_include} -I../libutil -I../libstore @@ -23,4 +24,12 @@ lexer-tab.c lexer-tab.h: lexer.l $(flex) --outfile lexer-tab.c --header-file=lexer-tab.h lexer.l +# ATerm helper function generation. + +constructors.cc constructors.hh: aterm-helper.pl constructors.def + $(perl) aterm-helper.pl constructors.hh constructors.cc < constructors.def + +nixexpr.hh: constructors.hh + + CLEANFILES = |