Follow-up Comment #3, bug #64746 (project make):
Many have asked for a new "optional simple assignment" variant. I'm not
opposed to it.
Another option that will work with most currently available versions of GNU
make, although it looks somewhat scary, is described here:
https://make.mad-scienti
Follow-up Comment #2, bug #64746 (project make):
That explanation was really helpful. I discovered the difference between
recursively expanded variables and simple expanded variables only after
posting this issue, but I was still confused why recursive expanded variables
would cause this behavior.
Follow-up Comment #1, bug #64746 (project make):
VAR_1 is a recursively expanded variable. When make defines this
variable, the value is set to string '$(shell echo 1)'. No subshell is
spawned at this time. Each time make expands this variable, make
spawns a shell and has the shell execute 'echo 1
On Wed, Oct 4, 2023 at 6:09 PM Till Backhaus wrote:
> This rather short Makefile shows exponential runtime depending on the number
> of variables.
> VAR_1 ?= $(shell echo 1)
...
VAR_1 is a recursively expanded variable. When make defines this
variable, the value is set to string '$(shell echo 1)
Follow-up Comment #2, bug #54854 (project make):
I was also bitten by this.
I understand the argument and why this is not considered a bug.
Would you consider a warning (or a note) if multiple targets (without
patterns) and -j N with N > 1 are used simultaneously?
Thanks
_