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=2.6 required=5.0 tests=AWL,DNS_FROM_RFC_POST, SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 34BBCBBC4 for ; Fri, 20 Feb 2009 17:32:31 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AksCAAxqnklIDtyeimdsb2JhbACUGD8BAQEKCQwHDwWwZo9wAQMBA4QMBoJTgXY X-IronPort-AV: E=Sophos;i="4.38,242,1233529200"; d="scan'208";a="23294438" Received: from fg-out-1718.google.com ([72.14.220.158]) by mail3-smtp-sop.national.inria.fr with ESMTP; 20 Feb 2009 17:32:30 +0100 Received: by fg-out-1718.google.com with SMTP id e21so1366619fga.43 for ; Fri, 20 Feb 2009 08:32:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:references:x-mailer; bh=SIBg3GMd4n8bskLm0mvwJfvxRppwa3YpebW+NBKWz9I=; b=VJE90nDFE2/emqxwA91NXP82LcLid3Z8LzBKWxhdKBMq2EYtVwbNZ6fH5lBibdLWOw HslKRJFNLKEEHtBml7ojrrZ4NbrhumCUFUO9+OBxvUvFEbtg1tJijGjgnPG9FvTm2mya 078Ef1lkFPWlUI0hAL/WB9bV5U2B84TE67ZNE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:references :x-mailer; b=Y/rAoxf4pzmxBOslZjEk4IoXXH/rhdiOnq769PC2/2RS2nDYZLzT2ELlUlbOPr/w2u UZAoEX7PHW7sjBOPERzNHusPmhj6vlYSXX73hlr8J6Hb8GuzXVoTmxj/k/eUnnGZVl6X QeLPLK5j9DQLmLOEJiHdFOH+DrwieREaj/GAs= Received: by 10.86.99.9 with SMTP id w9mr1164281fgb.68.1235147550710; Fri, 20 Feb 2009 08:32:30 -0800 (PST) Received: from ?192.168.1.34? (247-222.77-83.cust.bluewin.ch [83.77.222.247]) by mx.google.com with ESMTPS id e11sm228143fga.10.2009.02.20.08.32.29 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 20 Feb 2009 08:32:30 -0800 (PST) Sender: =?UTF-8?Q?Daniel_B=C3=BCnzli?= Message-Id: From: =?ISO-8859-1?Q?Daniel_B=FCnzli?= To: OCaml List In-Reply-To: <499ECEB7.6010709@lri.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: [Caml-list] ocamlbuild & deps Date: Fri, 20 Feb 2009 17:31:43 +0100 References: <499ECEB7.6010709@lri.fr> X-Mailer: Apple Mail (2.930.3) X-Spam: no; 0.00; bunzli:01 buenzli:01 deps:01 compilation:01 compilation:01 dynamically:01 compile:01 caml-list:01 dependency:01 optimization:03 daniel:04 daniel:04 depends:04 depends:04 heu:04 Le 20 f=E9vr. 09 =E0 16:39, Romain Bardou a =E9crit : > I think there is a difference. It is indeed an optimization issue =20 > but not at the level of Ocamlbuild itself : it is as the level of =20 > your compilation process. If A *dynamically* depends on B, and your =20= > whole project (say, 10 hours of compilation) depends on A, but you =20 > have no way to build B, then Ocamlbuild will start to compile your =20 > project until it finds out that A cannot be built (maybe several =20 > hours later). If B had been put as a ~dep, then Ocamlbuild would not =20= > even had started building the project in the first place, saving you =20= > a lot of time. Heu no. If B cannot be built then the compilation of A stops and the =20 compilation of your project stops. It is however true that if A has a dependency on a heavy C in parallel =20= to B you'll have to wait for the end of C. But even in this case, it's =20= just a matter of calling 'build' with B and C in a sensible order (and =20= not in parallel). Best, Daniel=