|
Boost : |
Subject: Re: [boost] preprocess operation problems
From: Peter Dimov (lists_at_[hidden])
Date: 2015-01-28 13:18:19
> This can be considered a bug in the part of Boost.Build that is
> responsible for the header links, but if it is, I don't know how or
> whether it should be fixed.
Looking at tools/build/src/tools/link.jam:228:
rule do-file-link
{
local target = [ path.native [ path.relative-to [ path.pwd ] $(<) ] ] ;
local source = [ path.native [ path.relative-to [ path.pwd ] $(>) ] ] ;
LOCATE on $(target) = . ;
DEPENDS $(.current-target) : $(target) ;
if $(.can-symlink) = true
{
link.mklink $(target) : $(source) ;
}
else if $(.can-hardlink) = true
{
DEPENDS $(target) : $(source) ;
link.hardlink $(target) : $(source) ;
}
else
{
DEPENDS $(target) : $(source) ;
common.copy $(target) : $(source) ;
}
}
the hardlink and the copy cases introduce a dependency with DEPENDS
$(target) : $(source), and the symbolic link case does not. Maybe it should
be changed to also introduce a dependency? Anyone familiar with Boost.Build
care to comment?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk