|
@@ -224,6 +224,7 @@ option(LIBCXXABI_ENABLE_STATIC_UNWINDER "Statically link the LLVM unwinder." OFF
|
|
|
|
|
|
# Target options --------------------------------------------------------------
|
|
# Target options --------------------------------------------------------------
|
|
option(LIBCXX_BUILD_32_BITS "Build 32 bit libc++." ${LLVM_BUILD_32_BITS})
|
|
option(LIBCXX_BUILD_32_BITS "Build 32 bit libc++." ${LLVM_BUILD_32_BITS})
|
|
|
|
+set(LIBCXX_TARGET_TRIPLE "" CACHE STRING "Use alternate target triple.")
|
|
set(LIBCXX_SYSROOT "" CACHE STRING "Use alternate sysroot.")
|
|
set(LIBCXX_SYSROOT "" CACHE STRING "Use alternate sysroot.")
|
|
set(LIBCXX_GCC_TOOLCHAIN "" CACHE STRING "Use alternate GCC toolchain.")
|
|
set(LIBCXX_GCC_TOOLCHAIN "" CACHE STRING "Use alternate GCC toolchain.")
|
|
|
|
|
|
@@ -460,10 +461,24 @@ include(HandleLibcxxFlags)
|
|
# 'config-ix' use them during feature checks. It also adds them to both
|
|
# 'config-ix' use them during feature checks. It also adds them to both
|
|
# 'LIBCXX_COMPILE_FLAGS' and 'LIBCXX_LINK_FLAGS'
|
|
# 'LIBCXX_COMPILE_FLAGS' and 'LIBCXX_LINK_FLAGS'
|
|
add_target_flags_if(LIBCXX_BUILD_32_BITS "-m32")
|
|
add_target_flags_if(LIBCXX_BUILD_32_BITS "-m32")
|
|
-add_target_flags_if(LIBCXX_TARGET_TRIPLE "--target=${LIBCXX_TARGET_TRIPLE}")
|
|
|
|
-add_target_flags_if(LIBCXX_SYSROOT "--sysroot=${LIBCXX_SYSROOT}")
|
|
|
|
-add_target_flags_if(LIBCXX_GCC_TOOLCHAIN "--gcc-toolchain=${LIBCXX_GCC_TOOLCHAIN}")
|
|
|
|
-if (LIBCXX_TARGET_TRIPLE)
|
|
|
|
|
|
+
|
|
|
|
+if(LIBCXX_TARGET_TRIPLE)
|
|
|
|
+ add_target_flags("--target=${LIBCXX_TARGET_TRIPLE}")
|
|
|
|
+elseif(CMAKE_CXX_COMPILER_TARGET)
|
|
|
|
+ set(LIBCXX_TARGET_TRIPLE "${CMAKE_CXX_COMPILER_TARGET}")
|
|
|
|
+endif()
|
|
|
|
+if(LIBCXX_SYSROOT)
|
|
|
|
+ add_target_flags("--sysroot=${LIBCXX_SYSROOT}")
|
|
|
|
+elseif(CMAKE_SYSROOT)
|
|
|
|
+ set(LIBCXX_SYSROOT "${CMAKE_SYSROOT}")
|
|
|
|
+endif()
|
|
|
|
+if(LIBCXX_GCC_TOOLCHAIN)
|
|
|
|
+ add_target_flags("--gcc-toolchain=${LIBCXX_GCC_TOOLCHAIN}")
|
|
|
|
+elseif(CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN)
|
|
|
|
+ set(LIBCXX_GCC_TOOLCHAIN "${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}")
|
|
|
|
+endif()
|
|
|
|
+
|
|
|
|
+if(LIBCXX_TARGET_TRIPLE)
|
|
set(TARGET_TRIPLE "${LIBCXX_TARGET_TRIPLE}")
|
|
set(TARGET_TRIPLE "${LIBCXX_TARGET_TRIPLE}")
|
|
endif()
|
|
endif()
|
|
|
|
|