summaryrefslogtreecommitdiff
path: root/stdlib/Makefile
diff options
context:
space:
mode:
authorJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2001-09-06 08:52:32 +0000
committerJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2001-09-06 08:52:32 +0000
commitea299bbbc1dcf8f0f8f3b18558145965391ad224 (patch)
tree66a42a385bf5243f570afb2c48bf7239ce08f67a /stdlib/Makefile
parentbc8ff705be9af2f5883b640b1c9e285f380d5f70 (diff)
downloadocaml-ea299bbbc1dcf8f0f8f3b18558145965391ad224.tar.gz
passage aux labels stricts
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3696 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib/Makefile')
-rw-r--r--stdlib/Makefile40
1 files changed, 28 insertions, 12 deletions
diff --git a/stdlib/Makefile b/stdlib/Makefile
index 6c4cdd084d..9a9d58823e 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -23,13 +23,17 @@ CAMLOPT=$(RUNTIME) $(OPTCOMPILER)
OPTCOMPFLAGS=
CAMLDEP=../boot/ocamlrun ../tools/ocamldep
-OBJS=pervasives.cmo array.cmo list.cmo char.cmo string.cmo sys.cmo \
+BASIC=pervasives.cmo array.cmo list.cmo char.cmo string.cmo sys.cmo \
hashtbl.cmo sort.cmo marshal.cmo obj.cmo \
lexing.cmo parsing.cmo \
set.cmo map.cmo stack.cmo queue.cmo stream.cmo \
buffer.cmo printf.cmo format.cmo arg.cmo printexc.cmo gc.cmo \
digest.cmo random.cmo oo.cmo genlex.cmo callback.cmo weak.cmo \
lazy.cmo filename.cmo int32.cmo int64.cmo nativeint.cmo
+LABELLED=arrayLabels.ml listLabels.ml stringLabels.ml
+
+OBJS=$(BASIC) labelled.cmo stdLabels.cmo
+ALLOBJS=$(BASIC) $(LABELLED:.ml=.cmo) stdLabels.cmo
all: stdlib.cma std_exit.cmo camlheader camlheader_ur
@@ -59,13 +63,13 @@ installopt-prof:
cd $(LIBDIR); $(RANLIB) stdlib.p.a
stdlib.cma: $(OBJS)
- $(CAMLC) -a -o stdlib.cma $(OBJS)
+ $(CAMLC) -a -o stdlib.cma $(ALLOBJS)
stdlib.cmxa: $(OBJS:.cmo=.cmx)
- $(CAMLOPT) -a -o stdlib.cmxa $(OBJS:.cmo=.cmx)
+ $(CAMLOPT) -a -o stdlib.cmxa $(ALLOBJS:.cmo=.cmx)
stdlib.p.cmxa: $(OBJS:.cmo=.p.cmx)
- $(CAMLOPT) -a -o stdlib.p.cmxa $(OBJS:.cmo=.p.cmx)
+ $(CAMLOPT) -a -o stdlib.p.cmxa $(ALLOBJS:.cmo=.p.cmx)
camlheader camlheader_ur: header.c ../config/Makefile
if $(SHARPBANGSCRIPTS); then \
@@ -103,30 +107,42 @@ pervasives.p.cmx: pervasives.ml
oo.cmi: oo.mli
$(CAMLC) $(COMPFLAGS) -nopervasives -c oo.mli
+# labelled modules require the -nolabels flag
+labelled.cmo:
+ $(MAKE) EXTRAFLAGS=-nolabels $(LABELLED:.ml=.cmo)
+ touch $@
+labelled.cmx:
+ $(MAKE) EXTRAFLAGS=-nolabels $(LABELLED:.ml=.cmx)
+ touch $@
+labelled.p.cmx:
+ $(MAKE) EXTRAFLAGS=-nolabels $(LABELLED:.ml=.p.cmx)
+ touch $@
+
.SUFFIXES: .mli .ml .cmi .cmo .cmx .p.cmx
.mli.cmi:
- $(CAMLC) $(COMPFLAGS) -c $<
+ $(CAMLC) $(COMPFLAGS) $(EXTRAFLAGS) -c $<
.ml.cmo:
- $(CAMLC) $(COMPFLAGS) -c $<
+ $(CAMLC) $(COMPFLAGS) $(EXTRAFLAGS) -c $<
.ml.cmx:
- $(CAMLOPT) $(OPTCOMPFLAGS) -c $<
+ $(CAMLOPT) $(OPTCOMPFLAGS) $(EXTRAFLAGS) -c $<
.ml.p.cmx:
@if test -f $*.cmx; then mv $*.cmx $*.n.cmx; else :; fi
@if test -f $*.o; then mv $*.o $*.n.o; else :; fi
- $(CAMLOPT) $(OPTCOMPFLAGS) -p -c $<
+ $(CAMLOPT) $(OPTCOMPFLAGS) $(EXTRAFLAGS) -p -c $<
mv $*.cmx $*.p.cmx
mv $*.o $*.p.o
@if test -f $*.n.cmx; then mv $*.n.cmx $*.cmx; else :; fi
@if test -f $*.n.o; then mv $*.n.o $*.o; else :; fi
-$(OBJS) std_exit.cmo: pervasives.cmi $(COMPILER)
-$(OBJS:.cmo=.cmx) std_exit.cmx: pervasives.cmi $(OPTCOMPILER)
-$(OBJS:.cmo=.p.cmx) std_exit.p.cmx: pervasives.cmi $(OPTCOMPILER)
-$(OBJS:.cmo=.cmi) std_exit.cmi: $(COMPILER)
+$(ALLOBJS) labelled.cmo std_exit.cmo: pervasives.cmi $(COMPILER)
+$(ALLOBJS:.cmo=.cmx) labelled.cmx std_exit.cmx: pervasives.cmi $(OPTCOMPILER)
+$(ALLOBJS:.cmo=.p.cmx) labelled.p.cmx std_exit.p.cmx: pervasives.cmi $(OPTCOMPILER)
+$(ALLOBJS:.cmo=.cmi) std_exit.cmi: $(COMPILER)
+labelled.cmo labelled.cmx labelled.p.cmx: $(LABELLED) $(LABELLED:.ml=.mli)
clean::
rm -f *.cm* *.o *.a