|
From: | Raz Manor |
Subject: | Non existing target not marked as new |
Date: | Wed, 8 Feb 2017 13:48:56 +0000 |
Hello, I created a makefile using instructions for this post:
http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/ To test it, I make all my files, then deleted one .d file and touched one of the header files present in that .d file. The target, however, was not rebuilt. Running with -d, I found that the empty rule to make %.d files, ran the first time the %.d file was needed, in the -include directive. Than the target was marked as built by make, so the second time it was needed, when building the .o file, the empty recipe was not re-run. However, since the .d file still didn’t exist, the .o file was not rebuilt. The author of the article was assuming that if a target is marked as built, all the target it's their prerequisite will also be rebuilt, regardless of the actual state of the target. Was he mistaken? If so, is this a bug, or the intended behavior? I this is the intended behavior, how can I achieve the same affect? Thanks, Raz |
[Prev in Thread] | Current Thread | [Next in Thread] |