Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-01-30 06:14:10


David Abrahams wrote:
> Vladimir Prus <ghost_at_[hidden]> writes:
>
>
>>David Abrahams wrote:
>>
>>>Any thoughts about whether PDB files should be explicitly represented
>>>as targets in BBv2? They really are "program databases" in some
>>>sense. They get updated by every compilation and linking step.
>>
>>Are they shared by all executables? Or by targets for one executable?
>>Or for main target (both exe and lib)? Diagram from Markus, which in
>>in m2-transformations.txt shows pdb files only after final link.
>
>
> You can see what happens for yourself by doing a build with BBv1
> -sTOOLS=msvc "-sBUILD=<debug-store>database". Use "-n" if you're on
> Unix, just so you can see the commands.
>
> There are lots of ways to generate PDB info, I guess, but the one we
> implement was recommended by Jason Shirk of Microsoft.

I see that for all compiles a PDB file which corresponds to the main target.
However, I don't see PDB files used during linking. Or are the picked up
automatically?

Seems like PDB implementation can be done this way: generators for main
targets start by creating a target for PDB, and add <pdb> free properties
when constructing sources. The msvc.compile generator will notice that
property and add appropriate command line.

There's a gotcha: what if one file is compiled in two executables? Is it
possible to add debug information about that file to both pdb files without
doing the compilation twice.

- 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