-.TH MAKE 1 "28 February 2016" "GNU" "User Commands"
+.TH MAKE 1 "31 May 2022" "GNU" "User Commands"
.SH NAME
make \- GNU make utility to maintain groups of programs
.SH SYNOPSIS
.BR make ,
you must write a file called the
.I makefile
-that describes the relationships among files in your program, and the states
-the commands for updating each file. In a program, typically the executable
-file is updated from object files, which are in turn made by compiling source
+that describes the relationships among files in your program, and provides
+commands for updating each file. In a program, typically the executable file
+is updated from object files, which are in turn made by compiling source
files.
.LP
Once a suitable makefile exists, each time you change some source files,
.B make
executes commands in the
.I makefile
-to update one or more target
-.IR names ,
+to update one or more
+.IR targets ,
where
-.I name
+.I target
is typically a program.
If no
.B \-f
.B \-d
was specified.
.I FLAGS
-may be
-.I a
+may be any or all of the following names, comma- or space-separated. Only the
+first character is significant: the rest may be omitted:
+.I all
for all debugging output (same as using
.BR \-d ),
-.I b
+.I basic
for basic debugging,
-.I v
+.I verbose
for more verbose basic debugging,
-.I i
-for showing implicit rules,
-.I j
-for details on invocation of commands, and
-.I m
-for debugging while remaking makefiles. Use
-.I n
+.I implicit
+for showing implicit rule search operations,
+.I jobs
+for details on invocation of commands,
+.I makefile
+for debugging while remaking makefiles,
+.I print
+shows all recipes that are run even if they are silent, and
+.I why
+shows the reason
+.BR make
+decided to rebuild each target. Use
+.I none
to disable all previous debugging flags.
.TP 0.5i
\fB\-e\fR, \fB\-\-environment\-overrides\fR
.BR make
will not limit the number of jobs that can run simultaneously.
.TP 0.5i
+\fB\--jobserver-style=\fR\fIstyle\fR
+The style of jobserver to use. The
+.I style
+may be one of
+.BR fifo ,
+.BR pipe ,
+or
+.B sem
+(Windows only).
+.TP 0.5i
\fB\-k\fR, \fB\-\-keep\-going\fR
Continue as much as possible after an error.
While the target that failed, and those that depend on it, cannot
.BR \-w ,
even if it was turned on implicitly.
.TP 0.5i
+.BI \-\-shuffle "[=MODE]"
+Enable shuffling of goal and prerequisite ordering.
+.I MODE
+is one of
+.I none
+to disable shuffle mode,
+.I random
+to shuffle prerequisites in random order,
+.I reverse
+to consider prerequisites in reverse order, or an integer
+.I <seed>
+which enables
+.I random
+mode with a specific
+.I seed
+value. If
+.I MODE
+is omitted the default is
+.IR random .
+.TP 0.5i
\fB\-W\fR \fIfile\fR, \fB\-\-what\-if\fR=\fIfile\fR, \fB\-\-new\-file\fR=\fIfile\fR, \fB\-\-assume\-new\fR=\fIfile\fR
Pretend that the target
.I file
Further updates contributed by Mike Frysinger. It has been reworked by Roland
McGrath. Maintained by Paul Smith.
.SH "COPYRIGHT"
-Copyright \(co 1992-1993, 1996-2020 Free Software Foundation, Inc.
+Copyright \(co 1992-1993, 1996-2022 Free Software Foundation, Inc.
This file is part of
.IR "GNU make" .
.LP
.LP
You should have received a copy of the GNU General Public License along with
this program. If not, see
-.IR http://www.gnu.org/licenses/ .
+.IR https://www.gnu.org/licenses/ .