Stefano Zacchiroli wrote:
Hi Mike,
can you please tell me which .cmx* files you're missing.
Sure.
[...]
Moreover, also checking which *.cmx* files have been built by
the world.opt target of camlp5 at the end of the build process I see:
[...]
./odyl/odyl.cmxa
./odyl/odyl.cmx
./compile/pa_o_fast.cmx
These three are used by otags, as well as the following which were not
in either of your lists (although the corresponding .cmo's are installed
by camlp5, so perhaps these are aren't built by world.opt).
pa_o.cmx
pa_op.cmx
Can you please tell me which extra .cmx* files you need and why so?
The above 5 files are used by otags. I imagine that if you decide to
include them, it would probably make sense to ship the native versions
of other files, such as the rest of the pa_* parsers.
As to why they are needed: otags uses camlp5 to parse OCaml files in
order to extract identifiers for TAGS files. Because it's a stand alone
application (i.e., it doesn't have to be dynamically loaded by the ocaml
compiler), it can use the native code versions of the camlp5 parsers and
achieve the expected speedup of native code over byte code.
However, it also has to be able to load user specified camlp5 modules
(in order to properly parse the source files). Therefore, it reuses
several of the files used to build the camlp5o binary (like odyl.cmx),
so that it can be a drop in replacement for it.
Adding the native files doesn't seem to add a lot of space. On my amd64
etch box, a "du -hsc *.cmx*" in the ocaml/3.09.2/camlp4/ dir is only
178k, so, I would guess the corresponding camlp5 versions would be similar.
-mike
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]