Boost logo

Boost-Build :

Subject: Re: [Boost-build] Need help: generate rule error
From: Алексей Бадяев (leemouse_at_[hidden])
Date: 2009-04-30 04:10:00


Steven Watanabe пишет:
> Try using $(__name__).def-init inside generate-def
Hi, Steven!
I rewrote my Jamfile:

rule generate-def ( project name : property-set : sources * )
{
    local result ;
    local a = [ new non-scanning-action $(sources[1])
              : $(__init__).def-init : $(property-set)
              ] ;
    result += [ new file-target $(name) $(name) : : $(project) : $(a) ] ;
    for local s in $(sources)
    {
        a = [ new non-scanning-action $(s)
            : $(__init__).def-proc : $(property-set)
            ] ;
        result += [ new file-target $(name) $(name)
                  : : $(project) : $(a) ] ;
    }
    return $(result) ;
}

...and Boost Build report me about error in my Jamfile:

c:/devtools/libs/boost_1_38_0/tools/build/v2/kernel\class.jam:88: in new
*** argument error
* rule object(non-scanning-action)@1337.__init__ ( sources * :
action-name + : property-set ? )
* called with: ( object(file-target)@1003 : : object(property-set)@783
: : : : : : )
* missing argument action-name
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\virtual-target.jam:864:see
definition of rule '__init__' being called
jamfile.jam:303: in Jamfile</C:/projects/ms_sqlite/libs/dbms>.generate-def
c:/devtools/libs/boost_1_38_0/tools/build/v2/kernel\modules.jam:103: in
modules.call-in
c:/devtools/libs/boost_1_38_0/tools/build/v2/util\indirect.jam:90: in
indirect.call
c:/devtools/libs/boost_1_38_0/tools/build/v2/tools\generate.jam:58: in
construct
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:1244: in
object(generated-target-class)@654.generate
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:767: in
generate-really
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:739: in
object(main-target)@749.generate
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:883: in
targets.generate-from-reference
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:1168: in
generate-dependencies
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:1216: in
object(typed-target)@660.generate
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:767: in
generate-really
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:739: in
object(main-target)@751.generate
c:/devtools/libs/boost_1_38_0/tools/build/v2/build\targets.jam:257: in
object(project-target)@541.generate
c:/devtools/libs/boost_1_38_0/tools/build/v2\build-system.jam:682: in load
c:\devtools\libs\boost_1_38_0\tools\build\v2/kernel\modules.jam:283: in
import
c:\devtools\libs\boost_1_38_0\tools\build\v2\kernel\bootstrap.jam:138:
in boost-build
c:\devtools\libs\boost_1_38_0\boost-build.jam:16: in module scope

...I need more help! :-)

-- 
С уважением, Алексей Бадяев
г. Кемерово пр-т Ленина 52 тел. +7 904 375 7805

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