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.

Makefile Contents<br />

Inside makefiles, you can split long lines over several lines of text. To do this, put a<br />

backslash (\) at the very end of the line. You can use this technique to extend<br />

comments as well as recipe lines and macro definitions, for example.<br />

Rules<br />

If a rule or macro definition must contain a # character, use \#; otherwise, make<br />

mistakes the # for the beginning of a comment. Also, if a macro definition must<br />

contain a single $ character, use $$.<br />

Filenames that contain a colon must always be enclosed in quotes, as in:<br />

"a:target" : "a:prereq"<br />

The general format of a rule is:<br />

targets [attributes] ruleop [prerequisites]<br />

[;recipe]<br />

{ recipe}<br />

where the items enclosed in square brackets are optional. (This is just a<br />

documentation convention; you do not actually enter the square brackets.) The<br />

parts of the rule are described as follows:<br />

targets<br />

One or more target names.<br />

attributes<br />

A list, possibly empty, of attributes to apply to the list of targets.<br />

ruleop An operator token, usually a colon (:), that separates the target names from<br />

the prerequisite names and may also affect the processing of the specified<br />

targets.<br />

prerequisites<br />

A list of zero or more names on which the specified targets depend.<br />

make<br />

recipe A command to execute to update targets. May follow on the same line as<br />

the prerequisites, separated from them by a semicolon. If such a recipe is<br />

present, make takes it as the first in the list of recipe lines defining how to<br />

make the named targets. Additional recipe lines may follow the first line of<br />

the rule. Each subsequent recipe line must begin with a tab character.<br />

The possible rule operators are listed as follows:<br />

targets : prereqs<br />

Is a simple rule definition. For explicit targets, at most one simple rule may<br />

have a recipe, in contrast with the :: rule operator, whose description<br />

follows.<br />

targets :! prereqs<br />

Executes the recipe for the associated targets once for each recently<br />

changed prerequisite. In simple rules, the recipe is executed only once, for<br />

all recently changed prerequisites at the same time. The $< macro expands<br />

to the current recently changed prerequisites if it appears in rules with this<br />

rule operator.<br />

targets :^ prereqs<br />

Inserts the specified prerequisites before any other prerequisites already<br />

associated with the specified targets.<br />

Chapter 2. Shell command descriptions 397

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

Saved successfully!

Ooh no, something went wrong!