Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2003-11-09 20:01:02


"John Maddock" <john_at_[hidden]> writes:

> For some reason when rebuilding the regex lib I get pages and pages of
> linker warning about duplicate symbols (because the library already exists
> so the symbols are getting replaced), is there any reason not to just
> replace:
>
> if exist "$(<)" set _$(<:B)_="$(<)"
>
> with
>
> if exist "$(<)" DEL "$(<)"
>
> which just deletes the old library so it always gets a clean rebuild.

This is a holdover from stock Jam. I think the ability to
incrementally update the components of a static library was viewed as
a feature. Jam does the same thing on Unix, which generally supports
that ability. I have no strong opinion on whether it's a good thing
or not. If a file is deleted from the build it can result in
too-large libraries which contain old objects, or even (I think) link
errors due to duplicate definitions.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com
 

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