how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Mark Galeck
Hello, the GNU Make manual says  (...)executed by invoking a new sub-shell for each line of the recipe, unless the .ONESHELL special target is in effect (In practice, make may take shortcuts that do not affect the results.) Some time ago I was asking here for help in modifying the source of Mak

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Paul Smith
On Sat, 2016-04-16 at 03:51 +, Mark Galeck wrote: > The failure case is: > Makefile: > export VAR-Y := val > .PHONY: all > all:$(MAKE) -f Makefile1 > > Makefile1: > $(warning VAR-Y $(VAR-Y)) > all: > > > Here, if I call > >make > the original Make works correctly, the value is print

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Mark Galeck
Paul, I guess you are saying that in fact the Make statement export VAR-Y := val (attempts to) establish a shell (environment) variable, and is not merely a Make construct. Is that what you are saying? But if that is so, then, well, VAR-Y is a valid Make variable (because nothing says otherwise i

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Philip Guenther
On Fri, Apr 15, 2016 at 10:16 PM, Mark Galeck wrote: > I guess you are saying that in fact the Make statement > export VAR-Y := val > (attempts to) establish a shell (environment) variable, and is not merely a > Make construct. Is that what you are saying? > But if that is so, then, well, VAR-Y i

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Mark Galeck
Well, I thought I did describe it.  I apologize if I was not clear. the output is Makefile1:1: VAR-Y (that is, the value is empty)  From: Philip Guenther To: Mark Galeck Cc: "psm...@gnu.org" ; "help-make@gnu.org" Sent: Friday, April 15, 2016 10:48 PM Subject: Re: how to (correctly) m

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Philip Guenther
On Fri, Apr 15, 2016 at 10:54 PM, Mark Galeck wrote: > Well, I thought I did describe it. I apologize if I was not clear. > > the output is > > Makefile1:1: VAR-Y > > (that is, the value is empty) Really? I get a bunch of lines with "Entering/Leaving directory blah" too. Debugging when the oth

Re: how to (correctly) modify GNU Make so that separate shell is always spawned for each command

2016-04-15 Thread Mark Galeck
>       Except by explicit request, `make' exports a variable only if it is     either defined in the environment initially or set on the command line,     and ***if its name consists only of letters, numbers, and underscores.***     Some shells cannot cope with environment variable names consist