Loading ...
Sorry, an error occurred while loading the content.

12988Re: "ocaml_beginners"::[] Any experience using oasis?

Expand Messages
  • Adrien
    Dec 1, 2011
    • 0 Attachment
      On 01/12/2011, Francois Berenger <berenger@...> wrote:
      > On 12/01/2011 03:09 PM, Adrien wrote:
      >> Hi,
      >> It's fairly easy to use for simple programs although it doesn't shine
      >> there. But as soon as you have a more complex project, it quickly gets
      >> very useful. And you get a configure and build system that works on
      >> windows. I've also used it for C bindings where plain ocamlbuild
      >> didn't work out-of-the-box and required more configuration.
      >> As for doing things behind your back, it doesn't really do that. The
      >> whole stuff is very straightforward and only generates a bunch of
      >> files which are then used by a build system. Currently, the only
      >> available build system is ocamlbuild but new ones can be created.
      >> That means the question is rather whether ocamlbuild does things
      >> behind your back and it usually does. However, the ocamlbuild files
      >> generated by oasis are very simple and somehow "coerce" ocamlbuild
      >> into behaving a very specific (and unsurprising) way. The only thing
      >> left to ocamlbuild is sorting dependencies when compiling (which
      >> modules depends on which other module and has to be compiled first?).
      >> Maybe you can tell us what was your issue with ocamlbuild and we'll
      >> see if it's something that can happen when it is used in conjunction
      >> with oasis.
      > Hi,
      > Don't bother.
      > I just find ocamlbuild too complex and not adapted to do some things.
      > Recently, I read this:
      > http://mancoosi.org/~abate/ocamlbuild-stubs-and-dynamic-libraries
      > And after reading the comment from Sylvain Le Gall I started to think
      > "Oasis looks cool".
      > I really think I will give it a try soon.

      I maintain a binding generator. Making a full build system with
      dependency sorting was not an option since it was far too complicated.
      I've tried using ocamlbuild but stumbled on some issues which couldn't
      be solved easily. That made me use OCamlMakefile which works quite
      well for C bindings but I was probably not using properly and I still
      had to do the dependency sorting (which I was doing with
      ocamldepsort). I finally removed the ocamlmakefile support since it
      was broken and added support for oasis. It's been working pretty well
      so far.

      The current _oasis file for lablwebkit can be seen at:
      http://notk.org/~adrien/lablwebkit_oasis . The @CCOPT@ and @CCLIB@ are
      replaced by the postconf command script which calls pkg-config (not
      yet supported by oasis; my solution is a kind of hack).

      Adrien Nader
    • Show all 13 messages in this topic