On Thu, May 20, 2021 at 4:29 PM Frank Heckenbach
<f.heckenb...@fh-soft.de> wrote:

>    - just ".SECONDARY:" with no prerequisites which makes all
>      targets secondary (like I want), but also makes all targets
>      immediate, e.g. with this Makefile, if y exists and x doesn't,
>      it will remake x, but not y, which is not what I want:

You also do not want this, because this hurts performance badly.

> Am I missing a way to do it without adverse side-effects?

No. This is the state of affairs.

There is a proposed solution
.NOTINTERMEDIATE:

You can use it like this
.NOTINTERMEDIATE: %.h %.d hello.z
This will cause %.d %.h and hello.z files to not be treated as intermediate.

See https://savannah.gnu.org/bugs/?60297.
If you can build make yourself you can apply the patch attached to
this proposal.

regards, Dmitry

Reply via email to