Issue 80367 - Ambiguous inference chains for regcomp.bin
Summary: Ambiguous inference chains for regcomp.bin
Status: CONFIRMED
Alias: None
Product: Build Tools
Classification: Code
Component: solenv (show other issues)
Version: 680m222
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-05 17:33 UTC by quetschke
Modified: 2013-08-07 15:34 UTC (History)
4 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2007-08-05 17:33:47 UTC
The upcoming dmake 4.11 has stricter inference chain checking and it discovered
the following problem in odk (see at the end).

The problem is that in odk/util/rules.pmk the following two rules are ambigous
if $(EXEPOSTFIX) is empty and a target "regcomp.bin" is infered:

$(DESTDIRBIN)$/%$(EXEPOSTFIX) : $(BINOUT)$/%$(EXEPOSTFIX)
	@@-rm -f $@
	$(GNUCOPY) $(BINOUT)$/$(@:f) $@

$(DESTDIRBIN)$/%.bin : $(BINOUT)$/%.bin
	@@-rm -f $@
	$(GNUCOPY) $(BINOUT)$/$(@:f) $@


I will make this a warning in dmake 4.11 for now, but we should fix this before
cws_src680_dmake411 is integrated.

Logfile:
dmake:  Error: -- Ambiguous inference chains for target
´../../unxmacxp.pro/bin/odkcommon/macosx/bin/regcomp.bin´
dmake:   1.
../../unxmacxp.pro/bin/odkcommon/macosx/bin/regcomp.bin(../../unxmacxp.pro/bin/odkcommon/macosx/bin/%.bin)
-->
/Users/buildslave/compile/shadow/solver/680/unxmacxp.pro/bin/regcomp.bin(/Users/buildslave/compile/shadow/solver/680/unxmacxp.pro/bin/%.bin)
dmake:   2.
../../unxmacxp.pro/bin/odkcommon/macosx/bin/regcomp.bin(../../unxmacxp.pro/bin/odkcommon/macosx/bin/%)
-->
/Users/buildslave/compile/shadow/solver/680/unxmacxp.pro/bin/regcomp.bin(/Users/buildslave/compile/shadow/solver/680/unxmacxp.pro/bin/%)
dmake:  Error: -- resolve ambiguity before proceeding.
Comment 1 jsc 2007-08-06 08:13:42 UTC
jsc -> vq: if it is possible for you, can you simply test the following change
and if it works it would be nice if you can apply the change on your cws.

change the rule:

$(DESTDIRBIN)$/%$(EXEPOSTFIX) : $(BINOUT)$/%$(EXEPOSTFIX)
	@@-rm -f $@
	$(GNUCOPY) $(BINOUT)$/$(@:f) $@

to

$(DESTDIRBIN)$/%.exe : $(BINOUT)$/%.exe
	@@-rm -f $@
	$(GNUCOPY) $(BINOUT)$/$(@:f) $@

The change of the rule is ok and uncritical. The macro EXEPOSTFIX still works
and is used to collect the necessary files for the different platforms. 

Comment 2 jsc 2007-08-09 16:32:47 UTC
jsc -> vq: ping, can you test it?
Comment 3 quetschke 2007-08-09 17:35:00 UTC
Yes, I'll test and fix it. Sorry for not reacting faster, but it will be some
time until dmake 4.11 hits the master and this is just a warning ;)

Maybe I should delegate this to ause ...
Comment 4 Rob Weir 2013-07-30 02:41:09 UTC
Reset assignee on issues not touched by assignee in more than 1000 days.