Boost logo

Boost :

Subject: Re: [boost] [predef] Announce: Build time configurationforPredefdefs.
From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2015-01-28 11:35:55


On Wed, Jan 28, 2015 at 10:19 AM, Peter Dimov <lists_at_[hidden]> wrote:

> Rene Rivera wrote:
>
>> Actually it would be "multiple expressions can be specified as individual
>> string arguments"..
>>
>> [ predef-require "BOOST_COMP_MSVC <= 15.0.0" "BOOST_COMP_MSVC >= 12.0.0" ]
>>
>
> Right, I misinterpreted your code.
>
> Having said that.. I'm willing to add more complex expression support if
>> there's enough demand :-)
>>
>
> To replace the explicit failures markup, we need a way to say "do not run
> this test on gcc-4.4, gcc-4.5, gcc-4.6, msvc-8.0, msvc-10.0", and it seems
> that we're either going to need logical operations for that, or a rule that
> is the opposite of predef-require, something like
>
> [ predef-disable-if "BOOST_COMP_GCC == 4.4" "BOOST_COMP_GCC == 4.5"
> "BOOST_COMP_GCC == 4.6" "BOOST_COMP_MSVC == x.0" "BOOST_COMP_MSVC == y.0" ]
>
> where x is whatever corresponds to msvc-8.0 and y - to msvc-10.0 :-)

There's a check rule that you can use to customize the results:

rule check ( expressions + : language ? : true-properties * :
false-properties * )

But to get what you want you just need to convert the logical expression to:

[ predef-resuire "BOOST_COMP_GCC != 4.4" "BOOST_COMP_GCC != 4.5"
"BOOST_COMP_GCC != 4.6" "BOOST_COMP_MSVC != x.0" "BOOST_COMP_MSVC != y.0" ]

HTH

-- 
-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams - http://robot-dreams.net
-- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk