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
wish there
was a "conditional simple expansion" operator.
(https://savannah.gnu.org/bugs/index.php?64746#comment2).

https://github.com/photoprism/photoprism/blob/eb44d637f3594f328131fdd0e3e987f5ca41e8bd/Makefile
is the Makefile in question. (I'm not affiliated with photoprism, I'm just
a user.)
https://github.com/photoprism/photoprism/discussions/3790 is the discussion
I had with the project.

Best regards,
Till

Am Mo., 9. Okt. 2023 um 17:09 Uhr schrieb Edward Welbourne <
edward.welbou...@qt.io>:

> On Wed, Oct 4, 2023 at 6:09 PM Till Backhaus <t...@backha.us> 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 really need the "only set if not already set" aspects of ?=,
> use a suitable if check around the immediate assignments, e.g.
>
> ifeq($(VAR_1),)
> VAR_1 := $(shell echo 1)
> endif
>
> (and, generally, avoid using $(shell ...) for anything that can be
> achieved using other make built-in functions, but I assume your real
> Makefile has something more complicated as the shell command).
>
>         Eddy.
>

Reply via email to