summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1996-02-21 10:49:46 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1996-02-21 10:49:46 +0000
commitc5483309b52f01b6275d1cb68a48219ed666cf17 (patch)
treeb37b4247b069556db2c4eb1b7ad79a16921dee6d /tools
parenta76589a552b694b3888cd8853e7d2d469f51ac43 (diff)
downloadocaml-c5483309b52f01b6275d1cb68a48219ed666cf17.tar.gz
Portage Windows NT/95.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@650 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'tools')
-rw-r--r--tools/Makefile.nt111
1 files changed, 111 insertions, 0 deletions
diff --git a/tools/Makefile.nt b/tools/Makefile.nt
new file mode 100644
index 0000000000..87cada26c4
--- /dev/null
+++ b/tools/Makefile.nt
@@ -0,0 +1,111 @@
+!include ..\config\Makefile.nt
+
+CAMLRUN=..\boot\cslrun
+CAMLC=$(CAMLRUN) ..\boot\cslc -I ..\boot
+CAMLLEX=$(CAMLRUN) ..\boot\csllex
+INCLUDES=-I ..\utils -I ..\parsing -I ..\typing -I ..\bytecomp -I ..\asmcomp
+COMPFLAGS=$(INCLUDES)
+LINKFLAGS=$(INCLUDES)
+
+all: csldep cslprof
+
+# The dependency generator
+
+CAMLDEP=csldep.cmo
+
+csldep: $(CAMLDEP)
+ $(CAMLC) $(LINKFLAGS) -o csldep misc.cmo $(CAMLDEP)
+
+clean::
+ rm -f csldep
+
+csldep.ml: csldep.mll
+ $(CAMLLEX) csldep.mll
+
+clean::
+ rm -f csldep.ml
+
+install::
+ cp csldep $(BINDIR)\csldep.exe
+
+beforedepend:: csldep
+
+# The profiler
+
+CSLPROF=cslprof.cmo
+CSLPROF_IMPORTS=misc.cmo config.cmo clflags.cmo terminfo.cmo \
+ location.cmo longident.cmo pstream.cmo parser.cmo lexer.cmo parse.cmo
+
+cslprof: $(CSLPROF) profiling.cmo
+ $(CAMLC) $(LINKFLAGS) -o cslprof $(CSLPROF_IMPORTS) $(CSLPROF)
+
+install::
+ cp cslprof $(BINDIR)\cslprof.exe
+ cp cslcp $(BINDIR)\cslcp
+ cp profiling.cmi profiling.cmo $(LIBDIR)
+
+clean::
+ rm -f cslprof
+
+# To make custom toplevels
+
+install::
+ cp cslmktop $(BINDIR)\cslmktop
+
+# The bytecode disassembler
+
+DUMPOBJ=opnames.cmo dumpobj.cmo
+
+dumpobj: $(DUMPOBJ)
+ $(CAMLC) $(LINKFLAGS) -o dumpobj misc.cmo tbl.cmo config.cmo ident.cmo opcodes.cmo runtimedef.cmo $(DUMPOBJ)
+
+clean::
+ rm -f dumpobj
+
+opnames.ml: ..\byterun\instruct.h
+ sed -e '/\/\*/d' \
+ -e 's\enum \(.*\) {/let names_of_\1 = [|/' \
+ -e 's/};$$/ |]/' \
+ -e 's/\([A-Z][A-Z_0-9a-z]*\)/"\1"/g' \
+ -e 's/,/;/g' \
+ ..\byterun\instruct.h > opnames.ml
+
+clean::
+ rm -f opnames.ml
+
+beforedepend:: opnames.ml
+
+# Dump .cmx files
+
+dumpapprox: dumpapprox.cmo
+ $(CAMLC) $(LINKFLAGS) -o dumpapprox config.cmo dumpapprox.cmo
+
+clean::
+ rm -f dumpapprox
+
+# Print imported interfaces for .cmo files
+
+objinfo: objinfo.cmo
+ $(CAMLC) $(LINKFLAGS) -o objinfo config.cmo objinfo.cmo
+
+clean::
+ rm -f objinfo
+
+# Common stuff
+
+.SUFFIXES:
+.SUFFIXES: .ml .cmo .mli .cmi
+
+.ml.cmo:
+ $(CAMLC) -c $(COMPFLAGS) $<
+
+.mli.cmi:
+ $(CAMLC) -c $(COMPFLAGS) $<
+
+clean::
+ rm -f *.cmo *.cmi
+
+depend: beforedepend
+ $(CAMLRUN) .\csldep $(INCLUDES) *.mli *.ml > .depend
+
+!include .depend