help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU Make 4.2 Query


From: Paul Smith
Subject: Re: GNU Make 4.2 Query
Date: Mon, 02 Sep 2019 11:36:21 -0400
User-agent: Evolution 3.32.1-2

On Mon, 2019-09-02 at 20:48 +0530, nikhil jain wrote:
> So currently in my remote execution design these 2 commands execute
> on different host.
> 
> So, does ONESHELL will make these 2 commands on the same host ?

Well, I don't know how your remote execution design works.

However, .ONESHELL tells make to invoke the entire recipe in a single
shell invocation so I assume that will cause them all to be invoked on
a single remote host, yes.

See:

https://www.gnu.org/software/make/manual/html_node/One-Shell.html


Note, though, that this can break recipes if they are written in such a
way that they expect each line to be invoked in a separate shell.  For
one simple example:

  foo:
          cd foo && echo in foo
          cd bar && echo in bar

will work very differently with and without .ONESHELL.

More discussion is in the manual, above.

If your makefiles have these assumptions built into their recipes, and
you can't change them, you may not be able to take advantage of this.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]