From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id C3136820A1 for ; Mon, 9 Sep 2013 19:08:31 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of adrien@notk.org) identity=pra; client-ip=91.121.71.147; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="adrien@notk.org"; x-sender="adrien@notk.org"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of adrien@notk.org designates 91.121.71.147 as permitted sender) identity=mailfrom; client-ip=91.121.71.147; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="adrien@notk.org"; x-sender="adrien@notk.org"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@nautica.notk.org) identity=helo; client-ip=91.121.71.147; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="adrien@notk.org"; x-sender="postmaster@nautica.notk.org"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgoFAI//LVJbeUeT/2dsb2JhbABbgweDSmm7eIJ1gSQWdIIlAQEFI1YQCxgCAgUTDgICDwUYHQETLIdtsiqRWIEpjlcHgmk0gQADl3QBkWaDIjo X-IPAS-Result: AgoFAI//LVJbeUeT/2dsb2JhbABbgweDSmm7eIJ1gSQWdIIlAQEFI1YQCxgCAgUTDgICDwUYHQETLIdtsiqRWIEpjlcHgmk0gQADl3QBkWaDIjo X-IronPort-AV: E=Sophos;i="4.90,872,1371074400"; d="scan'208";a="32132302" Received: from nautica.notk.org ([91.121.71.147]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ADH-AES256-SHA; 09 Sep 2013 19:08:30 +0200 Received: by nautica.notk.org (Postfix, from userid 1003) id B49F8C009; Mon, 9 Sep 2013 19:08:30 +0200 (CEST) Date: Mon, 9 Sep 2013 19:08:30 +0200 From: Adrien Nader To: Alain Frisch Cc: Xavier Leroy , caml-list@inria.fr Message-ID: <20130909170830.GA7161@notk.org> References: <5229DEF9.7040706@inria.fr> <522A0336.7030203@inria.fr> <522D8605.1050603@frisch.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <522D8605.1050603@frisch.fr> User-Agent: Mutt/1.5.20 (2009-06-14) Subject: Re: [Caml-list] Accelerating compilation On Mon, Sep 09, 2013, Alain Frisch wrote: > On 09/06/2013 06:30 PM, Xavier Leroy wrote: > >- Make sure the .opt compilers (ocamlc.opt, ocamlopt.opt) are > > installed. They are significantly faster than their non-.opt > > counterparts, and some Linux distros package the .opt compilers > > separately and don't install them by default. > > Shouldn't we change the official installation procedure (from > sources), so that the .opt compilers are installed as "ocamlc" and > "ocamlopt" (not "ocamlc.opt", "ocamlopt.opt") when they are > available? And suggest to do the same for distribution packages? > It would make the life of other projects easier if they could just > call "ocamlc" without having to check if "ocamlc.opt" is available > or not. > > Or are there compelling arguments in favor of using the bytecode > version of ocamlc/ocamlopt? That sounds like the wrong place to fix this and a possible incompatibility with quite a lot of code. Ocamlfind already handles it nicely; the only thing missing is configuration. Such things depend distribution policies. Bytecode is often smaller or maybe that the native code generation for a given platform fails in a subtle way. If you make the .opt version unavailable, you'll break several build scripts which don't use ocamlfind. You'll also break ocamlfind installs which are set to use the .opt versions. You could make a symlink but that won't work on Windows and I'm sure there will be many more issues. Moreover, after having spent pretty much all my free time during the past 3 months in the build system of the compiler, I strongly believe that the fewer changes happen there, the better (when talking about my sanity at least :) ). Btw, considering that cross-compilation support will be in trunk very soon, it's better not to assume anything about what's installed and rely blindly on ocamlfind calling the right binaries (that or autotools). -- Adrien Nader