AMDG On 03/09/2018 11:42 AM, John Maddock via Boost wrote:
On 09/03/2018 16:16, Egor Pugin via Boost wrote:
Hi,
Based on recent news: Clang 6.0.0 is out with very decent support of the latest MSVC STL (15.6). Chrome is built with clang on Windows.
So, maybe it is good time to include clang+windows into list of supported configs, setup a CI worker with clang (clang-cl) on Windows? Currently many boost libs already work fine, but some of them require small tweaks like explicit BOOST_USE_WINDOWS_H etc.
A cursory check suggests the compiler is working OK and builds Boost.Config's tests, but I'm unable to get it working at all with Boost.Build, I'm trying:
using clang-win : : "C:/Program Files/LLVM/bin/clang-cl.exe" : <compatibility>vc14.1 ;
The clang-win toolset is known to be broken. I don't know if it ever worked. I believe that clang-linux (using regular clang, not clang-cl) works for most platforms other than OSX. (Yes, I know, cleaning up this mess is on my todo list.)
In my user-config.jam - note that the <compatibility> option appears to be required, and there is not default, likewise the semi-documented option <compatibility>native gets rejected as invalid.
In any case this leads to:
$ ../../../b2 config_info clang-win C:\cygwin64\home\John\user-config.jam:47: Unescaped special character in argument <cxxflags>-std:c++latest ..\..\..\libs\log\build\Jamfile.v2:45: Unescaped special character in argument <define>$(flag)=1 M:/data/boost/boost/tools/build/src/tools\msvc.jam:900: in set-setup-command *** argument error * rule virtual-target.from-file ( file : file-loc : project ) * called with: ( : /M:/data/boost/boost/libs/config/test : object(project-target)@129 ) * missing argument file <snip>
The unescaped character warnings are new to current develop Boost.Build,
They're harmless for now, but will break at some unspecified time in the future, when I switch to the new lexer.
and the rest is inscrutable to me, any ideas anyone?
In Christ, Steven Watanabe