Issue 65333 - dmake mistakes .ROOT, .TARGETS, .INIT and .DONE for .<suffix> targets
Summary: dmake mistakes .ROOT, .TARGETS, .INIT and .DONE for .<suffix> targets
Status: CLOSED FIXED
Alias: None
Product: Build Tools
Classification: Code
Component: dmake (show other issues)
Version: current
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: hjs
QA Contact: issues@tools
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-05-12 17:51 UTC by quetschke
Modified: 2013-08-07 15:34 UTC (History)
2 users (show)

See Also:
Issue Type: PATCH
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Patch for dmake (1.83 KB, patch)
2006-05-12 17:53 UTC, quetschke
no flags Details | Diff
Patch for dmake manpage (3.55 KB, patch)
2006-05-16 04:39 UTC, quetschke
no flags Details | Diff
Patch for dmake manpage (3.02 KB, patch)
2006-05-17 05:02 UTC, quetschke
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2006-05-12 17:51:15 UTC
New diagnostics in dmake45 showed that dmake fails mistakes the targets
.ROOT, .TARGETS, .INIT and .DONE for AUGMAKE special targets of the .<suffix>
form.

Example:
----
SHELL*:=/bin/sh 
SHELLFLAGS*:=-ce

.ROOT .PHONY .NOSTATE .SEQUENTIAL :- .INIT .TARGETS .DONE;
.INIT .DONE .PHONY: ;

all :
	+echo $@
----

The targets .ROOT and .TARGETS are special targets that were just forgotten,
but .INIT and .DONE are self defined and therefore indistinguishable from
.<suffix> meta targets.
Comment 1 quetschke 2006-05-12 17:53:54 UTC
Created attachment 36431 [details]
Patch for dmake
Comment 2 quetschke 2006-05-12 18:00:48 UTC
The previous patch fixes the problem by marking the two special targets really
as special and adding .INIT and .DONE as exceptions that shall not be treated
as .<suffix> targets.

Committed to dmake45 but the man page still needs changes to reflect the special
status of .INIT and .DONE and a recommendation to use '_' for self defined
"special" targets instead of '.'.
Comment 3 quetschke 2006-05-16 04:39:58 UTC
Created attachment 36497 [details]
Patch for dmake manpage
Comment 4 quetschke 2006-05-16 04:46:43 UTC
Committed the previous patch to dmake45.

Todo: Add some comments about .<suffix> vs. special targets and .INIT and .DONE
that also begin with a dot.
Comment 5 quetschke 2006-05-17 05:02:57 UTC
Created attachment 36533 [details]
Patch for dmake manpage
Comment 6 quetschke 2006-05-17 05:05:32 UTC
Committed to dmake45.

Testcase needed?
Comment 7 hjs 2006-05-17 14:11:25 UTC
i'm not going to stop you if you're willing to provide a testcase ;)
the more we have covered, the easier checking sideefects will become
Comment 8 quetschke 2006-05-17 22:46:00 UTC
Well, that was more or less rhetoric ;) but I checked in a testcase.

Reassigning for verification.
Comment 9 quetschke 2006-05-17 22:47:35 UTC
@ause: Please verify
Comment 10 hjs 2006-06-27 11:12:27 UTC
.ROOT .TARGET now can be redefined -> special targets
.DONE .INIT now complain being redefined -> now regular targets

Comment 11 hjs 2006-07-07 15:37:45 UTC
.