Boost logo

Boost-Build :

From: gclbb-jamboost_at_[hidden]
Date: 2003-06-14 13:17:15


In article <20030525233313-r01010800-642daa88-0860-0108_at_12.100.89.43>,
Rene Rivera <jamboost_at_[hidden]> wrote:
>[2003-05-25] Beman Dawes wrote:
>>The Comeau compiler under Windows has an option (--a) which we need to
>>compile most Boost tests correctly. It both increases compliance and adds
>>certain warning messages.
>>
>>OTOH, --a cannot be used to compiler certain Windows SDK headers such as
>>winnt.h. There are a few Boost files which use these problem headers.
>>
>>What is the best way to setup the como-win32 toolset to default to --a, but
>>allow --a to be turned off for certain compiles?
>>
>>PS: I've been back and forth with Greg Comeau about --a, and he may someday
>>get it to accept Windows headers with warnings rather than errors, but that
>>isn't going to happen right away.
>
>Well the best way would be to have a #pragma to turn off the --a before
>including the winnt.h header. But I guess that's not going to happen either
>;-)

The problem is that usually the mode is not just one of excepting
keywords, but also one of excepting a different, and competing,
behavior.

>As for the toolset, the answer depends on the granularity you want...
>
>If you need control on a per target basis (lib/dll/exe) then it's as easy as
>adding a feature to map the flag onto. This is what I just did to the
>darwin-tools.jam, and added a <warnings>on/off feature.
>
>But if you need control on a per file basis then the naswer is complicated,
>because it's not really supported by BBv1. But a hack that will work is to
>declare a free-feature to specify files which should have warnings disabled,
>and check as each file is compiled to add, or not, the --a flag. And to make
>it easy for you.. attached is a patch to the current como-win32-tools.jam
>which does that ;-) With it you can specify <no-warn>some_file.cpp in the
>requirements section which will not get the --a flag.

This seems to be saying that some components should never
be compiled in strict mode. And by virtue of that,
some boost components cannot be used together?

-- 
Greg Comeau/ 4.3.0.1: FULL CORE LANGUAGE, INCLUDING TC1
Comeau C/C++ ONLINE ==> http://www.comeaucomputing.com/tryitout
World Class Compilers: Breathtaking C++, Amazing C99, Fabulous C90.
Comeau C/C++ with Dinkumware's Libraries... Have you tried it?
 

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