English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
[Caml-list] Announcing the OMake build system version 0.9.1
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2004-09-04 (18:27)
From: chris.danx <chris.danx@n...>
Subject: Re: [Caml-list] Announcing the OMake build system version 0.9.1
Nicolas Cannasse wrote:
>>OMake is a build system, similar to GNU make, but with many additional
>>features.  The home site for OMake is http://omake.metaprl.org/
> Interesting !
> However, I can't help thinking that I don't write to learn yet another
> language for writing my Makefiles... Why not using directly OCaml for
> writing Makefiles and exposing all nice OMake features through a library ?
> You would benefit of a good tool for error checks which is the Ocaml
> compiler.

I've started to use ocamlconf!  That is a nice tool for doing 
'configuration' based builds (./configure && make && make install style 
builds).  You specify what you want to do in OCaml using some libs, run 
ocamlconf which calls the base system and end up with a configure file. 
  That's not the same as `just' using a makefile, but does provide a 
good example of a DSL embedded in OCaml for the purpose of building 
software, and it's done entirely with library based code.

This seems to work well for me, although I've only just started. 
Makefiles became problematic for managing the code (finding libraries, 
including paths, etc) and previous detours into things like 
autoconf/automake were less than encouraging.  Compared to 
autoconf/automake ocamlconf is a dream.  My only concern is compiling on 
Windows, but Cygwin is available here so I'm hoping that's not going to 
be a big problem.

One question that springs to mind is why hasn't anyone made a tool that 
does the build process based on the semantics of Ocaml?  Or have they? 
I used to (and sometimes still do) program in Ada using Gnat and most of 
the compilation can be handled by tools like gnatmake which handles all 
the dependancies.  The Ada language has some specific rules on 
compilation and recompilation.  Perhaps this is the difference?

Of course you had to manage some configuration issues, but for the 
majority of tasks it was possible to use the gnatmake program to manage 
vast portions of the build process and it was great!!!  This is the only 
thing I miss when not developing with Ada compilers and isn't unique to 
ocaml compilers.  Ada developers are spoiled in this regard. :)


To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners