Attempt to unbreak Windows configuration.
Although libc++ doesn't yet support Windows we still have Windows builders to track our progress. Currently the clang-cl configuration seems broken because it doesn't support -std=c++11 and instead requires /std:c++11. This patch attempts to fix this. llvm-svn: 343431
This commit is contained in:
parent
47d0a37704
commit
11edd935c8
|
@ -53,6 +53,7 @@ MACRO_ENSURE_OUT_OF_SOURCE_BUILD(
|
|||
|
||||
if (MSVC)
|
||||
set(LIBCXX_TARGETING_MSVC ON)
|
||||
message(STATUS "Configuring for MSVC")
|
||||
else()
|
||||
set(LIBCXX_TARGETING_MSVC OFF)
|
||||
endif()
|
||||
|
@ -504,8 +505,10 @@ if (LIBCXX_HAS_MUSL_LIBC)
|
|||
set(LIBCXX_STANDARD_VER c++14 CACHE INTERNAL "internal option to change build dialect")
|
||||
endif()
|
||||
add_compile_flags_if_supported(-std=${LIBCXX_STANDARD_VER})
|
||||
add_compile_flags_if_supported("/std:${LIBCXX_STANDARD_VER}")
|
||||
mangle_name("LIBCXX_SUPPORTS_STD_EQ_${LIBCXX_STANDARD_VER}_FLAG" SUPPORTS_DIALECT_NAME)
|
||||
if(NOT ${SUPPORTS_DIALECT_NAME})
|
||||
mangle_name("LIBCXX_SUPPORTS_STD_COLON_${LIBCXX_STANDARD_VER}_FLAG" SUPPORTS_DIALECT_NAME_MSVC)
|
||||
if(NOT ${SUPPORTS_DIALECT_NAME} AND NOT ${SUPPORTS_DIALECT_NAME_MSVC})
|
||||
if(NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC" AND NOT "${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC")
|
||||
message(FATAL_ERROR "C++11 or greater is required but the compiler does not support ${LIBCXX_STANDARD_VER}")
|
||||
endif()
|
||||
|
|
|
@ -16,6 +16,7 @@ macro(mangle_name str output)
|
|||
string(REGEX REPLACE "^-+" "" strippedStr "${strippedStr}")
|
||||
string(REGEX REPLACE "-+$" "" strippedStr "${strippedStr}")
|
||||
string(REPLACE "-" "_" strippedStr "${strippedStr}")
|
||||
string(REPLACE ":" "_COLON_" strippedStr "${strippedStr}")
|
||||
string(REPLACE "=" "_EQ_" strippedStr "${strippedStr}")
|
||||
string(REPLACE "+" "X" strippedStr "${strippedStr}")
|
||||
string(TOUPPER "${strippedStr}" ${output})
|
||||
|
|
Loading…
Reference in New Issue