
Vicente J. Botet Escriba <vicente.botet <at> wanadoo.fr> writes:
I use to do the following without any issue [ run ../example/a_test.cpp ]
I already do something like this (in my case [ glob test_datasets/*.cpp ], but if target name is thew same as directory name it will fail to build on linux.
2. How do I tell that I want to pass compilation to gcc in toolset gcc-4.7 only? I've tried <toolset>gcc-4.7:<cxxflags>-std=c++11 and <toolset>gcc-4.7.2:<cxxflags>-std=c++11 and either one does not work.
<toolset>gcc:<cxxflags>-std=c++11 does work, but I want to pass different options for different versions of gcc. Wow, I'm really surprised you have troubles with this. You need to define your toolsets in the user_config.jam file. I have for example
using gcc : 4.7.1 : /usr/gcc-4.7.1/bin/g++-4.7 ; using gcc : 4.7.1x : /usr/gcc-4.7.1/bin/g++-4.7 : <cxxflags>-std="c++11" ;
Someone has been requesting the addition of a 'std' feature that gives the standard, but I don't think this has been implemented or even retained.
Why do I need to introduce new toolsets? toolset gcc, gcc-4.7, gcc-4.6 already works fine. Moreover the main point is to make it work on regression tester box, not mine. I need to eliminate failures in regression table. I want to pass std option (different one) to compilers which support it and ignore test on compilers which do not have it. I can probably get the same result by ifdefing the code, but I'd rather have it marked unsupported in regression table instead of fake pass. Gennadiy