From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id 102C7BC0B for ; Thu, 16 Nov 2006 20:01:18 +0100 (CET) Received: from ext.lri.fr (ext.lri.fr [129.175.15.4]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id kAGJ1Hbe020998 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 16 Nov 2006 20:01:17 +0100 Received: from smtp.lri.fr (serveur3-5 [129.175.3.5]) by ext.lri.fr (Postfix) with ESMTP id 531D120212D; Thu, 16 Nov 2006 20:01:17 +0100 (CET) Received: from serveur9-10.lri.fr (serveur9-10 [129.175.9.10]) by smtp.lri.fr (Postfix) with ESMTP id 3DADBCED98; Thu, 16 Nov 2006 20:01:17 +0100 (CET) Received: from filliatr by serveur9-10.lri.fr with local (Exim 3.36 #1 (Debian)) id 1GkmU9-00053n-00; Thu, 16 Nov 2006 20:01:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <17756.46461.9739.327852@serveur9-10.lri.fr> Date: Thu, 16 Nov 2006 20:01:17 +0100 To: skaller Cc: Guillaume Rousse , caml-list@yquem.inria.fr, autoconf@gnu.org Subject: Re: [Caml-list] managing ocaml dependencies In-Reply-To: <1163695632.20151.34.camel@rosella.wigram> References: <455C73BA.1030803@inria.fr> <1163695632.20151.34.camel@rosella.wigram> X-Mailer: VM 7.19 under Emacs 21.4.1 From: Jean-Christophe Filliatre X-Virus-Scanned: by amavisd-new at lri.fr X-Miltered: at discorde with ID 455CB57D.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; ocaml:01 dependencies:01 filliatre:01 filliatr:01 lri:01 0100,:01 guillaume:01 dependencies:01 makefile:01 guillaume:01 makefile:01 lri:01 filliatr:01 ocaml:01 makefiles:01 skaller writes: > On Thu, 2006-11-16 at 15:20 +0100, Guillaume Rousse wrote: > > > They are two different strategies here, either generate them on > > maintainer host and ship them in the distribution, either generate them > > on user's host. > > There is no choice: it has to be done by the developer > because sometimes the dependency is semantic, in particular > when order of initialisation matters. The link order and the modules dependencies are two different matters. Typically, the Makefile contains the link order but dependencies can indeed be generated automatically, even on the fly; with the possible issues mentioned by Guillaume, though. Regarding the latter, I use the following typical Makefile for my projects: http://www.lri.fr/~filliatr/ftp/ocaml/misc/Makefile.in (together with http://www.lri.fr/~filliatr/ftp/ocaml/misc/configure.in) and I ship the .depend file within the distributions. (I don't include Makefiles; I use a single Makefile at the top directory) But having the dependencies built by the ./configure seems to be a good solution... -- Jean-Christophe