|
Boost-Build : |
Subject: Re: [Boost-build] Bjam Update error in actualize?
From: Kcarr (kcarr_at_[hidden])
Date: 2014-05-23 13:51:16
All I have been able to get a little further. It seems the problem lies with
calling the $(vt).actualize. What gets. So in this loop:
for local force_gen_file in $(force_gen_files)
{
local vt = [ virtual-target.register $(force_gen_file) ] ;
DEPENDS all : [ $(vt).actualize ] ;
virtual_targets += $(vt) ;
}
A symlink file gets passed in which causes the error on the .actualize.
Here is how i generate the symlink:
local header_symlink =
[ new file-target
$(base_name)
: H
: $(project)
: [ new action
$(generated_h)
: symlink.ln
: $(property-set) ]
: $(project_inc_dir) ] ;
The header_symlink is added to the force_gen_files list that is passed in to
the for loop. generated_h is created by this code before the previous code:
local generated_h =
[ new file-target $(base_name)
: H
: $(project)
: $(generate_h_action)
: $(project_src_dir) ] ;
When it hits the symlink it crashes with the below.
/usr/share/boost-build/tools/symlink.jam:115: in symlink.ln
*** argument error
* rule path.make ( native )
* called with: ( )
* missing argument native
/usr/share/boost-build/util/path.jam:508:see definition of rule 'path.make'
being called
/usr/share/boost-build/kernel/modules.jam:107: in modules.call-in
/usr/share/boost-build/util/indirect.jam:98: in indirect.call
As I mentioned this worked before so I dont know if there is a bug in the
symlink generation code now? The only way I know how to make it actually
create the symlink is to call actualize on it. Is there another way?
-- View this message in context: http://boost.2283326.n4.nabble.com/Bjam-Update-error-in-actualize-tp4662662p4662808.html Sent from the Boost - Build mailing list archive at Nabble.com.
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