Boost logo

Boost :

Subject: Re: [boost] [predef] Using predef-check on 'develop' problem
From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2015-05-26 13:02:04


On Tue, May 26, 2015 at 9:48 AM, Edward Diener <eldiener_at_[hidden]>
wrote:

> On 5/25/2015 9:34 PM, Rene Rivera wrote:
>
>> On Mon, May 25, 2015 at 8:25 PM, Edward Diener <eldiener_at_[hidden]>
>> wrote:
>>
>>
>>>
>>> If you look at the predef info_as_cpp tests, such as at
>>
>>>
>>>
>>> http://www.boost.org/development/tests/develop/developer/output/NA-QNX650-SP1-ARM-boost-bin-v2-libs-predef-test-info_as_cpp-test-qcc-4-4-2_arm-debug-debug-symbols-off.html
>>> ,
>>> you will see that no compiler is being detected.
>>>
>>>
>> Ah.. I see: BOOST_COMP_GNUC = 40400002 (4,4,2) | Gnu GCC C/C++
>>
>> Maybe you meant this link: <
>>
>> http://www.boost.org/development/tests/develop/developer/output/oracle-intel-S2-stlport4-boost-bin-v2-libs-predef-test-info_as_cpp-test-sun-stlport4-release-threading-multi.html
>>
>>>
>>> ??
>>
>>
>> Yet if you look at my VMD test, called test_variadic_macro, at
>>>
>>> http://www.boost.org/development/tests/develop/developer/output/oracle-intel-S2-stlport4-boost-bin-v2-libs-vmd-test-test_variadic_macro-test-sun-stlport4-release-threading-multi.html
>>> ,
>>> you can see that I am picking up that '__SUNPRO_CC' is defined.
>>>
>>> Yet if '__SUNPRO_CC' is defined then predef should be picking that up and
>>> setting BOOST_COMP_SUNPRO to the compiler being detected.
>>>
>>>
>> Right.
>>
>> Along with that problem is that in my VMD tests, aside from the
>>
>>> test_variadic_macro test, I have the predef-check as specified in my OP
>>> above. Yet this is being triggered for the SunOS operating system tests
>>> when clearly the compiler is not BOOST_COMP_GNUC, and '-std=c++0x' is
>>> erroneously being added for the VMD tests which causes them all to fail
>>> because the tests are being run with '-compat=5 -library=stlport4'. So
>>> here
>>> again, with SunOS and Oracle ( aka Sun ) C++, predef does not appear to
>>> be
>>> working correctly.
>>>
>>
>>
>> Well, let me fix the first problem. Perhaps it's a side effect of the Sun
>> compiler not being detected.
>>
>
> I appreciate your efforts to fix this problem.
>
> As a side note on the Android tests using gcc, both predef and my own
> test_variadic_macro test are finding that gcc is being detected but the
> predef-check statement mentioned in my OP is also not adding '-std=c++0x'
> to the command line there.

FYI..

a) I just don't see how the sunpro detection is not working. Logic looks
correct. But I'll keep scratching head and looking at the code :-\

b) I can't replicate your original problem either. I have a test that has
the exact same condition and it works to add two compile options as needed.
It's the predef/check_value test, for which you can compare the clang vs.
gcc output here <https://travis-ci.org/boostorg/predef>. And I'm waiting on
the full Boost test to cycle to check other platforms.

-- 
-- 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