On 8/19/05, Shawn Halpenny <[EMAIL PROTECTED]> wrote:

I posted a bit too soon.  With some additional work, I can get the
full dependency list for any target.  The problem with my original
solution:

> ifneq ($(PREREQS),)
> @echo $@: $? \| $|
> else
> @<generic link/compile rule cmds>
> endif

Since the @echo rule doesn't actually create the target, the link rule
won't run because the .o files never exist.  I could fake it with the
-t switch to just touch the targets, but I don't want to create any
files is PREREQS is defined.  So, with a quick change to not actually
use the shell at all, and running make with -n:

ifneq ($(PREREQS),)
$(info $@: $? | $|)
else
@<generic link/compile rule cmds>
endif

Now it requires the $(info) function, so you'll need a make from CVS
after late February.  One annoyance is that make reports "nothing to
be done for <sometarget>", but that's a small price to pay in order to
get this information in a more readable format.

-- 
Shawn Halpenny


_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make

Reply via email to