ocaml/tools/Makefile.Mac

138 lines
3.7 KiB
Makefile
Raw Blame History

#########################################################################
# #
# Objective Caml #
# #
# Damien Doligez, projet Para, INRIA Rocquencourt #
# #
# Copyright 1999 Institut National de Recherche en Informatique et #
# en Automatique. All rights reserved. This file is distributed #
# under the terms of the Q Public License version 1.0. #
# #
#########################################################################
# $Id$
CAMLRUN = ::boot:ocamlrun
CAMLC = "{CAMLRUN}" ::boot:ocamlc -I ::boot:
CAMLLEX = "{CAMLRUN}" ::boot:ocamllex
INCLUDES = -I ::utils: -I ::parsing: -I ::typing: -I ::bytecomp: -I ::asmcomp:
COMPFLAGS = {INCLUDES}
LINKFLAGS = {INCLUDES}
all Ä ocamldep ocamldumpobj objinfo primreq keywords
# The dependency generator
CAMLDEP_IMPORTS = misc.cmo config.cmo clflags.cmo terminfo.cmo ¶
linenum.cmo warnings.cmo location.cmo longident.cmo ¶
syntaxerr.cmo parser.cmo lexer.cmo parse.cmo
CAMLDEP = ocamldep.cmo
ocamldep Ä {CAMLDEP}
{CAMLC} {LINKFLAGS} -o ocamldep {CAMLDEP_IMPORTS} {CAMLDEP}
clean ÄÄ
delete -i ocamldep
install ÄÄ
duplicate -y ocamldep "{BINDIR}ocamldep"
# The profiler (not available on MacOS for the moment)
#
#CSLPROF = ocamlprof.cmo
#CSLPROF_IMPORTS = misc.cmo config.cmo clflags.cmo terminfo.cmo ¶
# linenum.cmo warnings.cmo location.cmo longident.cmo pstream.cmo ¶
# syntaxerr.cmo parser.cmo lexer.cmo parse.cmo
#
#ocamlprof Ä {CSLPROF} profiling.cmo
# {CAMLC} {LINKFLAGS} -o ocamlprof {CSLPROF_IMPORTS} {CSLPROF}
#
#install ÄÄ
# duplicate -y ocamlprof "{BINDIR}ocamlprof"
# duplicate -y ocamlcp "{BINDIR}ocamlcp"
# duplicate -y profiling.cmi profiling.cmo "{LIBDIR}"
#
#clean ÄÄ
# delete -i ocamlprof
# To make custom toplevels
install ÄÄ
duplicate -y ocamlmktop.tpl "{BINDIR}ocamlmktop"
# The bytecode disassembler
DUMPOBJ = opnames.cmo dumpobj.cmo
ocamldumpobj Ä {DUMPOBJ}
{CAMLC} {LINKFLAGS} -o ocamldumpobj
misc.cmo tbl.cmo config.cmo ident.cmo opcodes.cmo
bytesections.cmo {DUMPOBJ}
clean ÄÄ
delete -i ocamldumpobj
install ÄÄ
duplicate -y ocamldumpobj "{BINDIR}ocamldumpobj"
opnames.ml Ä ::byterun:instruct.h
streamedit -e '/¶/¶*/ delete'
-e '/enum (Å)¨0 {/ replace // "let names_of_" ¨0 "= [|"'
-e '/};°/ replace // "|]"'
-e '/<2F>([A-Z][A-Z_0-9a-z]*)¨0/ replace // "¶"" ¨0 "¶"" -c °'
-e '/,/ replace // ";" -c °'
::byterun:instruct.h > opnames.ml
clean ÄÄ
delete -i opnames.ml
beforedepend ÄÄ opnames.ml
# Dump .cmx files
#dumpapprox Ä dumpapprox.cmo
# {CAMLC} {LINKFLAGS} -o dumpapprox config.cmo dumpapprox.cmo
#
#clean ÄÄ
# delete -i dumpapprox
# Print imported interfaces for .cmo files
objinfo Ä objinfo.cmo
{CAMLC} {LINKFLAGS} -o objinfo config.cmo objinfo.cmo
clean ÄÄ
delete -i objinfo
# Common stuff
.cmo Ä .ml
{CAMLC} -c {COMPFLAGS} {depdir}{default}.ml
.cmi Ä .mli
{CAMLC} -c {COMPFLAGS} {depdir}{default}.mli
clean ÄÄ
delete -i Å.cm[io] || set status 0
depend Ä beforedepend
{CAMLRUN} :ocamldep {INCLUDES} Å.mli Å.ml > Makefile.Mac.depend
# Scan object files for required primitives
primreq Ä primreq.cmo
{CAMLC} {LINKFLAGS} -o primreq config.cmo primreq.cmo
clean ÄÄ
delete -i primreq
# Resources for keyword-coloring for MPW Shell
keywords Ä keywords.r
rez -t rsrc -c RSED -o keywords keywords.r
clean ÄÄ
delete -i keywords