From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id TAA25962 for caml-red; Wed, 10 Jan 2001 19:49:44 +0100 (MET) Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id KAA08023 for ; Wed, 10 Jan 2001 10:40:51 +0100 (MET) Received: from miss.wu-wien.ac.at (miss.wu-wien.ac.at [137.208.107.17]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f0A9epT08306 for ; Wed, 10 Jan 2001 10:40:51 +0100 (MET) Received: (from mottl@localhost) by miss.wu-wien.ac.at (8.9.0/8.9.0) id KAA18225; Wed, 10 Jan 2001 10:40:46 +0100 (MET) Date: Wed, 10 Jan 2001 10:40:46 +0100 From: Markus Mottl To: Dave Berry Cc: Michael Hicks , caml-list@inria.fr Subject: Re: Module hierarchies Message-ID: <20010110104046.A16947@miss.wu-wien.ac.at> References: <3145774E67D8D111BE6E00C0DF418B663A7C6B@nt.kal.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3145774E67D8D111BE6E00C0DF418B663A7C6B@nt.kal.com>; from dave@kal.com on Tue, Jan 09, 2001 at 16:46:11 -0000 Sender: weis@pauillac.inria.fr On Tue, 09 Jan 2001, Dave Berry wrote: > I don't agree with the final section though. It's trying to make the > "single makefile" solution fit all projects. I don't think this holds for > the case where sub-projects are producing separate deliverables, such as > DLLs, ActiveX controls or JavaBeans. In such cases you want to minimise (or > eliminate) dependencies from one component to the internals of another, and > separate makefiles look the best way to go. To my knowledge it is possible to include "recipes" (the equivalent of a Makefile) with "cook" (the "better make"). So it is not the case that you have to maintain the whole make-process in a single file: they can all reside in the directory that they control. The big difference is how dependencies are considered: "cook" analyses all of them at once instead of delegating work to some other make-process, which is the cause of unnecessarily long build times. As the author explains, it is only possible to have minimal build times if all dependencies are known at once to construct a complete dependency graph. In the (nearer) future I'll try out "cook" in more detail and eventually write general recipes for OCaml. This might make build processes of large and complex projects more efficient. Only (and a serious) shortcoming: "cook" is not very widespread and you'll therefore need Makefiles, too, if you ship source code... - Markus Mottl -- Markus Mottl, mottl@miss.wu-wien.ac.at, http://miss.wu-wien.ac.at/~mottl