Version française
Home     About     Download     Resources     Contact us    
Browse thread
A Tutorial on GNU Make with OCaml
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Michael_Grünewald <michael.grunewald@l...>
Subject: Re: [Caml-list] A Tutorial on GNU Make with OCaml
Dear Jeff,

Jeff Shaw wrote:
>
> Dear OCamlers,
> I spent quite a lot of time today getting better acquainted with GNU
> make and decided I to share my experience and results. It's a bit on the
> newbie friendly side of instruction.
>
> http://shawjeff.blogspot.com/2010/05/this-is-storytutorial-about-how-i_20.html

ten years ago I learned GNU Make and found it awful to program. I had 
the feeling that it is nit meant to write complex (or mildly complex) 
makefiles. Instead makefiles should be written by another program. I may 
be wrong but I think that GNU Make shines when it is used as part of the 
auto-tools chain, that you may also need to learn.

My personal taste goes rather to BSD Make (make in FreeBSD, bsdmake in 
OS-X and bmake in some other places): I found it much mor eeasy to 
program, and the FreeBSD build toolchain and ports collection provide a 
significant amount of Makefile techniques one can draws its inspiration 
from. I wrote my own macros for my OCaml projects. You can find them here:

   http://home.gna.org/bsdmakepscripts/


If you are interested in make and makefile techniques, you may have 
interest in the macros I wrote. You can see them in action in

   https://forge.ocamlcore.org/scm/viewvc.php/trunk/?root=libertine

Read the various makefiles you found in the repository!

Note that if you are looking for an efficient way to handle your 
projects, it seems that ocamlbuild might be a more reasonable approach. 
I never used it though.

The OCaml build system I wrote is not that good as I would like it to 
be, for instance it lacks the possibility to compile several versions of 
a library or program against different ocamlbuild predicates. For simple 
things, it works very good, however! Of course I am very busy (math 
post-doc) so I never really wrote documentation for these macros, but 
the examples are here and I may have time for questions.

Remark: the TeX oriented macros I also wrote *are* a bit documented! See 
http://home.gna.org/bsdmakepscripts/tex.html
-- 
Cheers,
Michael