Bah. Pretty sure I selected "Documentation" for this submission, not
"Enhancement".
Howard Chu wrote:
URL:
<http://savannah.gnu.org/bugs/?17881>
Summary: Better documentation of make rules
Project: make
Submitted by: hyc
Submitted on: Thursday 09/28/2006 at 20:26
Severity: 3 - Normal
Item Group: Enhancement
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Component Version: None
Operating System: None
Fixed Release: None
_______________________________________________________
Details:
The GNU make manual should state explicitly in section 4.2, Rule Syntax,
something to this effect:
When multiple prerequisites are listed for a rule, their order is
insignificant. In particular, you should not assume that prerequisites will
be processed in left-to-right order. Rules that list prerequisites that
depend on other prerequisites in the same rule are invalid and will break
when processed by a parallel make.
For example, given a rule
targetA: reqOne reqTwo reqThree
if "reqThree" cannot be built successfully until "reqOne" already exists,
then this rule does not specify the actual dependencies of targetA. The
correct rules would be:
reqThree: reqOne
targetA: reqTwo reqThree
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
OpenLDAP Core Team http://www.openldap.org/project/
_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make