Boost logo

Boost-Build :

Subject: Re: [Boost-build] what exactly does determine-target-name ?
From: Fabien CHÊNE (fabien.chene_at_[hidden])
Date: 2010-02-22 09:04:31


Hello Vladimir,

Thanks for your reply.

2010/2/21 Vladimir Prus <ghost_at_[hidden]>:
[...]
>> I don't understand why, depending on the fact that the path is
>> relative or not, the target name should be prefixed by the directory.
>> 2.0-m11 only made: name = $(name:D=)
>
> Fabien,
>
> the point of this code is  so that if you have:
>
>        exe a : a.cpp helpers/a.cpp ;
>
> you get object files generated to a different directory. Therefore, if
> we notice that if source target name has a directory part ('helpers' in my example),
> we prepend that directory to destination target name (so you get:
> <buildir>/helpers/a.o).

OK.

> Could you show the definition of target that creates GeneralConfigLDE.genSK.o ?

reduced testcase below:

import omniidl ;
lib mylib
:
GeneralConfigLDE.gen.idl
:
<idl-compiler>omniidl
<idl-compiler-command>$(OMNIIDL_COMMAND)
<omniidl-use-spn-wrapper>yes
<idl-hdrs>.
<idl-typecode-any>nosplit
<idl-header-location>../h
<idl-src-location>.
<codeworker-command>$(CODEWORKER_COMMAND)
<codeworker-grammar>generateTranscodeFromIdl.cws
<codeworker-transcode-grammar>generateCommonTrans.cws
<codeworker-directives>$(IDLTOP)/fixDirectives.txt
<codeworker-path>.
<codeworker-include>$(TOP)/mkTools/transcodeGeneratorScripts
;

omniidl.jam is attached.
Any hints to improve this generator are very welcome :-)

> Could you add
>
>        ECHO "XXX" $(fullname) :
>
> to the top of the above function and show what values are printed in both 'build from root'
> and 'build from subdirectory' cases?

build from root:
XXX /continuus/fc01260/fc01260EspnV2.1Patch/e_spnDefinition/e_spnIdlCorba/GeneralConfigLDE.gen.idl
XXX e_spnav/LDE/generated/src/GeneralConfigLDE.genSK.cxx
XXX e_spnav/LDE/generated/src/GeneralConfigLDE.gen.cxx

build from subdirectory:
XXX /continuus/fc01260/fc01260EspnV2.1Patch/e_spnDefinition/e_spnIdlCorba/GeneralConfigLDE.gen.idl
XXX ../../e_spnav/LDE/generated/src/GeneralConfigLDE.genSK.cxx
XXX ../../e_spnav/LDE/generated/src/GeneralConfigLDE.gen.cxx

-- 
Fab



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