Visual Studio 2017 and clang-cl

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Visual Studio 2017 and clang-cl

Boost - Build mailing list
Hi,

I'm trying to build boost 1.66.0 with Visual Studio 2017 and Clang-cl.exe.
Currently I'm stucked with some defines that are required by boost:

I used following command line:
bjam -j8 toolset=clang -sBOOST_BUILD_USER_CONFIG=build_config --layout=tagged variant=debug,release address-model=32 link=static runtime-link=static threading=multi cxxflags=/GR- cxxflags=-std=c++11 cxxflags=-fms-extensions cxxflags=-fms-compatibility cxxflags=/EHsc define=BOOST_NO_RTTI define=BOOST_NO_TYPEID %BOOST_LIBS%

My build_config has following content:

import os ;
local LLVM_WIN = [ os.environ LLVM_WIN ] ; using clang-win
    : 5.0
    : "$(LLVM_WIN)clang-cl.exe"
        : <compatibility>vc14
    ;

In the first try I get following error:
.\boost/type_index/detail/compile_time_type_info.hpp(282,9):  error: no matching function for call to 'failed_to_get_function_name'

Then I tried to use __PRETTY_FUNCTION__ for BOOST_TYPE_INDEX_FUNCTION_SIGNATURE with following result:
.\boost/type_index/detail/compile_time_type_info.hpp(81,9):  error: static_assert failed "TypeIndex library is misconfigured for your compiler. Please define BOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING to correct values. See section 'RTTI emulation limitations' of the documentation for more information."

I found the documentation for this define (http://www.boost.org/doc/libs/1_58_0/doc/html/BOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING.html) and tried to set this define to:
-DBOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING='(39, 1, true, "T = ")'

But it doesn't work. I tried multiple different versions with (escaped) quotes but no version worked.

Does anybody know how to use these defines for a Visual Studio build with clang?

Thanks a lot.

Regards
Marco
_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build