bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Minor improvement to make documentation


From: Dale R. Worley
Subject: Minor improvement to make documentation
Date: Thu, 4 Mar 2004 13:37:15 -0500

I've written up a minor improvement to the make documentation.  The
first change warns the user of the trouble that can happen when a file
name contains '='.  The second change adds an explanation to the error
message "commands commence before first target", telling that it can
be a consequence of a file name containing '='.

(Please Cc: me on any reply, since I'm not on the bug-make mailing
list.)

Dale

----------------------------------------------------------------------
diff -ru /usr/local/src/make-3.79.1/make.texinfo make-3.79.1.doc/make.texinfo
--- /usr/local/src/make-3.79.1/make.texinfo     2000-06-20 10:00:17.000000000 
-0400
+++ make-3.79.1.doc/make.texinfo        2004-01-23 15:18:41.000000000 -0500
@@ -1534,6 +1534,12 @@
 the contents of the existing target file are no longer necessarily
 valid.
 
+(Beware that if the first prerequisite contains an @samp{=}, the line
+will be interpreted as a target-specific variable assignment rather
+than as a rule.  In the rare case
+that a file name contains @samp{=}, this can happen.
address@hidden, ,Target-specific Variable Values}.)
+
 How to update is specified by @var{commands}.  These are lines to be
 executed by the shell (normally @samp{sh}), but with some extra features
 (@pxref{Commands, ,Writing the Commands in Rules}).
@@ -9533,9 +9539,16 @@
 @code{make} command (such as a variable assignment).  Command scripts
 must always be associated with a target.
 
-The second form is generated if the line has a semicolon as the first
-non-whitespace character; @code{make} interprets this to mean you left
-out the "target: prerequisite" section of a rule.  @xref{Rule Syntax}.
+These messages can also happen if the preceding rule line was mistaken
+for a target-specific variable assignment because the first
+prerequisite of the rule contained a @samp{=}.
address@hidden Syntax}.
address@hidden, ,Target-specific Variable Values}.
+
+The second form is also generated if the line has a semicolon as the first
+non-whitespace character; @code{make} interprets this to mean that the
+line is a combined rule and command line, and that you left
+out the "target: prerequisite" section of the rule.  @xref{Rule Syntax}.
 
 @item No rule to make target address@hidden'.
 @itemx No rule to make target address@hidden', needed by address@hidden'.
----------------------------------------------------------------------




reply via email to

[Prev in Thread] Current Thread [Next in Thread]