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 16CC47F734 for ; Wed, 23 Sep 2015 11:44:20 +0200 (CEST) IronPort-PHdr: 9a23:nfB+5xfx55z1yhKfus9ziHsXlGMj4u6mDksu8pMizoh2WeGdxc6yYh7h7PlgxGXEQZ/co6odzbGG7+a8AydZvN6oizMrTt9lb1c9k8IYnggtUoauKHbQC7rUVRE8B9lIT1R//nu2YgB/Ecf6YEDO8DXptWZBUiv2OQc9HOnpAIma153xjLDuvcGJKFwVzBOGIppMbzyO5T3LsccXhYYwYo0Q8TDu5kVyRuJN2GlzLkiSlRuvru25/Zpk7jgC86l5r50IeezAcq85Vb1VCig9eyBwvZWz9EqLcQzayXIWSGQbllJzCAjI9hzgFsP+uyHgt+d5njKRPcDsQKocVjGr7qMtQxjt3nQpLTk8pUTehcptl+pnoB+7oR15zMaAZYiaMudlVr/dcMkcRGxOGMFLWHoSUcuHc4ITAr9Zbq5jpI7nqg5L9EPmCA== Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=magnus@therning.org; spf=None smtp.mailfrom=magnus@therning.org; spf=None smtp.helo=postmaster@mail-wi0-f178.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of magnus@therning.org) identity=pra; client-ip=209.85.212.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="magnus@therning.org"; x-sender="magnus@therning.org"; x-conformance=sidf_compatible Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of magnus@therning.org) identity=mailfrom; client-ip=209.85.212.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="magnus@therning.org"; x-sender="magnus@therning.org"; x-conformance=sidf_compatible Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wi0-f178.google.com) identity=helo; client-ip=209.85.212.178; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="magnus@therning.org"; x-sender="postmaster@mail-wi0-f178.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CpAQB+cwJWlLLUVdFDGoN4Ywa9WoF6hXkCgUM6EgEBAQEBAQEBEAEBAQEHCwsJHzCCHYIHAQEBAwESWQ4FCwsYCSUPBSABBQEiExsHiAQIBAEDBTuoTIEwPjGfZQEBAQEBAQEDAQEBAQEBHAqLZoQqEQFRB4MYgRQFjHyIa4USh3QFUX5Ghl6KaxSDS4IhNYEXKAKCShyBVm8BiC2BPwEBAQ X-IPAS-Result: A0CpAQB+cwJWlLLUVdFDGoN4Ywa9WoF6hXkCgUM6EgEBAQEBAQEBEAEBAQEHCwsJHzCCHYIHAQEBAwESWQ4FCwsYCSUPBSABBQEiExsHiAQIBAEDBTuoTIEwPjGfZQEBAQEBAQEDAQEBAQEBHAqLZoQqEQFRB4MYgRQFjHyIa4USh3QFUX5Ghl6KaxSDS4IhNYEXKAKCShyBVm8BiC2BPwEBAQ X-IronPort-AV: E=Sophos;i="5.17,577,1437429600"; d="asc'?scan'208";a="148309280" Received: from mail-wi0-f178.google.com ([209.85.212.178]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 23 Sep 2015 11:44:18 +0200 Received: by wiclk2 with SMTP id lk2so60660641wic.1 for ; Wed, 23 Sep 2015 02:44:18 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-type:content-disposition:in-reply-to :user-agent; bh=tTrlVQ3BDE9ciqEC3SOl1OrX1gaoIt7eXVYFlvi1ags=; b=Yedx2TIHxcq1UrogRrlFaLPxNNJ8TE6q2juY4lXsFAMF4c3p2CdAe1N8c9+5Y6eTVj zGJlIIPsJBuOe8NEpC4ZH1tmkT9JnMiB1O6pP/dUsFy/W4kKIjYMIOWPHEvfcIbbcxU2 LQff3TPxi2G4hEMmsqphmaEh5J5ePFKo3xVcLL6QvSRpoLpl319hzqebNSCLkGPJbmQm kkr4lyExUvIYpnCnS/555ojlqh3j5exdN8k/iDnnDZzjN6lO7ui34w8FgdV3LmDoyT8U 4PNIsy8f2KYk4asGRKo/Y6PvXqsK6zXPcYfiINIW+oYTq3XZyLGjzdQeLQEcwXOx8ARz LSTA== X-Gm-Message-State: ALoCoQmaxxjSo0/s7A1yHDAQNrXFFZpuYEia+hBvga77FEXjxhZ3NZTzJUtB9KLkMQ8IpEUSrXah X-Received: by 10.194.93.198 with SMTP id cw6mr39509361wjb.113.1443001458157; Wed, 23 Sep 2015 02:44:18 -0700 (PDT) Received: from sobel.cipherstone.com (pc-132.aktiviteten.se. [194.218.229.132]) by smtp.gmail.com with ESMTPSA id it4sm6368163wjb.0.2015.09.23.02.44.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 23 Sep 2015 02:44:17 -0700 (PDT) Date: Wed, 23 Sep 2015 11:44:14 +0200 From: Magnus Therning To: Gabriel Scherer Cc: Anil Madhavapeddy , OCaml List , Sylvain Le Gall Message-ID: <20150923094414.GB25229@sobel.cipherstone.com> References: <20150922211237.GA22711@tatooine> <20150923081916.GE22004@sobel.cipherstone.com> <20150923085405.GG22004@sobel.cipherstone.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="H1spWtNR+x+ondvy" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Subject: Re: [Caml-list] oasis building out-of-src and camlp4 --H1spWtNR+x+ondvy Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Sep 23, 2015 at 11:19:57AM +0200, Gabriel Scherer wrote: > > Indeed, the goal is to not contaminate the source directory *at all*. >=20 > You could, in the "external build" command passed to CMake, wrap the > build invocation with code to create the symlinks before the build, > and remove them after the build. Yes, CMake lets me do pretty much anything, but it does make the build a little more complex and I'm already sneaking in OCaml without telling ;) > That said, If I understand oasis' philosophy correctly (but I'm far > from an expert), the file that are generated by the oasis setup are > not to be understood as "generated files never to be looked at", but > rather *source* files that you may want to modify and customize > yourself, and just contain some snippets produced by oasis. I would > understand this as a kind of "we created the basic boilerplate > structure of your project for you", rather than "those are hidden > files only used during the build". In particular, you may be expected > to include these files in your version-control repository (something I > have been a bit reluctant to do myself; I think that the newish > "dynamic" setup mode of oasis avoids versioning any cruft). Yes, I am aware of that, and with "dynamic" mode `oasis` seems to generate little enough that I wouldn't mind putting it in VCS. > > Since the steps work on "simple" > > code, but doesn't on code using `camlp4` I'm leaning towards calling > > this a bug. >=20 > I'll let oasis developers triage this issue, but it is not as clear as > you describe. It's not that this oasis setup works in simple cases and > breaks in other, but rather than oasis does not support this setup at > all, yet sometimes ocamlbuild can do what it needs without any help > whatsoever. I tend to land in the camp of "if the behaviour is surprising (without delighting) to a user, then it's a bug". I'm fully aware that what I'm trying to do might not have been a scenario the `oasis` devs ever considered. > ). But I like the idea and created a feature request to track > it: > http://caml.inria.fr/mantis/view.php?id=3D6997 Thanks, I'll keep an eye on that request. > But if you go this route, it means that you would have to wait for the > next ocamlbuild release, so an oasis-level solution or workaround > would currently be more helpful for you. For the time being I get by with using `ocamlbuild` (via `corebuild`) and its `-build-dir` option. Hopefully there'll be more support for out-of-source building when I get to the point of replacing all C code with OCaml ;) /M --=20 Magnus Therning OpenPGP: 0xAB4DFBA4=20 email: magnus@therning.org jabber: magnus@therning.org twitter: magthe http://therning.org/magnus You do not examine legislation in the light of the benefits it will convey if properly administered, but in the light of the wrongs it would do and the harms it would cause if improperly administered. -- Lyndon Johnson --H1spWtNR+x+ondvy Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iEYEABECAAYFAlYCdG4ACgkQiMWTaatN+6S+mACfUkVgMZV/vuahb8swlRlaRuZ5 sAAAoOWpSiDH/daW/LaIdvVK1AgIIPpl =qKsl -----END PGP SIGNATURE----- --H1spWtNR+x+ondvy--