Thank you Eddy,
Prefix:
I reported the issue via email and the issue tracker (didn't find the
signup button at first,
sent an email, found the signup button) where it's filed as
https://savannah.gnu.org/bugs/index.php?64746.
What Dimitry and you Eddy suggested definitely makes makes sense. Yet, I
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)
Dmitry Goncharov (6 October 2023 17:35) replied, ending:
> Prefer simply expanded variables with $(shell).
and if you
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)
On Wed, 2023-10-04 at 23:20 +0200, Till Backhaus wrote:
> This rather short Makefile shows exponential runtime depending on the
> number of variables.
> export
>
> VAR_1 ?= $(shell echo 1)
> VAR_2 ?= $(shell echo 2)
> VAR_3 ?= $(shell echo 3)
> VAR_4 ?= $(shell echo 4)
> VAR_5 ?= $(shell echo 5)
Hello,
This is my first report here, I might lack the proper etiquette.
I'm on fedora 38 which installs gnu-make 4.4.1. I'm reporting a regression
related to the changed
behavior of export:
* WARNING: Backward-incompatibility!
Previously makefile variables marked as export were not exported to
URL:
<https://savannah.gnu.org/bugs/?64746>
Summary: Exponential Runtime in make 4.4.1 when export is
used
Group: make
Submitter: tback
Submitted: Wed 04 Oct 2023 09:31:42 PM UTC
Severity: 3 -