The make program is invoked as follows:
Options, targets, and macro definitions can appear in any order. The last assignment to a variable is the one that's used. Macro definitions are typed as:
For more information, see the section "Creating and Using Macros," later in this chapter.
Makefile exists, make attempts to extract the most recent
version of one from either an RCS file, if one exists, or from an SCCS
file, if one exists. Note though, that if a real makefile exists,
make will not attempt to extract
one from RCS or SCCS, even if the RCS or SCCS file is newer than the
Like just about every other GNU program, GNU make has both long and short options. The available options are as follows:
Silently accepted, but ignored, for compatibility with other versions of make.
Treat all targets as out of date. All targets are remade, no matter what the actual status is of their prerequisites.
Change directory to dir before reading makefiles. With multiple options, each one is relative to the previous. This is usually used for recursive invocations of make.
Print debugging information in addition to regular
output. This information includes which files are out of date,
the file times being compared, the rules being used to update
the targets, and so on. Equivalent to
Print debugging ...