Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2006-03-06 05:18:21


On Sunday 05 March 2006 19:23, Daniel Einspanjer wrote:
> In our current makefile world, each makefile has a list of headers to be
> exported. make rules copy these listed headers to LOCAL/include
> directories.
>
> I honestly don't like this system much, and I'd prefer to have explicit
> include folders created by the developer with the desired headers actually
> living in that folder in CVS.
>
> Unfortunately, I need to finish the port to BB before I can make the
> secondary argument of changing all our source tree to adopt this new
> standard.
>
> Currently, for the purposes of porting, I am just ignoring the issue by
> doing a:
> project : usage-requirements <include>. ;
>
> Which means there is no separation between externally available headers and
> internal ones.
>
> Does anyone have any advice on a way I could accommodate this need for
> explicit export lists without changing our source tree structure?

In case you have a plain structure of headers (no subdirectories), you can
have this in each subproject:

  install headers : a.h b.h c.h : <location>whatever-you-like ;

In case you have header structure with directories, you can have this:

  install headers : includes/a/b/c.h : <location>whatever-you-like
                                       <install-source-root>includes

  ;

and the header will be placed to "whatever-you-line/a/b/c.h".

HTH,
Volodya


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