| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
value Function
The value function provides a way for you to use the value of a
variable without having it expanded. Please note that this
does not undo expansions which have already occurred; for example if
you create a simply expanded variable its value is expanded during the
definition; in that case the value function will return the
same result as using the variable directly.
The syntax of the value function is:
$(value variable) |
Note that variable is the name of a variable; not a reference to that variable. Therefore you would not normally use a `$' or parentheses when writing it. (You can, however, use a variable reference in the name if you want the name not to be a constant.)
The result of this function is a string containing the value of variable, without any expansion occurring. For example, in this makefile:
FOO = $PATH
all:
@echo $(FOO)
@echo $(value FOO)
|
The first output line would be ATH, since the "$P" would be
expanded as a make variable, while the second output line would
be the current value of your $PATH environment variable, since
the value function avoided the expansion.
The value function is most often used in conjunction with the
eval function (see section 8.8 The eval Function).