[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Proposal ocaml guidelines



Toshio Kuratomi wrote:
On Thu, 2007-05-03 at 21:23 +0200, Hans de Goede wrote:
Okay,

The proposal I mailed to the list yesterday is now available here:
http://fedoraproject.org/wiki/PackagingDrafts/OCaml

Thanks Hans!

Please keep in mind I'm not an ocaml expert, I just did some reading on it
as I needed to know something about it todo reviews.

I have a question about bytecode/native code.  Should the guidelines
specify that module packages build both bytecode and native code?  As a
precedent, a java library will install a native code version to
%{_libdir}/libfoo-1.0.so and byte code to /usr/share/java/foo-1.0.jar.


Thats not how ocaml handles things. Ocaml code gets compiled to bytecode objects, native<->ocaml glue code gets compiled to native objects.

Then when compiling an application / program, you can compile it in 2 ways:
1) to a bytecode program which will require the ocaml runtime and the .so
   versions of any native code from used modules/libs. All bytecode objects
   from used modules will get staticly liked in.

   This reminds me, since ocaml will dlopen the .so files with native code of
   used modules, an application compiled this way should have Requires:
   for all used modules of which native parts are used.

2) To native code, in this case the bytecode parts of used modules get
   converted to native code and any native objects which are part of modules
   get staticly linked in, resulting in a native binary which is independent of
   any ocaml modules (but which will still depend upon any be dynamicly linked
   against any normal native libraries used by modules, like libjpeg)


I also wonder if we want to specify that ocaml programs should be
compiled to native code.


According to Debian's guidelines this has both advantages and disadvantages, so its probably best to use upstream's default behaviour.

Also worth noticing is that native compilation is not available on all platforms. Luckily it is available for all platforms which are part of Fedora.

Regards,

Hans


p.s.

What do you think about the Naming part of the proposal? I'm currently doing an ocaml related review which mainly needs a "decision" on the naming part of the proposal. I think this is not very controversial, so if atleast an agreement could be reached on this, then said review can move forward.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]