from make.texinfo on 11 July 1994 -->
Go to the previous, next section.
This appendix summarizes the directives, text manipulation functions,
and special variables which GNU make understands.
See section Special Built-in Target Names, section Catalogue of Implicit Rules,
and section Summary of Options,
for other summaries.
Here is a summary of the directives GNU make recognizes:
define variable
endef
Define a multi-line, recursively-expanded variable. See section Defining Canned Command Sequences.
ifdef variable
ifndef variable
ifeq (a,b)
ifeq "a" "b"
ifeq 'a' 'b'
ifneq (a,b)
ifneq "a" "b"
ifneq 'a' 'b'
else
endif
Conditionally evaluate part of the makefile. See section Conditional Parts of Makefiles.
include file
Include another makefile. See section Including Other Makefiles.
override variable = value
override variable := value
override variable += value
override define variable
endef
Define a variable, overriding any previous definition, even one from
the command line.
See section The override Directive
Tell make to export all variables to child processes by default.
See section Communicating Variables to a Sub-make}
export variable = value
export variable := value
export variable += value
unexport variable
make whether or not to export a particular variable to child
processes.
See section Communicating Variables to a Sub-make path}
vpath Directive}
vpath
vpath
directive.
Here is a summary of the text manipulation functions (see section Functions for Transforming Text):
$(subst from,to,text)
$(patsubst pattern,replacement,text)
$(strip string)
$(findstring find,text)
$(filter pattern...,text)
$(filter-out pattern...,text)
$(sort list)
$(dir names...)
$(notdir names...)
$(suffix names...)
$(basename names...)
$(addsuffix suffix,names...)
$(addprefix prefix,names...)
$(join list1,list2)
$(word n,text)
$(words text)
$(firstword names...)
$(wildcard pattern...)
wildcard)}
Execute a shell command and return its output.
See section The shell Function)}
Return a string describing how the make variable variable was
defined.
See section The origin Function,words,text)}
Evaluate text with var bound to each word in words, and concatenate the results. @xref{Foreach Function, ,The
foreach Function}.
Here is a summary of the automatic variables. See section Automatic Variables, for full information.
$@
$%
$<
$?
make to Update Archive Files).
$^
make to Update Archive Files).
$*
$(@D)
$(@F)
$@.
$(*D)
$(*F)
$*.
$(%D)
$(%F)
$%.
$(<D)
$(<F)
$<.
$(^D)
$(^F)
$^.
$(?D)
$(?F)
$?.
These variables are used specially by GNU make:
MAKEFILES
Makefiles to be read on every invocation of make.
See section The Variable MAKEFILES
Directory search path for files not found in the current directory.
See section VPATH: Search Path for All Dependencies
The name of the system default command interpreter, usually `/bin/sh'.
You can set SHELL in the makefile to change the shell used to run
commands. See section Command Execution.
MAKE
The name with which make was invoked.
Using this variable in commands has special meaning.
See section How the MAKE Variable Works
The number of levels of recursion (sub-makes).
See section Communicating Variables to a Sub-make.
MAKEFLAGS
The flags given to make. You can set this in the environment or
a makefile to set flags.
See section Communicating Options to a Sub-make
The default list of suffixes before make reads any makefiles.
Go to the previous, next section.