summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorAlain Frisch <alain@frisch.fr>2007-11-06 15:16:56 +0000
committerAlain Frisch <alain@frisch.fr>2007-11-06 15:16:56 +0000
commit3958a92c729c6588bdd4a39d6d8bc5dadb00b3de (patch)
treed1cb483d1cfed72c42cd3311ae735784bfbe5d13 /Makefile
parent2a99b8737bd88e4af552da873ce904a684c631ae (diff)
downloadocaml-3958a92c729c6588bdd4a39d6d8bc5dadb00b3de.tar.gz
Merge the natdynlink branch into HEAD.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8477 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile18
1 files changed, 17 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index f4c8969754..c93021a995 100644
--- a/Makefile
+++ b/Makefile
@@ -18,7 +18,7 @@ include config/Makefile
include stdlib/StdlibModules
CAMLC=boot/ocamlrun boot/ocamlc -nostdlib -I boot
-CAMLOPT=boot/ocamlrun ./ocamlopt -nostdlib -I stdlib
+CAMLOPT=boot/ocamlrun ./ocamlopt -nostdlib -I stdlib -I otherlibs/dynlink
COMPFLAGS=-warn-error A $(INCLUDES)
LINKFLAGS=
@@ -102,6 +102,11 @@ TOPLIB=$(UTILS) $(PARSING) $(TYPING) $(COMP) $(BYTECOMP) $(TOPLEVEL)
TOPOBJS=$(TOPLEVELLIB) $(TOPLEVELSTART)
+NATTOPOBJS=$(OPTUTILS) $(PARSING) $(TYPING) $(COMP) $(ASMCOMP) \
+ driver/pparse.cmo driver/opterrors.cmo driver/optcompile.cmo \
+ toplevel/genprintval.cmo toplevel/opttoploop.cmo toplevel/opttopdirs.cmo \
+ toplevel/opttopmain.cmo toplevel/opttopstart.cmo
+
OPTOBJS=$(OPTUTILS) $(PARSING) $(TYPING) $(COMP) $(ASMCOMP) $(OPTDRIVER)
EXPUNGEOBJS=utils/misc.cmo utils/tbl.cmo \
@@ -315,6 +320,17 @@ toplevel/toplevellib.cma: $(TOPLIB)
partialclean::
rm -f ocaml toplevel/toplevellib.cma
+# The native toplevel
+
+ocamlnat: ocamlopt otherlibs/dynlink/dynlink.cmxa $(NATTOPOBJS:.cmo=.cmx)
+ $(CAMLOPT) $(LINKFLAGS) otherlibs/dynlink/dynlink.cmxa -o ocamlnat $(NATTOPOBJS:.cmo=.cmx) -linkall
+
+toplevel/opttoploop.cmx: otherlibs/dynlink/dynlink.cmxa
+
+otherlibs/dynlink/dynlink.cmxa: otherlibs/dynlink/natdynlink.ml
+ cd otherlibs/dynlink && make allopt
+
+
# The configuration file
utils/config.ml: utils/config.mlp config/Makefile