diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-03-12 20:01:15 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-03-12 20:01:15 +0000 |
commit | 3f06e3f55fb2f2a3ec03903a53633bf270575599 (patch) | |
tree | b1a2c543fa44981495807c6e1b8534a3ab6ed0df | |
parent | 060c0eb1d2e892e0a08e66c971c36568563cb202 (diff) | |
download | llvm-3f06e3f55fb2f2a3ec03903a53633bf270575599.tar.gz llvm-3f06e3f55fb2f2a3ec03903a53633bf270575599.tar.bz2 llvm-3f06e3f55fb2f2a3ec03903a53633bf270575599.tar.xz |
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
-rw-r--r-- | Makefile.rules | 8 | ||||
-rw-r--r-- | cmake/modules/HandleLLVMOptions.cmake | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/Makefile.rules b/Makefile.rules index 01489a570f..cb4abafd28 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -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) diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake index ccf5f90f17..319adf3f32 100644 --- a/cmake/modules/HandleLLVMOptions.cmake +++ b/cmake/modules/HandleLLVMOptions.cmake @@ -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() |