diff options
| author | Eric Fiselier <eric@efcs.ca> | 2015-10-22 20:54:27 +0000 |
|---|---|---|
| committer | Eric Fiselier <eric@efcs.ca> | 2015-10-22 20:54:27 +0000 |
| commit | bb90685aefcc1fae7153c77d4f73f546e91c9e98 (patch) | |
| tree | a05916419db5e398d6c66718e9c8c48b39f31b6d | |
| parent | 571367e0cda5bf56203b6ea8a68425a60287d079 (diff) | |
| download | bcm5719-llvm-bb90685aefcc1fae7153c77d4f73f546e91c9e98.tar.gz bcm5719-llvm-bb90685aefcc1fae7153c77d4f73f546e91c9e98.zip | |
Only disable linker script when LIBCXX_CXX_ABI_LIBNAME is none
llvm-svn: 251063
| -rw-r--r-- | libcxx/CMakeLists.txt | 17 | ||||
| -rw-r--r-- | libcxx/cmake/Modules/HandleLibCXXABI.cmake | 13 |
2 files changed, 15 insertions, 15 deletions
diff --git a/libcxx/CMakeLists.txt b/libcxx/CMakeLists.txt index 0bbe5d46bf6..6cc36e0161b 100644 --- a/libcxx/CMakeLists.txt +++ b/libcxx/CMakeLists.txt @@ -67,6 +67,20 @@ set(LIBCXX_CXX_ABI "${LIBCXX_CXX_ABI}" CACHE STRING set(CXXABIS none libcxxabi libcxxrt libstdc++ libsupc++) set_property(CACHE LIBCXX_CXX_ABI PROPERTY STRINGS ;${CXXABIS}) +# Setup the default options if LIBCXX_CXX_ABI is not specified. +if (NOT LIBCXX_CXX_ABI) + if (NOT DEFINED LIBCXX_BUILT_STANDALONE AND + IS_DIRECTORY "${CMAKE_SOURCE_DIR}/projects/libcxxabi") + set(LIBCXX_CXX_ABI_LIBNAME "libcxxabi") + set(LIBCXX_CXX_ABI_INCLUDE_PATHS "${CMAKE_SOURCE_DIR}/projects/libcxxabi/include") + set(LIBCXX_CXX_ABI_INTREE 1) + else () + set(LIBCXX_CXX_ABI_LIBNAME "none") + endif () +else () + set(LIBCXX_CXX_ABI_LIBNAME "${LIBCXX_CXX_ABI}") +endif () + # Use a static copy of the ABI library when linking libc++. This option # cannot be used with LIBCXX_ENABLE_ABI_LINKER_SCRIPT. option(LIBCXX_ENABLE_STATIC_ABI_LIBRARY "Statically link the ABI library" OFF) @@ -78,8 +92,7 @@ option(LIBCXX_ENABLE_STATIC_ABI_LIBRARY "Statically link the ABI library" OFF) # or is specified to be "none". set(ENABLE_LINKER_SCRIPT_DEFAULT_VALUE OFF) if (LLVM_HAVE_LINK_VERSION_SCRIPT AND NOT LIBCXX_ENABLE_STATIC_ABI_LIBRARY - AND LIBCXX_CXX_ABI - AND NOT LIBCXX_CXX_ABI STREQUAL "none" + AND NOT LIBCXX_CXX_ABI_LIBNAME STREQUAL "none" AND PYTHONINTERP_FOUND) set(ENABLE_LINKER_SCRIPT_DEFAULT_VALUE ON) endif() diff --git a/libcxx/cmake/Modules/HandleLibCXXABI.cmake b/libcxx/cmake/Modules/HandleLibCXXABI.cmake index 4587498dcb9..d9c652d87ba 100644 --- a/libcxx/cmake/Modules/HandleLibCXXABI.cmake +++ b/libcxx/cmake/Modules/HandleLibCXXABI.cmake @@ -61,19 +61,6 @@ macro(setup_abi_lib abidefines abilib abifiles abidirs) endmacro() -# Setup the default options if LIBCXX_CXX_ABI is not specified. -if (NOT LIBCXX_CXX_ABI) - if (NOT DEFINED LIBCXX_BUILT_STANDALONE AND - IS_DIRECTORY "${CMAKE_SOURCE_DIR}/projects/libcxxabi") - set(LIBCXX_CXX_ABI_LIBNAME "libcxxabi") - set(LIBCXX_CXX_ABI_INCLUDE_PATHS "${CMAKE_SOURCE_DIR}/projects/libcxxabi/include") - set(LIBCXX_CXX_ABI_INTREE 1) - else () - set(LIBCXX_CXX_ABI_LIBNAME "none") - endif () -else () - set(LIBCXX_CXX_ABI_LIBNAME "${LIBCXX_CXX_ABI}") -endif () # Configure based on the selected ABI library. if ("${LIBCXX_CXX_ABI_LIBNAME}" STREQUAL "libstdc++" OR |

