f78
Instead of Executing the Commands
Contents|Index|Previous|Next
Instead of Executing the Commands
The makefile tells make how to tell whether a target is up to date, and how to update each target.
But updating the targets is not always what you want.
The following options specify other activities for
make.
-n
--just-print
--dry-run
--recon
No-op. The activity is to print what commands would be used to make the
targets up to date, but not actually execute them.
-t
--touch
Touch. The activity is to mark the targets as up to date without actually
changing them. In other words, make pretends to compile the targets but does not really change their contents.
-q
--question
Question. The activity is to find out silently whether the targets are up to
date already; but execute no commands in either case. In other words, neither
compilation nor output will occur.
-W file
--what-if=file
--assume-new=file
--new-file=file
What if . Each -W flag is followed by a file name. The given files modification times are
recorded by make as being the present time, although the actual modification times remain the
same. You can use the -W flag in conjunction with the -n flag to see what would happen if you were to modify specific files.
With the
-n flag, make prints the commands that it would normally execute but does not execute them.
With the
-t flag, make ignores the commands in the rules a
ffb
nd uses (in effect) the command, touch, for each target that needs to be remade. The touch command is also printed, unless -s or .SILENT is used. For speed, make does not actually invoke the program, touch. It does the work directly.
With the
-q flag, make prints nothing and executes no commands, but the exit status code it returns
is zero if and only if the targets to be considered are already up to date. If
the exit status is one, then some updating needs to be done. If make encounters an error, the exit status is two, so you can distinguish an error
from a target that is not up to date.
It is an error to use more than one of the three flags,
-n, -t, and -q, in the same invocation of make.
The
-n, -t, and -q options do not affect command lines that begin with + characters or contain the strings $(MAKE) or ${MAKE}. Only the line containing the + character or the strings $(MAKE) or ${MAKE} is run, regardless of these options. Other lines in the same rule are not
run unless they too begin with + or contain $(MAKE) or ${MAKE}. See How the MAKE Variable Works.
The
-W flag provides two features:
If you also use the
-n or -q flag, you can see what make would do if you were to modify some files.
Without the
-n or-q flag, when make is actually executing com-mands, the -W flag can direct make to act as if some files had been modified, without
actually modifying the files.
The options,
-p and -v, allow you to obtain other information about make or about the makefiles in use (see Summary of Options).
0