bug-make
[Top][All Lists]
Advanced

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

Spurious tabs cause spurious "up to date" message


From: Geoff Kuenning
Subject: Spurious tabs cause spurious "up to date" message
Date: Wed, 28 Nov 2001 21:24:00 -0800

The following two-line Makefile contains a spurious TAB character:

foo.o:  foo.h
        

as shown by "cat -vet":

foo.o:^Ifoo.h$
^I$

If you create foo.c foo.h and type "make foo.o" using this Makefile,
you will get the message:

make: `foo.o' is up to date.

This behavior seems plain wrong.  How can a nonexistent file be up to
date?  Sun's version of make will attempt to compile foo.c, which is
arguably either correct or incorrect behavior.  I can think of three
defensible behaviors for make:

(1) Complain about having a null command,
(2) "Run" the null command in some fashion, such as printing a blank line, or
(3) Ignore the null command completely, as Sun's make does.

You get to pick. :-)
-- 
    Geoff Kuenning   address@hidden   http://www.cs.hmc.edu/~geoff/

The DMCA criminalizes curiosity.  It would put Susie in jail for
taking her stereo apart to see how it works.



reply via email to

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