Apache OpenOffice (AOO) Bugzilla – Issue 80367
Ambiguous inference chains for regcomp.bin
Last modified: 2013-08-07 15:34:52 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.
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.
jsc -> vq: ping, can you test it?
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 ...
Reset assignee on issues not touched by assignee in more than 1000 days.