From: Reece Dunn (msclrhd_at_[hidden])
Date: 2005-09-29 03:24:13
Reece Dunn wrote:
> Vladimir Prus wrote:
>>On Tuesday 27 September 2005 12:08, Reece Dunn wrote:
>>>If msvc fails to compile a source file, the RSP file is not deleted.
>>>Therefore, if you change the Jamfile settings that alters the RSP file
>>>contents, those changes aren't picked up.
>>Well, this is a problem indeed. So far, no good solution exists.
> I have done some investigating on this. The problem appears to be in
> common.jam(536): rule response-file
> Chaning line 583: "print.output $(rsp)" to
> echo response file $(rsp) ;
> print.output "console" ; # $(rsp) ;
> response file
> so it *is* picking up the changes (-DFOO), but these aren't being passed
> on to the file. Therefore, the problem is in the util/print.jam logic.
> (Should the response file set output to overwrite the contents?)
I have done some further investigation and have found that the problem
lies in print.jam:
* if a file does not exist,
print.jam(417): actions quietly text-action
is called and the data in $(text-body) is written to the file.
* if the file exists, the data in $(text-body) is collected and valid,
but text-action isn't called :(.
The solution would be to either:
1. delete the file if it exists in response to
print.jam(347): if $(overwrite)
thus forcing the action to be called.
2. somehow telling jam to force text-action to always be called.
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk