Like the MAKE
macro, MAKEFLAGS
is also a special case.
Do not define MAKEFLAGS
in your makefiles.
MAKEFLAGS
contains flags (that is, single-character options) for the make command. Unlike other FLAGS macros, the MAKEFLAGS
value is a concatenation of flags, without a leading `-'. For instance the string eiknp would be a recognized value for MAKEFLAGS
, while -f x.mk or macro=value would not.
If the MAKEFLAGS
environment variable is set, make runs with the combination of flags given on the command line and contained in that variable.
The value of MAKEFLAGS
is always exported, whether set in the environment or not, and the options it contains are passed to any nested make commands (whether invoked by $(MAKE), make, or /usr/bin/make). This insures that nested make commands are always passed the options which the parent make was invoked.