[Top][All Lists]
[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/
- Post 3.81 $? handling,
John Graham-Cumming <=