Boost logo

Boost-Build :

From: Phillip Seaver (phil_at_[hidden])
Date: 2006-09-13 09:34:28


Stephan Diederich wrote:
> Hi there,
>
> recently I thought about switching from qmake to bjam for our builds,
> and I encountered the following problem:
> Given 2 libraries A and B.
> B depends on A, and additionally a file in B #include's a generated
> header from an ui-file in A.
> Now there are 2 problems. A *must* be build before B (as the generated
> header doesn't exist otherwise), and additionally the temporary
> include (where the generated header goes) must be added for library B.
>
> Er, did anyone understand me? ;)
>
> Here is what I have atm:
>
> toplevel project-root.jam (make the targets visible):
> use-project /qtlibs/A : qtlibs/A ;
> use-project /qtlibs/B : qtlibs/B ;
>
> qtlibs/A Jamfile.v2:
> lib A
> : [ glob *.ui ] [ glob *.cpp ] [ glob *.h ]
> ;
>
> qtlibs/B Jamfile.v2:
> lib B
> : [ glob *.ui ] [ glob *.cpp ] [ glob *.h ]
> : <use>/qtlibs/A
> : <library>/qtlibs/A
> ;
>
> Thanks,
> Stephan
> _

I've never used the QT stuff, but it sounds like you just need:

    qtlibs/B Jamfile.v2:
    lib B
        : [ glob *.ui ] [ glob *.cpp ] [ glob *.h ] /qtlibs/A
    ;

You might have to add <implicit-dependency>file where "file" is the
generated header from A, but I *think* it should work without that,
since I assume the header is one of the outputs of lib A.

Phillip


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