caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Sylvain Le Gall <sylvain@le-gall.net>
To: Magnus Therning <magnus@therning.org>,
	Gabriel Scherer <gabriel.scherer@gmail.com>
Cc: Anil Madhavapeddy <anil@recoil.org>,
	OCaml List <caml-list@yquem.inria.fr>
Subject: Re: [Caml-list] oasis building out-of-src and camlp4
Date: Tue, 29 Sep 2015 22:59:49 +0000	[thread overview]
Message-ID: <CAOCAUGN75fDPBUZC8wo=eQL_q5XduVt+feo9Rda1WoA7=F5L7w@mail.gmail.com> (raw)
In-Reply-To: <20150923094414.GB25229@sobel.cipherstone.com>

[-- Attachment #1: Type: text/plain, Size: 3675 bytes --]

Please consider adding more comments to the following bug, which seems
close to what you are discussing:
https://forge.ocamlcore.org/tracker/index.php?func=detail&aid=1473&group_id=54&atid=291

I must admit that I totally miss the whole point of the discussion,
probably if you can make a summary of what you precisely need in the BTS, I
will be able to understand the problem better.

Regards
Sylvain

Le mer. 23 sept. 2015 à 11:44, Magnus Therning <magnus@therning.org> a
écrit :

> 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*.
> >
> > 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.
> >
> > 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.
>
> > <src/...>). But I like the idea and created a feature request to track
> > it:
> >   http://caml.inria.fr/mantis/view.php?id=6997
>
> 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
>
> --
> Magnus Therning                      OpenPGP: 0xAB4DFBA4
> 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
>

[-- Attachment #2: Type: text/html, Size: 4795 bytes --]

  reply	other threads:[~2015-09-29 23:00 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-22 21:12 Magnus Therning
2015-09-23  7:48 ` Anil Madhavapeddy
2015-09-23  8:19   ` Magnus Therning
2015-09-23  8:38     ` Gabriel Scherer
2015-09-23  8:54       ` Magnus Therning
2015-09-23  9:19         ` Gabriel Scherer
2015-09-23  9:44           ` Magnus Therning
2015-09-29 22:59             ` Sylvain Le Gall [this message]
2015-09-30 11:49               ` Magnus Therning
2015-10-01  6:46                 ` Sylvain Le Gall
2015-10-01  7:23                   ` Magnus Therning
2015-10-02  9:32                     ` Sylvain Le Gall
2015-10-02  9:38                       ` Magnus Therning
2015-09-23  7:56 ` Anil Madhavapeddy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAOCAUGN75fDPBUZC8wo=eQL_q5XduVt+feo9Rda1WoA7=F5L7w@mail.gmail.com' \
    --to=sylvain@le-gall.net \
    --cc=anil@recoil.org \
    --cc=caml-list@yquem.inria.fr \
    --cc=gabriel.scherer@gmail.com \
    --cc=magnus@therning.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).