/[svn]/Makefile
ViewVC logotype

Diff of /Makefile

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 71 by abate, Tue Jul 10 17:03:32 2007 UTC revision 139 by abate, Tue Jul 10 17:09:49 2007 UTC
# Line 1  Line 1 
1  # Source directories  # Source directories
2    
3  DIRS = parser typing types runtime driver  DIRS = misc parser typing types runtime driver toplevel
4    CLEAN_DIRS = $(DIRS) tools tests
5    
6  # Objects to build  # Objects to build
7    
8  PARSER = parser/lexer.cmo parser/location.cmo parser/ast.cmo parser/parser.cmo  MISC = misc/state.cmo misc/pool.cmo misc/encodings.cmo
9    
10    PARSER = parser/lexer.cmo parser/location.cmo \
11             parser/wlexer.cmo \
12             parser/ast.cmo parser/parser.cmo
13    
14  TYPING = typing/typed.cmo typing/typer.cmo  TYPING = typing/typed.cmo typing/typer.cmo
15    
# Line 19  Line 24 
24    
25  RUNTIME = runtime/value.cmo \  RUNTIME = runtime/value.cmo \
26            runtime/load_xml.cmo runtime/run_dispatch.cmo \            runtime/load_xml.cmo runtime/run_dispatch.cmo \
27              runtime/print_xml.cmo \
28            runtime/eval.cmo            runtime/eval.cmo
29    
30  DRIVER = driver/cduce.cmo  DRIVER = driver/cduce.cmo
31    
32  TOPLEVEL = toplevel/toploop.cmo  OBJECTS = $(MISC) $(TYPES) $(PARSER) $(TYPING) $(RUNTIME)
33    
34    CDUCE = $(OBJECTS) $(DRIVER) driver/run.cmo
35    WEBIFACE  = $(OBJECTS) $(DRIVER) driver/examples.cmo driver/webiface.cmo
36    TOPLEVEL = $(OBJECTS) toplevel/toploop.cmo
37    
 OBJECTS = $(TYPES) $(PARSER) $(TYPING) $(RUNTIME)  
38  XOBJECTS = $(OBJECTS:.cmo=.cmx)  XOBJECTS = $(OBJECTS:.cmo=.cmx)
39  XDRIVER = $(DRIVER:.cmo=.cmx)  XCDUCE = $(CDUCE:.cmo=.cmx)
40    
41    
42    
43  DEBUG = -g  DEBUG = -g
44  PACKAGES = pxp-engine,pxp-lex-iso88591,camlp4,num  PACKAGES = pxp-engine,pxp-lex-iso88591,wlexing,camlp4,num,cgi
45  OCAMLCP = ocamlc  OCAMLCP = ocamlc
46  OCAMLC = ocamlfind $(OCAMLCP) -package $(PACKAGES)  OCAMLC = ocamlfind $(OCAMLCP) -package $(PACKAGES)
47  OCAMLOPT = ocamlfind ocamlopt  -package $(PACKAGES)  OCAMLOPT = ocamlfind ocamlopt  -package $(PACKAGES)
# Line 51  Line 60 
60          $(OCAMLOPT) -a -o $@ $(XOBJECTS)          $(OCAMLOPT) -a -o $@ $(XOBJECTS)
61    
62    
63  cduce: $(OBJECTS) $(DRIVER)  memento.html: cduce tests/memento.cd tests/memento.xml
64          $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(OBJECTS) $(DRIVER)          ./cduce -quiet tests/memento.cd
65    
66    cduce: $(CDUCE)
67            $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(CDUCE)
68    
69    toplevel.out: $(TOPLEVEL)
70            $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(TOPLEVEL)
71    
72  toplevel: $(OBJECTS) $(TOPLEVEL)  webiface: $(WEBIFACE)
73          $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(OBJECTS) $(TOPLEVEL)          $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(WEBIFACE)
74    
75    
76  dtd2cduce: tools/dtd2cduce.cmo  dtd2cduce: tools/dtd2cduce.cmo
77          $(OCAMLC) $(DEBUG) -linkpkg -o $@ $<          $(OCAMLC) $(DEBUG) -linkpkg -o $@ $<
78    
79  cduce.opt: all.cmxa $(XDRIVER)  pull: tools/pull.cmo
80          $(OCAMLOPT) -linkpkg -o $@ gramlib.cmxa $(XOBJECTS) $(XDRIVER)          $(OCAMLC) $(DEBUG) -linkpkg -o $@ $<
81    
82    cduce.opt: $(XCDUCE)
83            $(OCAMLOPT) -linkpkg -o $@ gramlib.cmxa $(XCDUCE)
84    
85  compute_depend:  compute_depend:
86          @echo "Computing dependencies ..."          @echo "Computing dependencies ..."
87          ocamldep $(INCLUDES) $(SYNTAX_PARSER) $(DEPEND) > depend          ocamldep $(INCLUDES) $(SYNTAX_PARSER) $(DEPEND) > depend
88    
89    parser/wlexer.ml: parser/wlexer.mll
90            wlex parser/wlexer.mll
91    
92  run_top: all.cma  run_top: all.cma
93          ledit ocaml $(INCLUDES) `ocamlfind use pxp` all.cma          ledit ocaml $(INCLUDES) `ocamlfind use pxp` all.cma
94    
95  clean:  clean:
96          for i in $(DIRS); do \          for i in $(CLEAN_DIRS); do \
97          (cd $$i; rm -f *.cmi *.cmo *.cma *.cmx *.o *~); \          (cd $$i; rm -f *.cmi *.cmo *.cma *.cmx *.o *~); \
98          done          done
99            rm -f parser/wlexer.ml
100          rm -f *.cmi *.cmo *.cma *.cmx *.a *.cmxa *.o *~          rm -f *.cmi *.cmo *.cma *.cmx *.a *.cmxa *.o *~
101          rm -f cduce cduce.opt          rm -f cduce cduce.opt ocamlprof.dump
102            rm -f dtd2cduce pool webiface
103          rm -Rf prepro          rm -Rf prepro
104    
105    
# Line 94  Line 117 
117          fi; \          fi; \
118          done; \          done; \
119          done          done
120            cp parser/wlexer.mll prepro/parser/
121          cp Makefile depend prepro/          cp Makefile depend prepro/
122          (cd prepro;  make cduce OCAMLCP="ocamlcp -p a" SYNTAX_PARSER=)          (cd prepro;  make cduce OCAMLCP="ocamlcp -p a" SYNTAX_PARSER=)
123    
# Line 115  Line 139 
139          fort all.cma $(INCLUDES) tests/test_fort.ml          fort all.cma $(INCLUDES) tests/test_fort.ml
140    
141  include depend  include depend
142    
143    
144    driver/examples.ml: cduce tests/web.cd tests/examples.xml
145            ./cduce -quiet tests/web.cd
146    
147    
148    # Site-specific installation
149    build_web:
150            rsh cedre ". .env; cd IMPLEM/CDUCE; make webiface memento.html"
151    install_web:
152            ssh cduce@iris "cp ~frisch/IMPLEM/CDUCE/webiface cgi-bin/cduce2; cp ~frisch/IMPLEM/CDUCE/memento.html public_html/; chmod +s cgi-bin/cduce2"
153    

Legend:
Removed from v.71  
changed lines
  Added in v.139

CVS Admin">CVS Admin
ViewVC Help
Powered by ViewVC 1.1.5