Paul Smith <psm...@gnu.org> writes:

> On Wed, 2017-01-11 at 19:10 +0300, Sergey Organov wrote:
>> > Some sort of loop detection on variable expansion needs to be
>> > implemented.
>> 
>> Can't it rather be solved by exporting variables to the $(shell)
>> unexpanded?
>
> Well, that would be a major difference in the way make works, and
> probably even more off-putting than the current behavior:
>
>  FOO = bar
>  export BAR = $(FOO)
>
>  xx := $(shell echo $$BAR)
>
> would give $(FOO), not bar... confusing, and very un-make-like.

Yeah, sure, but IMHO it's:

- still less confusing than what we have now

- not that confusing if documented from the beginning, as it's local to
  $(shell) 

- could even be useful, not to care about unneeded expansions

> I don't think I want it to work that way.

Well, then

$(setenv TEST,something else)

(suggested in the bug-tracker) looks good on multiple points,
provided it neither defines nor changes 'TEST' make variable.

-- Sergey


_______________________________________________
Help-make mailing list
Help-make@gnu.org
https://lists.gnu.org/mailman/listinfo/help-make

Reply via email to