Use -std=gnu++11 on cygwin and mingw.

Without this common features like off_t and strdup are missing.
This should bring back those bots.

Configure bits by Meador Inge.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203701 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2014-03-12 20:01:15 +00:00
parent 060c0eb1d2
commit 3f06e3f55f
2 changed files with 14 additions and 2 deletions

View File

@ -322,7 +322,13 @@ endif
ifeq ($(ENABLE_CXX1Y),1)
CXX.Flags += -std=c++1y
else
CXX.Flags += -std=c++11
ifeq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW))
# MinGW and Cygwin are a bit stricter and lack things like
# 'strdup', 'stricmp', etc in c++11 mode.
CXX.Flags += -std=gnu++11
else
CXX.Flags += -std=c++11
endif
endif
ifeq ($(ENABLE_WERROR),1)

View File

@ -293,7 +293,13 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE )
else()
check_cxx_compiler_flag("-std=c++11" CXX_SUPPORTS_CXX11)
if (CXX_SUPPORTS_CXX11)
append("-std=c++11" CMAKE_CXX_FLAGS)
if (CYGWIN OR MINGW)
# MinGW and Cygwin are a bit stricter and lack things like
# 'strdup', 'stricmp', etc in c++11 mode.
append("-std=gnu++11" CMAKE_CXX_FLAGS)
else()
append("-std=c++11" CMAKE_CXX_FLAGS)
endif()
else()
message(FATAL_ERROR "LLVM requires C++11 support but the '-std=c++11' flag isn't supported.")
endif()