|
Boost-Build : |
From: Michael Poole (mdpoole_at_[hidden])
Date: 2006-10-11 10:52:12
Vladimir Prus writes:
> On Wednesday 11 October 2006 01:23, K. Noel Belcourt wrote:
>
> Hi Noel,
>
>> I'm looking for a way to use bjam to distribute our source code. I
>> figure since bjam knows how to build our binaries, it can't be too
>> hard to get it to tar up the source files a target depends on or to
>> replicate the source files to some new directory. I can't use the
>> install or path.install rules since the source tree for each library
>> is different and I want to retain each library's source tree
>> directory structure.
>>
>> Is there a way to output the full, unique set of source
>
> Yes. Take a look at the 'gettext.jam:update-translations-generator.run'. It
> collects all source files.
>
>> and header
>> files necessary to build a target?
>
> No, since header scanning is done only when building targets.
>
>> If there was, I could take the
>> list of files and pipe it to tar.
>>
>> Any thoughts on how to go about this?
>
> Just to check -- is there a reason while wholesale 'tar' of a directory is not
> OK? If there is, I'm afraid you'd need to tar "complete" set of headers
> anyway, and use the logic similar to gettext generator to get the list of
> sources.
There are several reasons a wholesale tar might not be appropriate.
Two that occur to me:
- the packager builds the project in (or under) the source tree and
it is costly to re-build everything -- the other way to skip object
files, by providing an exclusion list to tar, is fairly error-prone;
or
- some source or header files are automatically generated, but only
when checking the project out of revision control -- from my personal
experience, things like "Built from revision X of branch Y".
Michael Poole
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