help-make
[Top][All Lists]
Advanced

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

Post 3.81 $? handling


From: John Graham-Cumming
Subject: Post 3.81 $? handling
Date: Sat, 29 Apr 2006 14:42:56 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040208 Thunderbird/0.5 Mnenhy/0.6.0.104

The NEWS file for 3.81 states:

  Up to and including this release, the '$?' variable does not contain
  any prerequisite that does not exist, even though that prerequisite
  might have caused the target to rebuild.  Starting with the _next_
  release of GNU make, '$?' will contain all prerequisites that caused
  the target to be considered out of date.  See this Savannah bug:
  http://savannah.gnu.org/bugs/index.php?func=detailitem&item_id=16051

I've tried and failed to create an example that has a prerequisite that doesn't exist, yet runs. For example, if I do:

    all: siegfriednroy
        @echo Newer prerequisites are $?

    siegfriednroy:

Then I get 'Newer prerequisites are siegfriednroy' on both GNU Make 3.80 and 3.81. I then tried:

    all: siegfriednroy
        @echo Newer prerequisites are $?

    .PHONY: siegfriednroy
    siegfriednroy:

And get the exact same result. Naturally there is no file called 'siegfriednroy' on my system.

Can someone provide an example of $? not containing a non-existent prerequisite? (All my testing was done on Linux) Obviously if I just do:

    all: siegfriednroy
        @echo Newer prerequisites are $?

then GNU Make errors out because it can't find siegfriednroy.

John.
--
John Graham-Cumming
address@hidden

Home: http://www.jgc.org/
Blog: http://www.jgc.org/blog/

POPFile: http://getpopfile.org/
GNU Make Standard Library: http://gmsl.sf.net/
GNU Make Debugger: http://gmd.sf.net/
Fast, Parallel Builds: http://www.electric-cloud.com/

Sign up for my Spam and Anti-spam Newsletter
at http://www.jgc.org/




reply via email to

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