From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 9B8897F75C for ; Wed, 10 Sep 2014 15:51:05 +0200 (CEST) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of jp.deplaix@gmail.com) identity=pra; client-ip=74.125.82.45; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jp.deplaix@gmail.com"; x-sender="jp.deplaix@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of jp.deplaix@gmail.com designates 74.125.82.45 as permitted sender) identity=mailfrom; client-ip=74.125.82.45; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jp.deplaix@gmail.com"; x-sender="jp.deplaix@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wg0-f45.google.com) identity=helo; client-ip=74.125.82.45; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jp.deplaix@gmail.com"; x-sender="postmaster@mail-wg0-f45.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuQBAAFWEFRKfVItm2dsb2JhbABZg2BXgny1S5Fuh1ABgRAWEAEBAQEBBgsLCRQqhAQBAQQSER0BGx4DDAYFCw0CAgUhAgIPAhIRAQUBHAYBDAgBARAHB4gLAQMRBAEInFhrizCBcoMQiRQKGScNZoVTAREBAQQOgR6OKIJ5gVMFkkKDL4cCh0GLe0GFFGqCTwEBAQ X-IPAS-Result: AuQBAAFWEFRKfVItm2dsb2JhbABZg2BXgny1S5Fuh1ABgRAWEAEBAQEBBgsLCRQqhAQBAQQSER0BGx4DDAYFCw0CAgUhAgIPAhIRAQUBHAYBDAgBARAHB4gLAQMRBAEInFhrizCBcoMQiRQKGScNZoVTAREBAQQOgR6OKIJ5gVMFkkKDL4cCh0GLe0GFFGqCTwEBAQ X-IronPort-AV: E=Sophos;i="5.04,499,1406584800"; d="scan'208";a="78450204" Received: from mail-wg0-f45.google.com ([74.125.82.45]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 10 Sep 2014 15:51:04 +0200 Received: by mail-wg0-f45.google.com with SMTP id z12so4268722wgg.16 for ; Wed, 10 Sep 2014 06:51:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=NM97U/rhZKQHxZbRkXuYdwce483ZDlF0POZL+1nqGvA=; b=WndSasmzflGkbGwX2mxoKcksE/NeXdAxH2FsHsyhzoBHnBpYPfbKJgd8tKDpfGHYV5 rBbiBpy29aHsbT8cvNfv3i4P5iAMAmoZWtX1vCVjPKZIJZhG433VDYOZ4pOk8eWvb0ri x3Ped1slusXDAi3SeNVcPWkpH214CbCK5M505rbGITyG6PfCOeVuixsOqgg8MKswOQFI 1VYQudF3GkApziYr9NUZt3eKXC3vyEQf+arBK1D9gWEVViHafurFpQDTAgoxyNvVMyUR 087uW1frEY6ZPMy0bhxBPGiiNVewhZc5DTcnAOEiEj9vIzjHXnUjy3zNNj/SfnstyNJn fvmg== X-Received: by 10.194.187.101 with SMTP id fr5mr50696020wjc.10.1410357064429; Wed, 10 Sep 2014 06:51:04 -0700 (PDT) Received: from [192.168.1.15] (AMontsouris-652-1-132-27.w92-151.abo.wanadoo.fr. [92.151.179.27]) by mx.google.com with ESMTPSA id w2sm2535707wia.11.2014.09.10.06.51.03 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 10 Sep 2014 06:51:03 -0700 (PDT) Message-ID: <541057C6.702@gmail.com> Date: Wed, 10 Sep 2014 15:53:10 +0200 From: Jacques-Pascal Deplaix User-Agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.1.0 MIME-Version: 1.0 To: Francois Berenger , caml-list@inria.fr References: <5410522E.3050207@inria.fr> In-Reply-To: <5410522E.3050207@inria.fr> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] One build system to rule them all? Hi, I did know obuild but I forgot a fact about it: it doesn't use ocamlfind. As you took the defense of obuild, do you know why it doesn't use it ? I think I know how it works for simple packages but how is it supposed to work with packages which uses the linkopts field or even if the cma has not the same name as the library itself ? Why not having used findlib (for the speed declaimed in DESIGN.md) ? Did I missed something ? Cheers, On 09/10/2014 03:29 PM, Francois Berenger wrote: > On 09/10/2014 02:49 PM, Yotam Barnoy wrote: >> It appears to me that every couple of months we hear of someone >> implementing yet another build system in ocaml. Given the success of >> opam, I think it's clear that sometimes a monolithic solution, behind >> which the entire community can organize, is the best solution -- >> especially for infrastructure. Looking at haskell, having cabal as the >> main build system has really helped them advance in terms of supporting >> other platforms (such as windows), and since all community efforts in >> this realm are focused on cabal, they can improve it rapidly. >> >> a. Is there any build system we can organize behind to crown as the >> official build system? >> b. What are the use-cases missing from specific build systems, that have >> driven people to use other build systems? >> c. To pick one possible candidate, if ocamlbuild were spun out of the >> compiler, could it be enhanced to cover all the main use-cases so >> (almost) everyone would be happy with it? >> >> It's just such a shame to see the ocaml community re-inventing the wheel >> over and over again, each time with some limitation so that the next >> person needs to do the same thing yet again. > > It is not a shame, it is a tradition in the ocaml community! :-D > For example, almost each ocaml programmer that I know of have written > a logger (me included, it's even in opam so that I can reinvent > another wheel next time). > > More seriously, concerning build systems, we clearly have quite some > choice on the OCaml shelf: > - obuild > - ocamlbuild > - omake > - oasis (which in fact uses ocamlbuild, don't forget that) > - jenga > - [...] > > My preffered is obuild (https://github.com/ocaml-obuild/obuild), > for the terseness, readability and centralization of its build > descriptions. I would love to see the user community of obuild grow, > so that we can get rid of more bugs, be able to compile _any_ > OCaml project with it and implement even more cool features > (contributors are very welcome). > > I don't want a ring to rule them all, jut a ring that fits _my_ > finger. ;) >