caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: r.3@libertysurf.fr
To: caml-list@inria.fr
Subject: [Caml-list] which ocaml build system
Date: Mon, 22 Jul 2013 11:07:33 +0200 (CEST)	[thread overview]
Message-ID: <1672419877.217810363.1374484053368.JavaMail.root@zimbra27-e5.priv.proxad.net> (raw)
In-Reply-To: <51ECF4EB.1060301@libertysurf.fr>

[-- Attachment #1: Type: text/plain, Size: 1602 bytes --]

Hello, 

I have a new question : which package build system ? 

I would like to gather thoughts on that in the ocaml.org website, because actually its advice is 'make + OcamlMakefile' and 'Omake', and I am not sure it is the best advice. 


I think that people maintaining opam and godi may have important opinions on that. Here are my personal thoughts on this. 


1) pur ocaml, 1 platform (1 person, or a team with identical computers and systems) 

ocamlbuild because : 
official tool that comes with ocaml, very handy and powerful, quite easy, clear _tags file that shows well dependencies, and support for ocamlfind. 
I espetially like the feature that handles dependencies properly and only rebuilds what is needed when rebuilding. 

I also tried Makefiles without OcamlMakefile, autotools (with ocaml-autoconf) 



2) ocaml with c dependencies, multi platforms, cross builds 

Here the best thing I found was autotools with ocaml-autoconf. 
Though autotools are not easy to handle, that was the tool for the job. lablgtk, cairo-ocaml use this for example. 

I also tried Omake but really did not like it, as we have to learn a full new "language" with many special instructions. Also, I did not succeeded in patching an Omake project (caml-images) for cross compilation. The complexity is maybe equivalent as with autotools, but learning autotools is much more rewarding as it is a reference build system for GNU builds in particular. 
Oasis looked interesting, but was not able to cross compile, and I had more confidence in autotools for multi platforms support. 


Best regards, 
William R 


[-- Attachment #2: Type: text/html, Size: 2106 bytes --]

       reply	other threads:[~2013-07-22  9:07 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <51ECF4EB.1060301@libertysurf.fr>
2013-07-22  9:07 ` r.3 [this message]
2013-07-22 15:11   ` Ashish Agarwal
2013-07-23 13:39   ` Marek Kubica
2013-07-25 21:45     ` Martin DeMello
2013-07-26  1:10       ` Francois Berenger
2013-07-26  5:01         ` Malcolm Matalka
2013-07-26  5:46           ` Adrien Nader
2013-07-26  6:49             ` rixed
2013-07-26  7:07               ` David Allsopp
2013-07-26  4:49       ` Gabriel Scherer
2013-08-05 17:34         ` [Caml-list] character syntax error '^M' r.3
2013-08-05 17:38           ` David Allsopp
2013-08-05 20:23             ` William R
2013-08-06 10:52               ` David Allsopp
2013-07-27  9:51       ` [Caml-list] which ocaml build system Goswin von Brederlow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1672419877.217810363.1374484053368.JavaMail.root@zimbra27-e5.priv.proxad.net \
    --to=r.3@libertysurf.fr \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).