diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2017-06-11 23:59:26 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2017-06-11 23:59:26 +0000 |
commit | 0b727c2521423f19b1a00003fba2f9d8030d1cf8 (patch) | |
tree | b7152aa4697014643bbcfee79605f2236cfe683b | |
parent | c03d53cadbd4f7629bc5ad83035018252b8b9b7b (diff) |
build: use cmake to pass -std=c++11
Rather than manually checking for support for the spelling of the C++
standard, indicate to CMake that we require that the compiler support
C++11 and that we compile without the GNU extensions. This simplifies
the flags handling in libc++abi itself by relying on CMake to translate
the flag and add it as appropriate.
git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@305175 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | cmake/config-ix.cmake | 5 | ||||
-rw-r--r-- | src/CMakeLists.txt | 18 |
2 files changed, 18 insertions, 5 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index 319cdde..379b554 100644 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -81,11 +81,6 @@ check_cxx_compiler_flag(/EHsc LIBCXXABI_HAS_EHSC_FLAG) check_cxx_compiler_flag(/EHs- LIBCXXABI_HAS_NO_EHS_FLAG) check_cxx_compiler_flag(/EHa- LIBCXXABI_HAS_NO_EHA_FLAG) check_cxx_compiler_flag(/GR- LIBCXXABI_HAS_NO_GR_FLAG) -check_cxx_compiler_flag(-std=c++11 LIBCXXABI_HAS_STD_CXX11) - -if(LIBCXXABI_HAS_STD_CXX11) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -endif() # Check libraries check_library_exists(dl dladdr "" LIBCXXABI_HAS_DL_LIB) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d4a68fc..ff47ed3 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -111,6 +111,12 @@ endif() add_library(cxxabi_objects OBJECT ${LIBCXXABI_SOURCES} ${LIBCXXABI_HEADERS}) set_target_properties(cxxabi_objects PROPERTIES + CXX_EXTENSIONS + OFF + CXX_STANDARD + 11 + CXX_STANDARD_REQUIRED + ON COMPILE_FLAGS "${LIBCXXABI_COMPILE_FLAGS}" POSITION_INDEPENDENT_CODE @@ -124,6 +130,12 @@ if (LIBCXXABI_ENABLE_SHARED) target_link_libraries(cxxabi_shared ${LIBCXXABI_LIBRARIES}) set_target_properties(cxxabi_shared PROPERTIES + CXX_EXTENSIONS + OFF + CXX_STANDARD + 11 + CXX_STANDARD_REQUIRED + ON LINK_FLAGS "${LIBCXXABI_LINK_FLAGS} ${LIBCXXABI_SHARED_LINK_FLAGS}" OUTPUT_NAME @@ -143,6 +155,12 @@ if (LIBCXXABI_ENABLE_STATIC) target_link_libraries(cxxabi_static ${LIBCXXABI_LIBRARIES}) set_target_properties(cxxabi_static PROPERTIES + CXX_EXTENSIONS + OFF + CXX_STANDARD + 11 + CXX_STANDARD_REQUIRED + ON LINK_FLAGS "${LIBCXXABI_LINK_FLAGS}" OUTPUT_NAME |