version 1.123, 2016/12/28 22:47:11 |
version 1.124, 2017/01/01 01:08:11 |
|
|
Do not build anything. |
Do not build anything. |
.It Fl q |
.It Fl q |
Do not execute any commands, but exit with status 0 if the specified targets |
Do not execute any commands, but exit with status 0 if the specified targets |
are up-to-date, and 1 otherwise. |
are up to date, and 1 otherwise. |
.It Fl r |
.It Fl r |
Do not use the built-in rules specified in the system makefile, |
Do not use the built-in rules specified in the system makefile, |
.Pa <sys.mk> . |
.Pa <sys.mk> . |
|
|
before each command line in the makefile. |
before each command line in the makefile. |
.It Fl t |
.It Fl t |
Rather than re-building a target as specified in the makefile, create it |
Rather than re-building a target as specified in the makefile, create it |
or update its modification time to make it appear up-to-date, a bit like |
or update its modification time to make it appear up to date, a bit like |
.Xr touch 1 . |
.Xr touch 1 . |
.It Ar NAME Ns = Ns Ar value |
.It Ar NAME Ns = Ns Ar value |
Set the value of the variable |
Set the value of the variable |
|
|
The operators are as follows: |
The operators are as follows: |
.Bl -tag -width flag |
.Bl -tag -width flag |
.It Ic \&: |
.It Ic \&: |
A target is considered out-of-date if any of its prerequisites has |
A target is considered out of date if any of its prerequisites has |
been modified more recently than the target (that is, its modification time |
been modified more recently than the target (that is, its modification time |
is less than that of any of its prerequisites). |
is less than that of any of its prerequisites). |
Thus, targets with no prerequisites are always out-of-date. |
Thus, targets with no prerequisites are always out of date. |
.Pp |
.Pp |
.Nm |
.Nm |
will then execute the list of shell commands associated with that target. |
will then execute the list of shell commands associated with that target. |
|
|
first examines all prerequisites and re-creates them as necessary. |
first examines all prerequisites and re-creates them as necessary. |
.Pp |
.Pp |
It will then always execute the list of shell commands associated with |
It will then always execute the list of shell commands associated with |
that target (as if the target always was out-of-date). |
that target (as if the target always was out of date). |
.Pp |
.Pp |
Like |
Like |
.Ic \&: , |
.Ic \&: , |
|
|
is interrupted. |
is interrupted. |
.It Ic \&:: |
.It Ic \&:: |
Each dependency line for a target is considered independently. |
Each dependency line for a target is considered independently. |
A target is considered out-of-date for this target rule if any of its |
A target is considered out of date for this target rule if any of its |
prerequisites in this dependency has been modified more recently than |
prerequisites in this dependency has been modified more recently than |
the target. |
the target. |
.Pp |
.Pp |
|
|
.It Va \&! |
.It Va \&! |
The name of the archive file (only valid for library rules). |
The name of the archive file (only valid for library rules). |
.It Va \&? |
.It Va \&? |
The list of prerequisites for this target that were deemed out-of-date. |
The list of prerequisites for this target that were deemed out of date. |
.It Va \&< |
.It Va \&< |
The name of the prerequisite from which this target is to be built, if a valid |
The name of the prerequisite from which this target is to be built, if a valid |
inference rule (suffix rule) is in scope. |
inference rule (suffix rule) is in scope. |
|
|
A phony target is a target that does not correspond to any object in the |
A phony target is a target that does not correspond to any object in the |
file system (more like a placeholder for a list of commands). |
file system (more like a placeholder for a list of commands). |
.Pp |
.Pp |
Phony targets are always out-of-date at the start of a run, but |
Phony targets are always out of date at the start of a run, but |
.Nm |
.Nm |
still keeps track of when they are built (that is, when the associated |
still keeps track of when they are built (that is, when the associated |
command list finishes running). |
command list finishes running). |
|
|
.Nm |
.Nm |
is interrupted by a SIGINT. |
is interrupted by a SIGINT. |
.It Ic .MADE |
.It Ic .MADE |
Mark its prerequisites as being up-to-date. |
Mark its prerequisites as being up to date. |
.It Ic .MAKE |
.It Ic .MAKE |
Mark its prerequisites as |
Mark its prerequisites as |
.Dq Always build . |
.Dq Always build . |
|
|
.It 0 |
.It 0 |
Normal behavior. |
Normal behavior. |
.It 1 |
.It 1 |
The target was not up-to date. |
The target was not up to date. |
.It >1 |
.It >1 |
An error occurred. |
An error occurred. |
.El |
.El |