16.12.2012 Views

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Targets<br />

what happens when recursive calls are made to make. The output correctly<br />

shows line breaks in recipes that are divided into several lines of text using<br />

the \ sequence.<br />

–p Prints the makefile after it has been processed to include macro and target<br />

definitions. This display is in human-readable form useful for debugging, but<br />

you cannot use it as input to make.<br />

–q Checks whether the target is up to date. If it is up to date, make exits with<br />

a status of 0; otherwise, it exits with a status of 1 (typically interpreted as an<br />

error by other software). No commands are run when –q is specified.<br />

–r Does not read the startup file. Various control macros and default rules will<br />

not be defined.<br />

–S Ends make if an error occurs during operations to bring a target up to date<br />

(opposite of –k). This is the default.<br />

–s Specifies that recipe commands, warning messages, or touch messages<br />

(see the –t option) not be displayed. This is equivalent to the .SILENT<br />

attribute or macro.<br />

–t Touches the target to mark them as up-to-date, but only executes<br />

commands to change a target if the target has a plus sign (+) command<br />

prefix. make does not touch up-to-date targets or targets that have<br />

prerequisites but not recipes. make displays a message for each touched<br />

target file indicating the filename.<br />

–u Forces an unconditional update: make behaves as if all the prerequisites of<br />

the given target are out of date.<br />

–V Prints the version number of make and a list of built-in rules.<br />

–v Causes make to display a detailed account of its progress. This includes<br />

what files it reads, the definition and redefinition of each macro, metarule<br />

and suffix rule searches, and other information.<br />

–x Exports all macro definitions to the environment. This happens just before<br />

make begins making targets (but after it has read the entire makefile).<br />

make<br />

A target is normally a file that you want to ensure is up to date with the files on<br />

which it is dependent (the prerequisites). For example, you may want to check to<br />

see if a is based on the most recent version of the corresponding source code. If it<br />

is not, then have the source code recompiled to get an up-to-date version. In this<br />

case, the compiled program file is the target and the corresponding source files are<br />

prerequisites (that is, the files on which a target is dependent).<br />

make updates all targets that are specified on the command line. If you do not<br />

specify any target, make updates the targets in the first rule of the makefile. A<br />

target is out of date if it is older than any of its prerequisites (based on modification<br />

times) or if it does not exist. To update a target, make first recursively ensures that<br />

all the target’s prerequisites are up to date, processing them in the order in which<br />

they appear in the rule. If the target itself is out of date, make then runs the recipe<br />

associated with the target. If the target has no associated recipe, make considers it<br />

up to date.<br />

make also supports another form of targets, known as special targets, described in<br />

“Special Target Directives” on page 404.<br />

Chapter 2. Shell command descriptions 393

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!