From c46610d6325d78895cc641b428d793f2b2789de4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kim=20Nguy=E1=BB=85n?= <kn@lri.fr>
Date: Sat, 9 Aug 2014 14:53:55 +0200
Subject: [PATCH 09/11] (Re)-enable parallel build of the project (make -j
works as exptected)
---
Makefile.distrib | 55 +++++++++++++++++++++++++++++-----------------
depend | 54 ++++++++++++++++++++++++++-------------------
ocamliface/3.x/Makefile | 38 ++++++++++++++++++--------------
ocamliface/3.x/config.ml | 4 ----
ocamliface/3.x/config.mlp | 4 ++++
ocamliface/4.01/Makefile | 38 ++++++++++++++++++--------------
ocamliface/4.01/config.ml | 4 ----
ocamliface/4.01/config.mlp | 4 ++++
ocamliface/4.02/Makefile | 32 +++++++++++++++------------
ocamliface/4.02/config.ml | 4 ----
ocamliface/4.02/config.mlp | 4 ++++
11 files changed, 138 insertions(+), 103 deletions(-)
delete mode 100644 ocamliface/3.x/config.ml
create mode 100644 ocamliface/3.x/config.mlp
delete mode 100644 ocamliface/4.01/config.ml
create mode 100644 ocamliface/4.01/config.mlp
delete mode 100644 ocamliface/4.02/config.ml
create mode 100644 ocamliface/4.02/config.mlp
diff --git a/Makefile.distrib b/Makefile.distrib
index cb0097d..b04867a 100644
--- a/Makefile.distrib
+++ b/Makefile.distrib
@@ -3,7 +3,11 @@ default: cduce
include Makefile.conf
include VERSION
-OCAMLIFACE=ocamliface/$(ML_INTERFACE_VERSION)
+ifneq ($(ML_INTERFACE), false)
+ OCAMLIFACE=ocamliface/$(ML_INTERFACE_VERSION)
+else
+ OCAMLIFACE=
+endif
ALL_TARGET=cduce cduce_lib.cma
INSTALL_BINARIES=cduce$(EXE)
@@ -15,7 +19,7 @@ endif
OUNIT_TESTS=eval cdnum cdsdl misc
ifeq ($(NATIVE),true)
-all: cduce_lib.cmxa
+ALL_TARGET += cduce_lib.cmxa
endif
PACKAGES = dynlink camlp4 ulex pcre num netstring
@@ -139,8 +143,10 @@ help:
# Source directories
DIRS_DEPEND = misc parser schema typing types compile runtime driver query win32
+CLEAN_DIRS := $(DIRS_DEPEND) tools tests
DIRS := $(DIRS_DEPEND) $(OCAMLIFACE)
-CLEAN_DIRS = $(DIRS) tools tests
+
+
# Objects to build
@@ -189,6 +195,7 @@ ifneq ($(CURL), false)
OBJECTS += parser/cduce_curl.cmo
PACKAGES += curl
endif
+
ifneq ($(NETCLIENT), false)
OBJECTS += parser/cduce_netclient.cmo
PACKAGES += netclient
@@ -230,6 +237,7 @@ ML_INTERFACE_BASE_SRC = $(ML_INTERFACE_BASE_OBJS:.cmo=.ml) $(ML_INTERFACE_BASE_O
ML_INTERFACE_OBJS = \
$(ML_INTERFACE_BASE_OBJS:%=$(OCAMLIFACE)/%)
+
OBJECTS_NO_MLIFACE := $(OBJECTS)
ifneq ($(ML_INTERFACE), false)
@@ -287,16 +295,19 @@ compute_depend: $(DEPEND_OCAMLDEP)
ocamlfind ocamldep -package "$(PACKAGES)" \
$(INCLUDES_DEPEND) $(SYNTAX_PARSER) -ppopt pa_extend.cmo -ppopt q_MLast.cmo $(DEPEND) > depend
for i in $(ALL_ML_IFACE); do \
+ touch ocamliface/$$i/caml_cduce.ml; \
ocamlfind ocamldep -package "$(PACKAGES)" \
$(INCLUDES_DEPEND) -I ocamliface/$$i $(SYNTAX_PARSER) -ppopt pa_extend.cmo -ppopt q_MLast.cmo \
$(ML_INTERFACE_BASE_SRC:%=ocamliface/$$i/%) >> depend;\
+ rm -f ocamliface/$$i/caml_cduce.ml; \
done
clean:
for i in $(CLEAN_DIRS); do \
(cd $$i; rm -f *.cmi *.cmo *.cma *.cmx *.o *.a *.cmxa *~); \
done
- (cd $(OCAMLIFACE); $(MAKE) clean)
+ rm -f misc/q_symbol.cmo.stamp
+ test -n "$(OCAMLIFACE)" && (cd $(OCAMLIFACE); $(MAKE) clean) || true
rm -f `find . -name "*~"`
rm -f *.cmi *.cmo *.cma *.cmx *.a *.cmxa *.o *~ META
rm -f cduce$(EXE) ocamlprof.dump
@@ -316,32 +327,36 @@ clean:
distclean: clean
rm -f Makefile.conf
-$(OCAMLIFACE)/mltypes.$(EXTENSION): $(OCAMLIFACE)/caml_cduce.$(EXTENSION)
-
-$(ALL_OBJECTS:.cmo=.$(EXTENSION)): misc/q_symbol.cmo
-$(ALL_INTERFACES): misc/q_symbol.cmo
-
.SUFFIXES: .ml .mli .cmo .cmi .cmx
-misc/q_symbol.cmo: misc/q_symbol.ml
+$(OCAMLIFACE)/mltypes.$(EXTENSION): $(OCAMLIFACE)/caml_cduce.$(EXTENSION)
+
+$(ALL_INTERFACES): misc/q_symbol.cmo.stamp
+$(ALL_OBJECTS:.cmo=.cmi): misc/q_symbol.cmo.stamp
+$(ALL_OBJECTS:.cmo=.cmx) caml_cduce.cmx: misc/q_symbol.cmo.stamp
+$(ALL_OBJECTS) caml_cduce.cmo: misc/q_symbol.cmo.stamp
+$(OCAMLIFACE)/mlstub.$(EXTENSION): SYNTAX += q_MLast.cmo
+
+misc/q_symbol.cmo.stamp: misc/q_symbol.ml
@echo "Build $@"
- $(HIDE)$(CAMLC) -c -pp camlp4orf $<
+ $(HIDE) $(CAMLC) -c -pp camlp4orf $<
+ $(HIDE) sync
+ $(HIDE) touch misc/q_symbol.cmo.stamp
-parser/parser.cmo: PACKAGES += camlp4.extend
-parser/parser.cmx: PACKAGES += camlp4.extend
+parser/parser.$(EXTENSION): PACKAGES += camlp4.extend
.ml.cmo:
@echo "Build $@"
- $(HIDE)$(CAMLC) -c $(INCLUDES) $(SYNTAX_PARSER) $<
+ $(HIDE)$(CAMLC) -c $(SYNTAX_PARSER) $(INCLUDES) $<
.ml.cmx:
@echo "Build $@"
- $(HIDE)$(CAMLOPT) $(FORPACKOPT) -c $(SYNTAX_PARSER) $(INCLUDES) $<
+ $(HIDE) $(CAMLOPT) $(FORPACKOPT) -c $(SYNTAX_PARSER) $(INCLUDES) $<
.mli.cmi:
@echo "Build $@"
- $(HIDE)$(CAMLC) -c $(SYNTAX_PARSER) $(INCLUDES) $<
+ $(HIDE) $(CAMLC) -c $(SYNTAX_PARSER) $(INCLUDES) $<
include depend
@@ -373,12 +388,12 @@ install_doc: doc
$(OCAMLIFACE)/caml_cduce.cmo:
+ @echo "Build $@"
@cd $(OCAMLIFACE); \
- $(MAKE) CAMLC="$(CAMLC_P)" CAMLOPT="$(CAMLOPT_P)" caml_cduce.cmo
+ $(MAKE) -s MODE=byte CAMLC="$(OCAMLFIND) $(CAMLC_P)" caml_cduce.cmo
$(OCAMLIFACE)/caml_cduce.cmx:
+ @echo "Build $@"
@cd $(OCAMLIFACE); \
- $(MAKE) CAMLC="$(CAMLC_P)" CAMLOPT="$(CAMLOPT_P)" caml_cduce.cmx
+ $(MAKE) -s MODE=opt CAMLOPT="$(OCAMLFIND) $(CAMLOPT_P)" caml_cduce.cmx
-$(OCAMLIFACE)/mlstub.cmo: SYNTAX += q_MLast.cmo
-$(OCAMLIFACE)/mlstub.cmx: SYNTAX += q_MLast.cmo
diff --git a/depend b/depend
index 83f8bd8..90f0313 100644
--- a/depend
+++ b/depend
@@ -403,10 +403,12 @@ runtime/cduce_expat.cmi :
runtime/cduce_pxp.cmi :
schema/schema_types.cmi : runtime/value.cmi misc/ns.cmi misc/encodings.cmi \
types/atoms.cmi
-ocamliface/3.x/mltypes.cmo : types/ident.cmo ocamliface/3.x/config.cmo \
- parser/cduce_loc.cmi ocamliface/3.x/mltypes.cmi
-ocamliface/3.x/mltypes.cmx : types/ident.cmx ocamliface/3.x/config.cmx \
- parser/cduce_loc.cmx ocamliface/3.x/mltypes.cmi
+ocamliface/3.x/caml_cduce.cmo :
+ocamliface/3.x/caml_cduce.cmx :
+ocamliface/3.x/mltypes.cmo : types/ident.cmo parser/cduce_loc.cmi \
+ ocamliface/3.x/caml_cduce.cmo ocamliface/3.x/mltypes.cmi
+ocamliface/3.x/mltypes.cmx : types/ident.cmx parser/cduce_loc.cmx \
+ ocamliface/3.x/caml_cduce.cmx ocamliface/3.x/mltypes.cmi
ocamliface/3.x/mlstub.cmo : types/types.cmi typing/typer.cmi \
types/sequence.cmi misc/ns.cmi ocamliface/3.x/mltypes.cmi \
driver/librarian.cmi types/externals.cmi compile/compile.cmi \
@@ -417,41 +419,47 @@ ocamliface/3.x/mlstub.cmx : types/types.cmx typing/typer.cmx \
driver/librarian.cmx types/externals.cmx compile/compile.cmx \
parser/cduce_loc.cmx driver/cduce_config.cmx types/builtin_defs.cmx \
types/atoms.cmx parser/ast.cmx ocamliface/3.x/mlstub.cmi
-ocamliface/3.x/mltypes.cmi : types/types.cmi
+ocamliface/3.x/mltypes.cmi : types/types.cmi ocamliface/3.x/caml_cduce.cmo
ocamliface/3.x/mlstub.cmi : parser/ast.cmo
-ocamliface/4.01/mltypes.cmo : types/ident.cmo ocamliface/4.01/config.cmo \
- parser/cduce_loc.cmi ocamliface/4.01/mltypes.cmi
-ocamliface/4.01/mltypes.cmx : types/ident.cmx ocamliface/4.01/config.cmx \
- parser/cduce_loc.cmx ocamliface/4.01/mltypes.cmi
+ocamliface/4.01/caml_cduce.cmo :
+ocamliface/4.01/caml_cduce.cmx :
+ocamliface/4.01/mltypes.cmo : types/ident.cmo parser/cduce_loc.cmi \
+ ocamliface/4.01/caml_cduce.cmo ocamliface/4.01/mltypes.cmi
+ocamliface/4.01/mltypes.cmx : types/ident.cmx parser/cduce_loc.cmx \
+ ocamliface/4.01/caml_cduce.cmx ocamliface/4.01/mltypes.cmi
ocamliface/4.01/mlstub.cmo : types/types.cmi typing/typer.cmi \
types/sequence.cmi misc/ns.cmi ocamliface/4.01/mltypes.cmi \
driver/librarian.cmi types/ident.cmo types/externals.cmi \
compile/compile.cmi parser/cduce_loc.cmi driver/cduce_config.cmi \
- types/builtin_defs.cmi types/atoms.cmi parser/ast.cmo \
- ocamliface/4.01/mlstub.cmi
+ ocamliface/4.01/caml_cduce.cmo types/builtin_defs.cmi types/atoms.cmi \
+ parser/ast.cmo ocamliface/4.01/mlstub.cmi
ocamliface/4.01/mlstub.cmx : types/types.cmx typing/typer.cmx \
types/sequence.cmx misc/ns.cmx ocamliface/4.01/mltypes.cmx \
driver/librarian.cmx types/ident.cmx types/externals.cmx \
compile/compile.cmx parser/cduce_loc.cmx driver/cduce_config.cmx \
- types/builtin_defs.cmx types/atoms.cmx parser/ast.cmx \
- ocamliface/4.01/mlstub.cmi
-ocamliface/4.01/mltypes.cmi : types/types.cmi types/ident.cmo
+ ocamliface/4.01/caml_cduce.cmx types/builtin_defs.cmx types/atoms.cmx \
+ parser/ast.cmx ocamliface/4.01/mlstub.cmi
+ocamliface/4.01/mltypes.cmi : types/types.cmi types/ident.cmo \
+ ocamliface/4.01/caml_cduce.cmo
ocamliface/4.01/mlstub.cmi : parser/ast.cmo
-ocamliface/4.02/mltypes.cmo : types/ident.cmo ocamliface/4.02/config.cmo \
- parser/cduce_loc.cmi ocamliface/4.02/mltypes.cmi
-ocamliface/4.02/mltypes.cmx : types/ident.cmx ocamliface/4.02/config.cmx \
- parser/cduce_loc.cmx ocamliface/4.02/mltypes.cmi
+ocamliface/4.02/caml_cduce.cmo :
+ocamliface/4.02/caml_cduce.cmx :
+ocamliface/4.02/mltypes.cmo : types/ident.cmo parser/cduce_loc.cmi \
+ ocamliface/4.02/caml_cduce.cmo ocamliface/4.02/mltypes.cmi
+ocamliface/4.02/mltypes.cmx : types/ident.cmx parser/cduce_loc.cmx \
+ ocamliface/4.02/caml_cduce.cmx ocamliface/4.02/mltypes.cmi
ocamliface/4.02/mlstub.cmo : types/types.cmi typing/typer.cmi \
types/sequence.cmi misc/ns.cmi ocamliface/4.02/mltypes.cmi \
driver/librarian.cmi types/ident.cmo types/externals.cmi \
compile/compile.cmi parser/cduce_loc.cmi driver/cduce_config.cmi \
- types/builtin_defs.cmi types/atoms.cmi parser/ast.cmo \
- ocamliface/4.02/mlstub.cmi
+ ocamliface/4.02/caml_cduce.cmo types/builtin_defs.cmi types/atoms.cmi \
+ parser/ast.cmo ocamliface/4.02/mlstub.cmi
ocamliface/4.02/mlstub.cmx : types/types.cmx typing/typer.cmx \
types/sequence.cmx misc/ns.cmx ocamliface/4.02/mltypes.cmx \
driver/librarian.cmx types/ident.cmx types/externals.cmx \
compile/compile.cmx parser/cduce_loc.cmx driver/cduce_config.cmx \
- types/builtin_defs.cmx types/atoms.cmx parser/ast.cmx \
- ocamliface/4.02/mlstub.cmi
-ocamliface/4.02/mltypes.cmi : types/types.cmi types/ident.cmo
+ ocamliface/4.02/caml_cduce.cmx types/builtin_defs.cmx types/atoms.cmx \
+ parser/ast.cmx ocamliface/4.02/mlstub.cmi
+ocamliface/4.02/mltypes.cmi : types/types.cmi types/ident.cmo \
+ ocamliface/4.02/caml_cduce.cmo
ocamliface/4.02/mlstub.cmi : parser/ast.cmo
diff --git a/ocamliface/3.x/Makefile b/ocamliface/3.x/Makefile
index 7f0a11e..8c8305f 100644
--- a/ocamliface/3.x/Makefile
+++ b/ocamliface/3.x/Makefile
@@ -3,6 +3,8 @@
# of an OCaml source tree.
include ../../Makefile.conf
+OCAMLFILES=ocaml_files.$(MODE)
+
all: caml_cduce.cmo caml_cduce.cmx
STDLIB=$(shell ocamlc -where)
@@ -16,29 +18,31 @@ else
FORPACKOPT2=
endif
-ocaml_files:
- mkdir ocaml_files
- $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) ocaml_files/
- cp location.ml ocaml_files/location.ml
- cp ocaml_files/asttypes.mli ocaml_files/asttypes.ml
- sed s=STDLIB=$(STDLIB)= config.ml > ocaml_files/config.ml
- grep cmi_magic $(OCAML_SRC)/utils/config.mlp >> ocaml_files/config.ml
-caml_cduce.cmo: ocaml_files
+$(OCAMLFILES):
+ test -d $(OCAMLFILES) || mkdir $(OCAMLFILES)
+ $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) $(OCAMLFILES)/
+ cp location.ml $(OCAMLFILES)/location.ml
+ cp $(OCAMLFILES)/asttypes.mli $(OCAMLFILES)/asttypes.ml
+ sed s=STDLIB=$(STDLIB)= config.mlp > $(OCAMLFILES)/config.ml
+ grep cmi_magic $(OCAML_SRC)/utils/config.mlp >> $(OCAMLFILES)/config.ml
+
+caml_cduce.cmo: ocaml_files.byte
@echo "Build $@"
- (cd ocaml_files; \
- ocamlc $(FORPACKOPT1) -c $(COMPILE_FILES);\
- ocamlc $(FORPACKOPT2) -pack -o $@ $(OBJECTS); \
- cp caml_cduce.cmo caml_cduce.cmi ..)
+ (cd ocaml_files.byte; \
+ ocamlc $(FORPACKOPT1) -c $(COMPILE_FILES); \
+ ocamlc $(FORPACKOPT2) -pack -o $@ $(OBJECTS); \
+ cp caml_cduce.cmo caml_cduce.cmi ..)
-caml_cduce.cmx: ocaml_files
+caml_cduce.cmx: ocaml_files.opt
@echo "Build $@"
- (cd ocaml_files; ocamlopt $(FORPACKOPT1) -c $(COMPILE_FILES);\
- ocamlopt $(FORPACKOPT2) -pack -o $@ $(XOBJECTS); \
- cp caml_cduce.cmx caml_cduce.o caml_cduce.cmi ..)
+ (cd ocaml_files.opt; \
+ ocamlopt $(FORPACKOPT1) -c $(COMPILE_FILES); \
+ ocamlopt $(FORPACKOPT2) -pack -o $@ $(XOBJECTS); \
+ cp caml_cduce.cmx caml_cduce.o caml_cduce.cmi ..)
clean:
- rm -Rf ocaml_files *~ *.cm*
+ rm -Rf ocaml_files.* *~ *.cm* *.o
COPY_FILES=\
typing/annot.mli \
diff --git a/ocamliface/3.x/config.ml b/ocamliface/3.x/config.ml
deleted file mode 100644
index 54ca779..0000000
--- a/ocamliface/3.x/config.ml
+++ /dev/null
@@ -1,4 +0,0 @@
-let standard_library = "STDLIB"
-let load_path = ref ([] : string list)
-let bytecomp_c_compiler = ""
-let bytecomp_c_linker = ""
diff --git a/ocamliface/3.x/config.mlp b/ocamliface/3.x/config.mlp
new file mode 100644
index 0000000..54ca779
--- /dev/null
+++ b/ocamliface/3.x/config.mlp
@@ -0,0 +1,4 @@
+let standard_library = "STDLIB"
+let load_path = ref ([] : string list)
+let bytecomp_c_compiler = ""
+let bytecomp_c_linker = ""
diff --git a/ocamliface/4.01/Makefile b/ocamliface/4.01/Makefile
index 6167691..04feecc 100644
--- a/ocamliface/4.01/Makefile
+++ b/ocamliface/4.01/Makefile
@@ -3,6 +3,8 @@
# of an OCaml source tree.
include ../../Makefile.conf
+OCAMLFILES=ocaml_files.$(MODE)
+
all: caml_cduce.cmo caml_cduce.cmx
STDLIB=$(shell ocamlc -where)
@@ -16,29 +18,31 @@ else
FORPACKOPT2=
endif
-ocaml_files:
- mkdir ocaml_files
- $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) ocaml_files/
- cp location.ml ocaml_files/location.ml
- cp ocaml_files/asttypes.mli ocaml_files/asttypes.ml
- sed s=STDLIB=$(STDLIB)= config.ml > ocaml_files/config.ml
- grep cmi_magic $(OCAML_SRC)/utils/config.mlp | head -1 >> ocaml_files/config.ml
-caml_cduce.cmo: ocaml_files
+$(OCAMLFILES):
+ test -d $(OCAMLFILES) || mkdir $(OCAMLFILES)
+ $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) $(OCAMLFILES)/
+ cp location.ml $(OCAMLFILES)/location.ml
+ cp $(OCAMLFILES)/asttypes.mli $(OCAMLFILES)/asttypes.ml
+ sed s=STDLIB=$(STDLIB)= config.mlp > $(OCAMLFILES)/config.ml
+ grep cmi_magic $(OCAML_SRC)/utils/config.mlp | head -1 >> $(OCAMLFILES)/config.ml
+
+caml_cduce.cmo: ocaml_files.byte
@echo "Build $@"
- (cd ocaml_files; \
- ocamlc $(FORPACKOPT1) -c $(COMPILE_FILES);\
- ocamlc $(FORPACKOPT2) -pack -o $@ $(OBJECTS); \
- cp caml_cduce.cmo caml_cduce.cmi ..)
+ (cd ocaml_files.byte; \
+ ocamlc $(FORPACKOPT1) -c $(COMPILE_FILES); \
+ ocamlc $(FORPACKOPT2) -pack -o $@ $(OBJECTS); \
+ cp caml_cduce.cmo caml_cduce.cmi ..)
-caml_cduce.cmx: ocaml_files
+caml_cduce.cmx: ocaml_files.opt
@echo "Build $@"
- (cd ocaml_files; ocamlopt $(FORPACKOPT1) -c $(COMPILE_FILES);\
- ocamlopt $(FORPACKOPT2) -pack -o $@ $(XOBJECTS); \
- cp caml_cduce.cmx caml_cduce.o caml_cduce.cmi ..)
+ (cd ocaml_files.opt; \
+ ocamlopt $(FORPACKOPT1) -c $(COMPILE_FILES); \
+ ocamlopt $(FORPACKOPT2) -pack -o $@ $(XOBJECTS); \
+ cp caml_cduce.cmx caml_cduce.o caml_cduce.cmi ..)
clean:
- rm -Rf ocaml_files *~ *.cm*
+ rm -Rf ocaml_files.* *~ *.cm* *.o
COPY_FILES=\
typing/annot.mli \
diff --git a/ocamliface/4.01/config.ml b/ocamliface/4.01/config.ml
deleted file mode 100644
index 54ca779..0000000
--- a/ocamliface/4.01/config.ml
+++ /dev/null
@@ -1,4 +0,0 @@
-let standard_library = "STDLIB"
-let load_path = ref ([] : string list)
-let bytecomp_c_compiler = ""
-let bytecomp_c_linker = ""
diff --git a/ocamliface/4.01/config.mlp b/ocamliface/4.01/config.mlp
new file mode 100644
index 0000000..54ca779
--- /dev/null
+++ b/ocamliface/4.01/config.mlp
@@ -0,0 +1,4 @@
+let standard_library = "STDLIB"
+let load_path = ref ([] : string list)
+let bytecomp_c_compiler = ""
+let bytecomp_c_linker = ""
diff --git a/ocamliface/4.02/Makefile b/ocamliface/4.02/Makefile
index 0433888..f847f3c 100644
--- a/ocamliface/4.02/Makefile
+++ b/ocamliface/4.02/Makefile
@@ -3,6 +3,8 @@
# of an OCaml source tree.
include ../../Makefile.conf
+OCAMLFILES=ocaml_files.$(MODE)
+
all: caml_cduce.cmo caml_cduce.cmx
STDLIB=$(shell ocamlc -where)
@@ -16,32 +18,34 @@ else
FORPACKOPT2=
endif
-ocaml_files:
- mkdir ocaml_files
- $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) ocaml_files/
- cp location.ml ocaml_files/location.ml
- cp parsetree.ml ocaml_files/parsetree.ml
- cp ast_mapper.ml ocaml_files/ast_mapper.ml
- cp ocaml_files/asttypes.mli ocaml_files/asttypes.ml
- sed s=STDLIB=$(STDLIB)= config.ml > ocaml_files/config.ml
- grep cmi_magic $(OCAML_SRC)/utils/config.mlp | head -1 >> ocaml_files/config.ml
-caml_cduce.cmo: ocaml_files
+$(OCAMLFILES):
+ test -d $(OCAMLFILES) || mkdir $(OCAMLFILES)
+ $(HIDE)cp $(patsubst %,$(OCAML_SRC)/%, $(COPY_FILES)) $(OCAMLFILES)/
+ cp location.ml $(OCAMLFILES)/location.ml
+ cp parsetree.ml $(OCAMLFILES)/parsetree.ml
+ cp ast_mapper.ml $(OCAMLFILES)/ast_mapper.ml
+ cp $(OCAMLFILES)/asttypes.mli $(OCAMLFILES)/asttypes.ml
+ sed s=STDLIB=$(STDLIB)= config.mlp > $(OCAMLFILES)/config.ml
+ grep cmi_magic $(OCAML_SRC)/utils/config.mlp | head -1 >> $(OCAMLFILES)/config.ml
+
+
+caml_cduce.cmo: ocaml_files.byte
@echo "Build $@"
- (cd ocaml_files; \
+ (cd ocaml_files.byte; \
$(CAMLC) $(FORPACKOPT1) -c $(COMPILE_FILES);\
$(CAMLC) $(FORPACKOPT2) -pack -o $@ $(OBJECTS); \
cp caml_cduce.cmo caml_cduce.cmi ..)
-caml_cduce.cmx: ocaml_files
+caml_cduce.cmx: ocaml_files.opt
@echo "Build $@"
- (cd ocaml_files; \
+ (cd ocaml_files.opt; \
$(CAMLOPT) $(FORPACKOPT1) -c $(COMPILE_FILES);\
$(CAMLOPT) $(FORPACKOPT2) -pack -o $@ $(XOBJECTS); \
cp caml_cduce.cmx caml_cduce.o caml_cduce.cmi ..)
clean:
- rm -Rf ocaml_files *~ *.cm*
+ rm -Rf ocaml_files.* *~ *.cm* *.o
COPY_FILES=\
typing/annot.mli \
diff --git a/ocamliface/4.02/config.ml b/ocamliface/4.02/config.ml
deleted file mode 100644
index 54ca779..0000000
--- a/ocamliface/4.02/config.ml
+++ /dev/null
@@ -1,4 +0,0 @@
-let standard_library = "STDLIB"
-let load_path = ref ([] : string list)
-let bytecomp_c_compiler = ""
-let bytecomp_c_linker = ""
diff --git a/ocamliface/4.02/config.mlp b/ocamliface/4.02/config.mlp
new file mode 100644
index 0000000..54ca779
--- /dev/null
+++ b/ocamliface/4.02/config.mlp
@@ -0,0 +1,4 @@
+let standard_library = "STDLIB"
+let load_path = ref ([] : string list)
+let bytecomp_c_compiler = ""
+let bytecomp_c_linker = ""
--
1.9.3