summaryrefslogtreecommitdiff
path: root/otherlibs/labltk/compiler/Makefile.nt
blob: 3c936ba4c6c772240fdf5d8563b0750d2909bc96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
include ../support/Makefile.common.nt

OBJS=	../support/support.cmo flags.cmo copyright.cmo \
	tsort.cmo tables.cmo printer.cmo lexer.cmo \
	pplex.cmo ppyac.cmo ppexec.cmo ppparse.cmo \
	parser.cmo compile.cmo intf.cmo maincompile.cmo

PPOBJS= pplex.cmo ppyac.cmo ppexec.cmo ppparse.cmo pp.cmo

all: tkcompiler.exe pp.exe

tkcompiler.exe : $(OBJS)
	$(CAMLC) $(LINKFLAGS) -o tkcompiler.exe $(OBJS)

pp.exe : $(PPOBJS)
	$(CAMLC) $(LINKFLAGS) -o pp.exe $(PPOBJS)

lexer.ml: lexer.mll
	$(CAMLLEX) lexer.mll

parser.ml parser.mli: parser.mly
	$(CAMLYACC) -v parser.mly

pplex.ml: pplex.mll
	$(CAMLLEX) pplex.mll

pplex.mli: ppyac.cmi

ppyac.ml ppyac.mli: ppyac.mly
	$(CAMLYACC) -v ppyac.mly

copyright.ml: copyright
	(echo "let copyright=\"\\"; \
	cat copyright; \
	echo "\""; \
	echo "let write ~w = w copyright;;") > copyright.ml 

clean : 
	rm -f *.cm*  parser.ml parser.mli lexer.ml copyright.ml
	rm -f pplex.ml ppyac.ml ppyac.mli ppyac.output
	rm -f tkcompiler.exe pp.exe parser.output

scratch :
	rm -f *.cm*  parser.ml parser.mli lexer.ml tkcompiler.exe
	rm -f *.cm*  pplex.ml ppyac.ml ppyac.mli pp.exe

install: 
	cp tkcompiler.exe $(INSTALLDIR)
	cp pp.exe $(INSTALLDIR)

.SUFFIXES :
.SUFFIXES : .mli .ml .cmi .cmo .mlp

.mli.cmi:
	$(CAMLCOMP) $(COMPFLAGS) -I ../support $<

.ml.cmo:
	$(CAMLCOMP) $(COMPFLAGS) -I ../support $<

depend: parser.ml parser.mli lexer.ml pplex.ml ppyac.ml ppyac.mli
	$(CAMLDEP) *.mli *.ml > .depend

include .depend