about summary refs log blame commit diff
path: root/src/libexpr/Makefile.am
blob: dbc93abd5e5bf7d4144c1ffd35598902f7b77fcd (plain) (tree)
1
2
3
4
5
6
7
8
9
10
                            
 
                                                                
                             
                                                    
               
 
                                                            

               
                                                                
             
                 

 
                    
 
                                   
 
                                   
                                               
 
                                
                                                                        
 
 

                                   

                                                                                  
 
                                     

 
            







                                                 
lib_LTLIBRARIES = libexpr.la

libexpr_la_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 \
 nixexpr-ast.hh

EXTRA_DIST = lexer.l parser.y nixexpr-ast.def nixexpr-ast.cc

AM_CXXFLAGS = \
 -I.. ${bdb_include} ${aterm_include} -I../libutil -I../libstore
AM_CFLAGS = \
 ${aterm_include}


# Parser generation.

parser.cc: parser-tab.h lexer-tab.h

parser-tab.c parser-tab.h: parser.y
	$(bison) -v -o parser-tab.c parser.y -d

lexer-tab.c lexer-tab.h: lexer.l
	$(flex) --outfile lexer-tab.c --header-file=lexer-tab.h lexer.l 


# ATerm helper function generation.

nixexpr-ast.cc nixexpr-ast.hh: ../aterm-helper.pl nixexpr-ast.def
	$(perl) ../aterm-helper.pl nixexpr-ast.hh nixexpr-ast.cc < nixexpr-ast.def

nixexpr.cc nixexpr.hh: nixexpr-ast.hh


CLEANFILES =


# SDF stuff (not built by default).
nix.tbl: nix.sdf
	sdf2table -m Nix -s -i nix.sdf -o nix.tbl

test.ast: test.nix nix.tbl
	sglri -p nix.tbl -i test.nix -o test.ast