caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Sylvain Le Gall <sylvain@le-gall.net>
To: caml-list@inria.fr
Subject: Re: [Caml-list] from oasis to obuild (original subject was Re: Accelerating compilation)
Date: Mon, 30 Sep 2013 14:11:43 +0000 (UTC)	[thread overview]
Message-ID: <slrnl4j1l8.ntq.sylvain@le-gall.net> (raw)
In-Reply-To: <5249310F.7090108@riken.jp>

Hello,

On 30-09-2013, Francois Berenger <berenger@riken.jp> wrote:
> On 09/07/2013 05:51 AM, Fabrice Le Fessant wrote:
> > [...]
>> FWIW, I recently compiled Merlin with both ocamlbuild and ocp-build,
>> on a quad-core with "-j 10" for both (the link to the ocp-build
>> description file is in the latest OCamlPro's report), ocamlbuild needs
>> 13s where ocp-build only needs 4s to compile everything.
>
> I recently switched from oasis to obuild.
>
> The main reason I adopted oasis in the past is because the project
> description file (_oasis) is very short.
>
> With ocp-build, (as far as I know) I would have to list all the files
> my program/libraries need to be built, and I am too lazy for that.
>
> But now, I have a project.obuild file instead, which
> is as terse as an _oasis file.
>
> Here is my project.obuild file:
> ---
> Name:         something
> Version:      0.1
> Authors:      me
> License:      GPL
> Synopsis:     some_more_things
> obuild-ver:   1
>
> Executable ac
>    Path:           .
>    BuildDepends:   batteries, dolog, parmap, vector3, biniou, atd, atdgen
>    MainIs:         ac.ml
>
> [...] some other executables follow
> ---
>
> Compile time before, with oasis:
>
> # cat build.sh
> #!/bin/bash
>
> #set -x
>
> oasis setup
> ocaml setup.ml -configure
> ocaml setup.ml -build
>
> # time ./build.sh
> real    0m9.397s
>
> Compile time after, with obuild:
> # obuild clean && time (obuild configure && obuild build -j 1)
> real    0m3.624s
>

Note that given the proximity of obuild and _oasis files it should be
super easy to just convert 1 time the _oasis file to foo.obuild and keep
using _oasis while changing the build backend from ocamlbuild to obuild.

OASIS is not building anything by itself, the time you report is
probably 90% due to ocamlbuild (the build backend).

BTW, this kind of _oasis -> obuild conversion is a topic I have
discussed with the author of obuild and I am 100% willing to do the
conversion plugin if it makes sense.


Regards
Sylvain

> -- 
> Best regards,
> Francois Berenger.
>
> -- 
> Caml-list mailing list.  Subscription management and archives:
> https://sympa.inria.fr/sympa/arc/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>

Cheers,
Sylvain Le Gall
-- 
Website:     http://sylvain.le-gall.net/
OCaml forge: http://forge.ocamlcore.org
OCaml blogs: http://planet.ocaml.org


  parent reply	other threads:[~2013-09-30 14:12 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-06 13:56 [Caml-list] Accelerating compilation Romain Bardou
2013-09-06 14:55 ` Markus Mottl
2013-09-06 15:19   ` Romain Bardou
2013-09-06 15:27     ` Gabriel Scherer
2013-09-06 15:33       ` Alain Frisch
2013-09-06 20:51     ` Fabrice Le Fessant
2013-09-09  7:44       ` Romain Bardou
2013-09-11 13:00       ` Francois Berenger
2013-09-11 13:46         ` Wojciech Meyer
2013-09-12  1:23           ` Francois Berenger
2013-09-12 15:15             ` Jacques Le Normand
2013-09-30  8:06       ` [Caml-list] from oasis to obuild (original subject was Re: Accelerating compilation) Francois Berenger
2013-09-30  8:18         ` Török Edwin
2013-09-30  9:00         ` Fabrice Le Fessant
2013-09-30  9:13           ` Anil Madhavapeddy
2013-09-30 11:13             ` Alain Frisch
2013-09-30 11:19               ` Anil Madhavapeddy
2013-09-30 11:27                 ` Alain Frisch
2013-09-30 11:36                   ` Anil Madhavapeddy
2013-09-30  9:18           ` Francois Berenger
2013-09-30 14:11         ` Sylvain Le Gall [this message]
2013-10-01  0:57           ` Francois Berenger
2013-10-01 12:25             ` Sylvain Le Gall
2013-09-07 11:37     ` [Caml-list] Accelerating compilation Matej Kosik
2013-09-08  6:37     ` Francois Berenger
2013-09-06 15:18 ` Gabriel Scherer
2013-09-06 15:28   ` Romain Bardou
2013-09-06 16:04   ` Markus Mottl
2013-09-06 16:30 ` Xavier Leroy
2013-09-07 19:13   ` Wojciech Meyer
2013-09-07 21:42     ` Jacques-Pascal Deplaix
2013-09-08  1:59       ` Markus Mottl
2013-09-09  7:59   ` Romain Bardou
2013-09-09  8:25   ` Alain Frisch
2013-09-09  8:35     ` Francois Berenger
2013-09-09 10:13     ` Anil Madhavapeddy
2013-09-09 17:08     ` Adrien Nader
2013-09-09 17:17       ` Gabriel Kerneis
2013-09-10  2:01     ` oleg
2013-09-10 10:21       ` Gerd Stolpmann
2013-09-10 16:15       ` Adrien Nader
2013-09-10 16:46       ` Xavier Leroy
2013-09-10 16:53         ` Adrien Nader
2013-09-10 17:43           ` ygrek
2013-09-06 18:45 ` Martin Jambon
2013-09-09  8:15   ` Romain Bardou
2013-09-09  8:36     ` Francois Berenger
2013-09-09  8:41       ` Thomas Refis
2013-09-09 17:32     ` Aleksey Nogin

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=slrnl4j1l8.ntq.sylvain@le-gall.net \
    --to=sylvain@le-gall.net \
    --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).