cac
The override Directive
Contents|Index|Previous|Next
The override Directive
If a variable has been set with a command argument (see Overriding Variables), then ordinary assignments in the makefile are ignored. If you want to set
the variable in the makefile even though it was set with a command argument, you
can use an override directive which is a line looking like override variable = value, or override variable := value.
To append more text to a variable defined on the command line, use the
statement,
override variable += more text.
See
Appending More Text to Variables. The override directive was not invented for escalation in the war between makefiles and
command arguments. It was invented so you can alter and add to values that the
user specifies with command arguments.
For example, suppose you always want the ‘
-g’ switch when you run the C compiler, but you would like to allow the user to
specify the other switches with a command argument just as usual. You could use
this override directive: override CFLAGS += -g.
You can also use
override directives with define directives. This is done as you might expect, as in the following.
override define foo
bar
endef
See Defining Variables Verbatim for information about define.
0