Subject: Re: [Boost-build] Cache-file path handling bug on Windows
From: Jürgen Hunold (jhunold_at_[hidden])
Date: 2013-05-21 10:25:33
On Thursday, 16. May 2013 09:18:13 Steven Watanabe wrote:
> On 05/16/2013 08:23 AM, Jurko GospodnetiÄ wrote:
> > Problem seems to be caused by the jam target's path being constructed
> > with an additional leading slash separator, i.e. using internal Boost
> > Build instead of native OS path representation.
> > The problem can be patched by tweaking the save() rule in
> > config-cache.jam a bit. Instead of:
> > local target = <new-cache-file>$(.cache-file) ;
> > do:
> > local cache-file-native = [ path.native $(.cache-file) ] ;
> > local target = <new-cache-file>$(cache-file-native) ;
> This looks correct. Please commit it.
I have applied Jurko's patch in
including using path.native for loading, too. Works here.
> > However, from my quick-glance through the code, I am not really sure
> > this is a clean solution. I do not understand why the <new-cache-file>
> > prefix is used nor did I check to see if other Boost Jam targets in
> > Boost Build are constructed using their full path information or not.
> The grist is to distinguish between different
> targets with the same name. The target used
> to read the cache needs to be different from
> the target used to write the cache.
> > Could someone more familiar with this code (Steven?) take a look? Or
> > should I go and dig deeper?
> > Also, some test for this project-cache.py functionality should be
> > added to the Boost Build test suite. I can add it if someone can explain
> > to be what it is supposed to do.
> It affects any tests using configure. The
> sole effect is to avoid rerunning configuration
Tests are still needed. Sorry, running low on time at the moment.
-- * Dipl.-Math. JÃ¼rgen Hunold ! * voice: ++49 4257 300 ! FÃ¤hrstraÃe 1 * fax : ++49 4257 300 ! 31609 Balge/Sebbenhausen * jhunold_at_gmx.eu ! Germany
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