/[svn]/Makefile
ViewVC logotype

Contents of /Makefile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 90 - (hide annotations)
Tue Jul 10 17:05:20 2007 UTC (5 years, 10 months ago) by abate
File size: 3292 byte(s)
[r2002-11-09 10:42:14 by cvscast] Empty log message

Original author: cvscast
Date: 2002-11-09 10:42:16+00:00
1 abate 61 # Source directories
2 abate 22
3 abate 78 DIRS = misc parser typing types runtime driver
4 abate 72 CLEAN_DIRS = $(DIRS) tools tests
5 abate 61
6     # Objects to build
7    
8 abate 79 MISC = misc/pool.cmo misc/encodings.cmo
9 abate 78
10 abate 81 PARSER = parser/lexer.cmo parser/location.cmo \
11     parser/wlexer.cmo \
12     parser/ast.cmo parser/parser.cmo
13 abate 1
14 abate 5 TYPING = typing/typed.cmo typing/typer.cmo
15 abate 4
16 abate 70 TYPES = types/recursive.cmo \
17     types/recursive_share.cmo types/recursive_noshare.cmo \
18     types/sortedList.cmo types/sortedMap.cmo types/boolean.cmo \
19 abate 12 types/intervals.cmo types/chars.cmo types/atoms.cmo \
20 abate 15 types/types.cmo \
21 abate 17 types/patterns.cmo \
22 abate 18 types/sequence.cmo \
23     types/builtin.cmo
24 abate 3
25 abate 70 RUNTIME = runtime/value.cmo \
26     runtime/load_xml.cmo runtime/run_dispatch.cmo \
27 abate 76 runtime/print_xml.cmo \
28 abate 70 runtime/eval.cmo
29 abate 45
30 abate 10 DRIVER = driver/cduce.cmo
31 abate 3
32 abate 90 OBJECTS = $(MISC) $(TYPES) $(PARSER) $(TYPING) $(RUNTIME)
33 abate 63
34 abate 90 CDUCE = $(OBJECTS) $(DRIVER) driver/run.cmo
35     WEBIFACE = $(OBJECTS) $(DRIVER) driver/webiface.cmo
36     TOPLEVEL = $(OBJECTS) toplevel/toploop.cmo
37    
38 abate 20 XOBJECTS = $(OBJECTS:.cmo=.cmx)
39 abate 90 XCDUCE = $(CDUCE:.cmo=.cmx)
40 abate 20
41 abate 1
42 abate 3
43 abate 61 DEBUG = -g
44 abate 90 PACKAGES = pxp-engine,pxp-lex-iso88591,wlexing,camlp4,num,cgi
45 abate 61 OCAMLCP = ocamlc
46     OCAMLC = ocamlfind $(OCAMLCP) -package $(PACKAGES)
47     OCAMLOPT = ocamlfind ocamlopt -package $(PACKAGES)
48    
49     DEPEND = $(DIRS:=/*.ml) $(DIRS:=/*.mli)
50     INCLUDES = $(DIRS:%=-I %)
51    
52     SYNTAX = camlp4o pa_extend.cmo
53     SYNTAX_PARSER = -pp '$(SYNTAX)'
54     PREPRO = $(SYNTAX) pr_o.cmo
55    
56 abate 1 all.cma: $(OBJECTS)
57 abate 61 $(OCAMLC) $(DEBUG) -o $@ -linkpkg gramlib.cma -a $(OBJECTS)
58 abate 1
59 abate 20 all.cmxa: $(XOBJECTS)
60 abate 61 $(OCAMLOPT) -a -o $@ $(XOBJECTS)
61 abate 20
62    
63 abate 90 cduce: $(CDUCE)
64     $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(CDUCE)
65 abate 10
66 abate 90 toplevel: $(TOPLEVEL)
67     $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(TOPLEVEL)
68 abate 63
69 abate 90 webiface: $(WEBIFACE)
70     $(OCAMLC) $(DEBUG) -linkpkg -o $@ gramlib.cma $(WEBIFACE)
71 abate 63
72 abate 90
73 abate 71 dtd2cduce: tools/dtd2cduce.cmo
74     $(OCAMLC) $(DEBUG) -linkpkg -o $@ $<
75    
76 abate 72 pull: tools/pull.cmo
77     $(OCAMLC) $(DEBUG) -linkpkg -o $@ $<
78    
79 abate 20 cduce.opt: all.cmxa $(XDRIVER)
80 abate 61 $(OCAMLOPT) -linkpkg -o $@ gramlib.cmxa $(XOBJECTS) $(XDRIVER)
81 abate 20
82 abate 3 compute_depend:
83     @echo "Computing dependencies ..."
84 abate 4 ocamldep $(INCLUDES) $(SYNTAX_PARSER) $(DEPEND) > depend
85 abate 1
86 abate 81 parser/wlexer.ml: parser/wlexer.mll
87     wlex parser/wlexer.mll
88    
89 abate 3 run_top: all.cma
90 abate 58 ledit ocaml $(INCLUDES) `ocamlfind use pxp` all.cma
91 abate 1
92     clean:
93 abate 72 for i in $(CLEAN_DIRS); do \
94 abate 58 (cd $$i; rm -f *.cmi *.cmo *.cma *.cmx *.o *~); \
95     done
96 abate 81 rm -f parser/wlexer.ml
97 abate 58 rm -f *.cmi *.cmo *.cma *.cmx *.a *.cmxa *.o *~
98 abate 72 rm -f cduce cduce.opt ocamlprof.dump
99 abate 90 rm -f dtd2cduce pool webiface
100 abate 61 rm -Rf prepro
101 abate 1
102 abate 61
103 abate 1 .SUFFIXES: .ml .mli .cmo .cmi .cmx
104    
105 abate 61 profile:
106     rm -Rf prepro
107     mkdir prepro
108     for i in $(DIRS); do \
109     mkdir prepro/$$i; \
110     for j in $$i/*.ml $$i/*.mli; do \
111     if [ -f "$$j" ]; then \
112     echo $$j; \
113     $(PREPRO) $$j -o prepro/$$j; \
114     fi; \
115     done; \
116     done
117     cp Makefile depend prepro/
118     (cd prepro; make cduce OCAMLCP="ocamlcp -p a" SYNTAX_PARSER=)
119    
120 abate 1 .ml.cmo:
121 abate 61 $(OCAMLC) $(DEBUG) -c $(SYNTAX_PARSER) $(INCLUDES) $<
122    
123 abate 1 .ml.cmx:
124 abate 58 $(OCAMLOPT) -c $(SYNTAX_PARSER) $(INCLUDES) $<
125 abate 1
126     .mli.cmi:
127 abate 61 $(OCAMLC) $(DEBUG) -c $(SYNTAX_PARSER) $(INCLUDES) $<
128 abate 1
129     # FORTPATH = /users/formel8/frisch/solaris/fort/fort
130 abate 61 #FORTPATH = /home/frisch/fort
131     #FORTBIN = $(FORTPATH)/fort
132     #FORTLIB = $(FORTPATH)
133 abate 1
134     test: all.cma
135 abate 61 fort all.cma $(INCLUDES) tests/test_fort.ml
136 abate 1
137 abate 3 include depend

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