| 1 |
abate |
22 |
DEBUG = -g
|
| 2 |
abate |
23 |
OCAMLC = ocamlc
|
| 3 |
abate |
22 |
|
| 4 |
abate |
38 |
PARSER = parser/lexer.cmo parser/location.cmo parser/ast.cmo parser/parser.cmo
|
| 5 |
abate |
1 |
|
| 6 |
abate |
5 |
TYPING = typing/typed.cmo typing/typer.cmo
|
| 7 |
abate |
4 |
|
| 8 |
abate |
3 |
TYPES = types/recursive.cmo types/sortedList.cmo \
|
| 9 |
|
|
types/sortedMap.cmo types/boolean.cmo \
|
| 10 |
abate |
12 |
types/intervals.cmo types/chars.cmo types/atoms.cmo \
|
| 11 |
abate |
15 |
types/types.cmo \
|
| 12 |
abate |
17 |
types/patterns.cmo \
|
| 13 |
abate |
18 |
types/sequence.cmo \
|
| 14 |
|
|
types/builtin.cmo
|
| 15 |
abate |
3 |
|
| 16 |
abate |
45 |
RUNTIME = runtime/value.cmo
|
| 17 |
|
|
|
| 18 |
abate |
10 |
DRIVER = driver/cduce.cmo
|
| 19 |
abate |
3 |
|
| 20 |
abate |
46 |
DIRS = parser typing types runtime driver
|
| 21 |
abate |
10 |
|
| 22 |
abate |
45 |
OBJECTS = $(TYPES) $(PARSER) $(TYPING) $(RUNTIME)
|
| 23 |
abate |
20 |
XOBJECTS = $(OBJECTS:.cmo=.cmx)
|
| 24 |
|
|
XDRIVER = $(DRIVER:.cmo=.cmx)
|
| 25 |
|
|
|
| 26 |
abate |
45 |
DEPEND = parser/*.ml parser/*.mli typing/*.ml typing/*.mli types/*.ml types/*.mli runtime/*.mli runtime/*.ml driver/*.mli driver/*.ml
|
| 27 |
abate |
46 |
INCLUDES = -I +camlp4 -I parser -I types -I runtime -I typing
|
| 28 |
abate |
1 |
|
| 29 |
abate |
3 |
SYNTAX_PARSER = -pp 'camlp4o pa_extend.cmo'
|
| 30 |
|
|
|
| 31 |
abate |
1 |
all.cma: $(OBJECTS)
|
| 32 |
abate |
22 |
$(OCAMLC) $(DEBUG) -o all.cma -I +camlp4 gramlib.cma nums.cma -a $(OBJECTS)
|
| 33 |
abate |
1 |
|
| 34 |
abate |
20 |
all.cmxa: $(XOBJECTS)
|
| 35 |
abate |
22 |
ocamlopt -a -o all.cmxa $(XOBJECTS)
|
| 36 |
abate |
20 |
|
| 37 |
|
|
|
| 38 |
abate |
10 |
cduce: all.cma $(DRIVER)
|
| 39 |
abate |
22 |
$(OCAMLC) $(DEBUG) -o cduce all.cma $(DRIVER)
|
| 40 |
abate |
10 |
|
| 41 |
abate |
20 |
cduce.opt: all.cmxa $(XDRIVER)
|
| 42 |
|
|
ocamlopt -o cduce.opt -I +camlp4 gramlib.cmxa nums.cmxa all.cmxa $(XDRIVER)
|
| 43 |
|
|
|
| 44 |
abate |
3 |
compute_depend:
|
| 45 |
|
|
@echo "Computing dependencies ..."
|
| 46 |
abate |
4 |
ocamldep $(INCLUDES) $(SYNTAX_PARSER) $(DEPEND) > depend
|
| 47 |
abate |
1 |
|
| 48 |
abate |
3 |
run_top: all.cma
|
| 49 |
abate |
4 |
ledit ocaml $(INCLUDES) all.cma
|
| 50 |
abate |
1 |
|
| 51 |
|
|
clean:
|
| 52 |
abate |
31 |
(cd parser; rm -f *.cmi *.cmo *.cma *.cmx *.o *~)
|
| 53 |
|
|
(cd types; rm -f *.cmi *.cmo *.cma *.cmx *.o *~)
|
| 54 |
|
|
(cd typing; rm -f *.cmi *.cmo *.cma *.cmx *.o *~)
|
| 55 |
|
|
(cd driver; rm -f *.cmi *.cmo *.cma *.cmx *.o *~)
|
| 56 |
|
|
rm -f *.cmi *.cmo *.cma *.cmx *.o *~
|
| 57 |
abate |
10 |
rm -f cduce
|
| 58 |
abate |
1 |
|
| 59 |
|
|
.SUFFIXES: .ml .mli .cmo .cmi .cmx
|
| 60 |
|
|
|
| 61 |
|
|
.ml.cmo:
|
| 62 |
abate |
22 |
$(OCAMLC) $(DEBUG) -c $(SYNTAX_PARSER) $(INCLUDES) $<
|
| 63 |
abate |
1 |
.ml.cmx:
|
| 64 |
abate |
20 |
ocamlopt -c $(SYNTAX_PARSER) $(INCLUDES) $<
|
| 65 |
abate |
1 |
|
| 66 |
|
|
.mli.cmi:
|
| 67 |
abate |
22 |
$(OCAMLC) $(DEBUG) -c $(INCLUDES) $<
|
| 68 |
abate |
1 |
|
| 69 |
|
|
# FORTPATH = /users/formel8/frisch/solaris/fort/fort
|
| 70 |
|
|
FORTPATH = /home/frisch/fort
|
| 71 |
|
|
FORTBIN = $(FORTPATH)/fort
|
| 72 |
|
|
FORTLIB = $(FORTPATH)
|
| 73 |
|
|
|
| 74 |
|
|
test: all.cma
|
| 75 |
|
|
$(FORTBIN) -I $(FORTLIB) all.cma test_fort.ml
|
| 76 |
|
|
|
| 77 |
abate |
3 |
include depend
|