[Top][All Lists]

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

Non existing target not marked as new

From: Raz Manor
Subject: Non existing target not marked as new
Date: Wed, 8 Feb 2017 13:48:56 +0000


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?




reply via email to

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