mirror of
https://git.savannah.gnu.org/git/make.git
synced 2024-12-28 15:57:48 +00:00
Formerly make.texinfo.~73~
This commit is contained in:
parent
45572fa600
commit
ab6a618dac
1 changed files with 44 additions and 22 deletions
66
make.texinfo
66
make.texinfo
|
@ -6,9 +6,9 @@
|
|||
@smallbook
|
||||
@c %**end of header
|
||||
|
||||
@set EDITION 0.39
|
||||
@set EDITION 0.40
|
||||
@set VERSION 3.63 Beta
|
||||
@set UPDATED 6 January 1993
|
||||
@set UPDATED 11 January 1993
|
||||
@set UPDATE-MONTH January 1993
|
||||
|
||||
@c finalout
|
||||
|
@ -350,10 +350,14 @@ Implicit Rule for Archive Member Targets
|
|||
@comment node-name, next, previous, up
|
||||
@chapter Overview of @code{make}
|
||||
|
||||
The @code{make} utility automatically determines which pieces of a
|
||||
large program need to be recompiled, and issues commands to
|
||||
recompile them. This manual describes GNU @code{make}, which was
|
||||
implemented by Richard Stallman and Roland McGrath.
|
||||
The @code{make} utility automatically determines which pieces of a large
|
||||
program need to be recompiled, and issues commands to recompile them.
|
||||
This manual describes GNU @code{make}, which was implemented by Richard
|
||||
Stallman and Roland McGrath. GNU @code{make} conforms to section 6.2 of
|
||||
@cite{IEEE Standard 1003.2-1992} (POSIX.2).
|
||||
@cindex POSIX
|
||||
@cindex IEEE Standard 1003.2
|
||||
@cindex standards conformance
|
||||
|
||||
Our examples show C programs, since they are most common, but you can use
|
||||
@code{make} with any programming language whose compiler can be run with a
|
||||
|
@ -1139,6 +1143,9 @@ makefile as has been traditionally done with other versions of
|
|||
|
||||
@cindex @code{-I}
|
||||
@cindex @code{--include-dir}
|
||||
@findex /usr/gnu/include
|
||||
@findex /usr/local/include
|
||||
@findex /usr/include
|
||||
If the specified name does not start with a slash, and the file is not
|
||||
found in the current directory, several other directories are searched.
|
||||
First, any directories you have specified with the @samp{-I} or
|
||||
|
@ -1148,13 +1155,16 @@ Then the following directories (if they exist)
|
|||
are searched, in this order:
|
||||
@file{@var{prefix}/include} (normally @file{/usr/local/include})
|
||||
@file{/usr/gnu/include},
|
||||
@file{/usr/local/include}, @file{/usr/include}. If an included makefile
|
||||
cannot be found in any of these directories, a warning message is
|
||||
generated, but it is not a fatal error; processing of the makefile
|
||||
containing the @code{include} continues.@refill
|
||||
@findex /usr/gnu/include
|
||||
@findex /usr/local/include
|
||||
@findex /usr/include
|
||||
@file{/usr/local/include}, @file{/usr/include}.
|
||||
|
||||
If an included makefile cannot be found in any of these directories, a
|
||||
warning message is generated, but it is not an immediately fatal error;
|
||||
processing of the makefile containing the @code{include} continues.
|
||||
Once it has finished reading makefiles, @code{make} will try to remake
|
||||
any that are out of date or don't exist.
|
||||
@xref{Remaking Makefiles, ,How Makefiles Are Remade}.
|
||||
Only after it has tried to find a way to remake a makefile and failed,
|
||||
will @code{make} diagnose the missing makefile as a fatal error.
|
||||
|
||||
@node MAKEFILES Variable, Remaking Makefiles, Include, Makefiles
|
||||
@section The Variable @code{MAKEFILES}
|
||||
|
@ -2133,10 +2143,18 @@ these commands executed on its behalf. @xref{Search Algorithm,
|
|||
@cindex precious targets
|
||||
@cindex preserving with @code{.PRECIOUS}
|
||||
|
||||
The targets which @code{.PRECIOUS} depends on are given the following special
|
||||
treatment: if @code{make} is killed or interrupted during the
|
||||
The targets which @code{.PRECIOUS} depends on are given the following
|
||||
special treatment: if @code{make} is killed or interrupted during the
|
||||
execution of their commands, the target is not deleted.
|
||||
@xref{Interrupts, ,Interrupting or Killing @code{make}}.
|
||||
Also, if the target is an intermediate file, it will not be deleted
|
||||
after it is no longer needed, as is normally done.
|
||||
@xref{Chained Rules, ,Chains of Implicit Rules}.
|
||||
|
||||
You can also list the target pattern of an implicit rule (such as
|
||||
@samp{%.o}) as a dependency file of the special target @code{.PRECIOUS}
|
||||
to preserve intermediate files whose target patterns match that file's
|
||||
name.
|
||||
|
||||
@findex .IGNORE
|
||||
@item .IGNORE
|
||||
|
@ -6611,10 +6629,11 @@ attaches to every file made by this pattern rule. These unvarying
|
|||
dependencies are useful occasionally.
|
||||
|
||||
@c !!! The following sentence should be rewritten. --bob
|
||||
It is allowed for a pattern rule to have no dependencies that contain
|
||||
@samp{%} or to have no dependencies at all. This is effectively a general
|
||||
wildcard. It provides a way to make any file that matches the target pattern.
|
||||
@xref{Last Resort}.
|
||||
@c rewritten by roland; does it win now?
|
||||
A pattern rule need not have any dependencies that contain @samp{%}, or
|
||||
in fact any dependencies at all. Such a rule is effectively a general
|
||||
wildcard. It provides a way to make any file that matches the target
|
||||
pattern. @xref{Last Resort}.
|
||||
|
||||
@c !!! The end of of this paragraph should be rewritten. --bob
|
||||
Pattern rules may have more than one target. Unlike normal rules, this
|
||||
|
@ -6721,7 +6740,10 @@ Here is a table of automatic variables:
|
|||
@vindex @@ @r{(automatic variable)}
|
||||
@item $@@
|
||||
The file name of the target of the rule. If the target is an archive
|
||||
member, then @samp{$@@} is the name of the archive file.
|
||||
member, then @samp{$@@} is the name of the archive file. In a pattern
|
||||
rule that has multiple targets (@pxref{Pattern Intro, ,Introduction to
|
||||
Pattern Rules}), @samp{$@@} is the name of whichever target caused the
|
||||
rule's commands to be run.
|
||||
|
||||
@vindex $%
|
||||
@vindex % @r{(automatic variable)}
|
||||
|
@ -7660,7 +7682,7 @@ Various new built-in implicit rules.
|
|||
@xref{Catalogue of Rules, ,Catalogue of Implicit Rules}.
|
||||
@end itemize
|
||||
|
||||
@node Missing, Quick Reference, Features, Top
|
||||
@node Missing, Makefile Conventions, Features, Top
|
||||
@chapter Incompatibilities and Missing Features
|
||||
@cindex incompatibilities
|
||||
@cindex missing features
|
||||
|
@ -7756,7 +7778,7 @@ using EFL, we will gladly add them.
|
|||
@comment included by standards.texi.
|
||||
@include make-stds.texi
|
||||
|
||||
@node Quick Reference, Complex Makefile, Missing, Top
|
||||
@node Quick Reference, Complex Makefile, Makefile Conventions, Top
|
||||
@appendix Quick Reference
|
||||
|
||||
This appendix summarizes the directives, text manipulation functions,
|
||||
|
|
Loading…
Reference in a new issue