Boost logo

Boost-Build :

Subject: Re: [Boost-build] tracing weird dependecies
From: Patrick Hoffmann (p.hoffmann_at_[hidden])
Date: 2011-05-09 06:16:11


Am 09.05.2011, 10:39 Uhr, schrieb Gevorg Voskanyan <v_gevorg_at_[hidden]>:

> Patrick Hoffmann wrote:
>
>> Hi all,
>>
>> in a C++ project I got some problems with dependencies which I do not
>> understand. When I changed some header bjam rebuilds some files which do NOT
>> include this header directly or indirectly.
>>
>> The suspect is our QT-MOC-mechanism which pre-compiles some dialog/window
>> class code. Don't know if this is a known problem.
>>
>> But what I really like to know from you guys is, if there is a possibility to
>> trace the dependency of a specific file. I tried some -d option-magic but this
>> gives me over 1 GB of output which I was not able to handle yet.
>>
>> What I would like to have is either a possibility to get the concrete
>> dependencies for one specific file which leads bjam to rebuild that file or in
>> other words why - for example - file "a.cpp" depends on header "b.hpp".
>>
>> Can someone help?
>
> Not sure it will help, but what are the names of the directories the changed
> header is located in?

It's the include directory of my lib. Something like:
        
        ./mylib/include/themodule/annoying.h

where the file with the QT-dialogs are like:

        ./mylib/src/app/theapp/adialog.cpp

and adialog.cpp - like I said b4 - is not including annoying.h in any kind.

It seems like all "QT-mocable" files will be rebuild, when I change the lib in any way. Sadly also when I change a just barely used header. I have no clue where the connection comes from :( So it would be nice to have a way to trace the dependencies which bjam assumes for adialog.cpp.

-- 
Best regards, Patrick Hoffmann
Need privacy? Use my (new) PGP key:
https://thats-software.com/portal/PatrickHoffmann.asc

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