12988Re: "ocaml_beginners":: Any experience using oasis?
- Dec 1, 2011On 01/12/2011, Francois Berenger <berenger@...> wrote:
> On 12/01/2011 03:09 PM, Adrien wrote:I maintain a binding generator. Making a full build system with
>> 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.
> Don't bother.
> I just find ocamlbuild too complex and not adapted to do some things.
> Recently, I read this:
> 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.
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
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).
- << Previous post in topic