Boost logo

Boost-Build :

Subject: Re: [Boost-build] [boost-build] question about names of sources passed to generator rule
From: Gaydov Victor (victor.gaydov_at_[hidden])
Date: 2009-07-24 08:26:42


Vladimir Prus wrote:
> On Friday 24 July 2009 Gaydov Victor wrote:
>
>
>> sorry for strange subj.
>> in one subproject i have:
>>
>> using doxygen ;
>> doxygen index.html
>> : [ path.glob-tree $(CORE)/Src : *.hpp ]
>> : <location>$(CORE)/Doc/Html/Dev/Ref
>> <doxygen:param>"INCLUDE_PATH=$(CORE)/Src"
>> <doxygen:param>"WARN_IF_UNDOCUMENTED=NO"
>> ;
>>
>>
>> in another subproject (in $(CORE)/Src) i have:
>>
>> ...........................................................
>>
>> for local i in [ glob Component/Interface/*.hpp ]
>> {
>> xml Proxy/$(i:D=:S=).xml : $(i) : <xml>proxy ;
>> hpp Proxy/$(i:D=:S=).hpp : Proxy/$(i:D=:S=).xml : <xml>proxy ;
>>
>> cpp Ccall/$(i:D=:S=).cpp : Proxy/$(i:D=:S=).xml : <xml>proxy ;
>> h Ccall/$(i:D=:S=).h : Proxy/$(i:D=:S=).xml : <xml>proxy ;
>>
>> REQUIRE += <implicit-dependency>Proxy/$(i:D=:S=).hpp ;
>> CCALL += <source>Ccall/$(i:D=:S=).cpp ;
>> }
>>
>> REQUIRE += <implicit-dependency>Component/List.hpp ;
>> hpp Component/List.hpp
>> : [ glob Component/Interface/*.hpp ]
>> : <xml>list
>> ;
>> ...........................................................
>>
>> index.html in first subproject depends on headers from second, including
>> Component/Interface/*.hpp
>> when building these subproject separately everything is ok
>>
>> but when building whole project, HPP -> DOXYFILE generator gets wrong
>> paths for Component/Interface/*.hpp:
>> it should get absolute path but it get for example
>> "Component/Interface/Sched.hpp" (not rooted)
>> so INPUT line in a doxyfile contains wrong files
>>
>
> Actually, looking at your example I don't understand why Component/Interface/Sched.hpp
> will be passed to doxygen at all. You have one 'doxynen' metataget, and that one
> does not depend on Component/Interface/* in any way.
>
> Can you provide a *minimal* example that reproduces this problem, as an archive
> file, so that I can try directly?
>
> - Volodya
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>

>index.html : [ path.glob-tree $(CORE)/Src : *.hpp ]
$(CORE)/Src contains Component/Interface/Sched.hpp so index.html depends on it

okay, i've attached an example
the problem appears when one sub-project use files from another (so it should be at least 3 project-roots)
maybe it is incorrect ?

run bjam -an and you'll see in doxygen generator output:
INPUT = "inc/1.hpp"

instead of
INPUT = "/path/to/inc/1.hpp"

ps. as i understand there are no problems with doxygen, wrong path is passed to its generator




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