Browse thread
[Caml-list] Building large and portable projects
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Aleksey Nogin <nogin@c...> |
| Subject: | Re: [Caml-list] Omake [Was: Building large and portable projects] |
On 21.11.2003 12:39, Damien wrote:
> I looked quickly at it, and tried to use for a project I am currently
> working on,
>
> however my project uses "-pack" in order to pack some branches
> (sub-directories) and avoid A_B_.._M module names.
>
> looking at Omakeroot, it seems to me there is no support for things like
> that :-(
> Has someone already managed to do it ?
Didn't have time to write more about this earlier today, but it should
be very simple. The following macro will probably work (haven't tested
it myself)
OcamlPack(dst, sources) =
if $(and $(NATIVE_ENABLED) $(BYTECODE_ENABLED))
$(dst).cmo $(dst).cmx $(dst).cmi $(dst).o: $(addsuffix .cmo,
$(sources)) $(addsuffix .cmx, $(sources)) $(addsuffix .o, $(sources))
$(addsuffix .cmi, $(sources))
$(OCAMLOPT) $(OCAMLOPTFLAGS) -pack -o $(dst).cmx $(addsuffix
.cmx, $(sources))
$(OCAMLC) $(OCAMLCFLAGS)-pack -o $(dst).cmo $(addsuffix .cmo,
$(sources))
else
$(dst).cmo $(dst).cmi : $(addsuffix .cmo, $(sources)) $(addsuffix
.cmi, $(sources))
$(OCAMLC) $(OCAMLCFLAGS)-pack -o $(dst).cmo $(addsuffix .cmo,
$(sources))
$(dst).cmx $(dst).cmi $(dst).o: $(addsuffix .cmx, $(sources))
$(addsuffix .o, $(sources)) $(addsuffix .cmi, $(sources))
$(OCAMLOPT) $(OCAMLOPTFLAGS) -pack -o $(dst).cmx $(addsuffix
.cmx, $(sources))
And then just invoke it using
OcamlPack(foo, bar1 bar2 bar3 ... )
--
Aleksey Nogin
Home Page: http://nogin.org/
E-Mail: nogin@cs.caltech.edu (office), aleksey@nogin.org (personal)
Office: Jorgensen 70, tel: (626) 395-2907
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners