help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Chain of pattern rule and non-terminal match-anything rule


From: Renaud Pacalet
Subject: Re: Chain of pattern rule and non-terminal match-anything rule
Date: Fri, 11 Jan 2019 12:03:34 +0100


On 10/01/2019 11:55, Renaud Pacalet wrote:
> With the following Makefile:
> 
> # Makefile
> %.dat: aa
>       touch $@
> 
> %:
>       mkdir -p $@
> 
> invoking `make -d aa/bb.dat` produces:
> ...
> Must remake target 'aa/bb.dat'.
> make: *** No rule to make target 'aa/bb.dat'.  Stop.
> ...
> Does anybody know where this behaviour comes from or what part of the
> GNU make manual explains this behaviour?

I think I found it in a comment in the source code:

$ git rev-parse --short HEAD
214865e
$ sed -n '321,323p;323q' src/implicit.c
          /* Rules that can match any filename and are not terminal
             are ignored if we're recursing, so that they cannot be
             intermediate files.  */

Shouldn't this be explicit in the documentation? Is it?
-- 
Renaud Pacalet



reply via email to

[Prev in Thread] Current Thread [Next in Thread]