Boost logo

Boost-Build :

From: Reece Dunn (msclrhd_at_[hidden])
Date: 2006-06-28 17:38:51


Sohail Somani wrote:
> Thank you, I had taken a look at bison.jam but did not notice the "CPP
> HPP" part of it until 30 seconds ago. So basically my tool will need to
> have CPP HPP TXT.

Yup.

> Something which I had forgotten to mention was that the output file
> names are dependent on the contents of the file, so I need to actually
> scan the file for certain patterns. I could not find an example of this.

Hmm.

> Anyway the input file [AB.t] will contain:
>
> Type A : BaseA;
> Type B : BaseB;
>
> And I'll generate A.(hpp|txt|cpp) and similarly for B. I want bjam to
> know about these so that --clean will remove them and so that I can do:
>
> lib a : AB.t ;
>
> In a Jamfile.

You will need to write a custom generator for the T file. If you look at
what the C generators are doing, you'll find out how they are scanning
for H/HPP dependencies and adding them to BBv2.

Essentially, all you need to do is take your scanned list of CPP files and
add them to the list of sources. You may need to do something with them
to get BBv2 to be able to process them.

IIUC, you also want to process the T file to generate the files, so the
A.[h|c]pp files will be in msvc-7.1/release, etc. For this, you can also
look at the verbatum generator in the BBv2 documentation.

That's all the information I can give you. Vladimir Prus would be able to
give you more info if needed.

The only other thing I can suggest is to look through the Boost Jamfile.v2
files for the Boost libraries as some of these are using some neat tricks.

HTH,
- Reece
_________________________________________________________________
Try Live.com - your fast, personalized homepage with all the things you care about in one place.
http://www.live.com/getstarted


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