Boost logo

Boost-Build :

From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-02-23 02:32:49


Historically when we specify <cflags> those get added to compiles of C++
files and not just C files. I have a need to compile C99 code using GCC
so I add "<cflags>-std=c99" someplace globally (since I don't care about
compiling < C99). Problem is that now I get a warning from GCC for all
C++ compile files:

cc1plus: warning: command line option "-std=c99" is valid for C/ObjC but
not for C++

So I went looking at the BBv2 code and trying to figure out how to
handle the need to have language specific flags. To my surprise, there
doesn't seem to be a way, short of adding more features and hence
changing all the toolsets. I tried the seemingly obvious obvious:

   <toolset>gcc,<target-type>C:<cflags>-std=c99

Which had zero effect, in as far as it added the option regardless.

Is there some easy/reasonable way to have C only flags?

If not, how can we add language specific flags? (Or should I go ahead
and figure out how to make my attempt above work?)

PS. Ideally I would rather be able to do
"<toolset>gcc,<type>c:<flags>-std=c99".

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

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