summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorMartell Malone <martellmalone@gmail.com>2017-05-25 22:37:15 +0000
committerMartell Malone <martellmalone@gmail.com>2017-05-25 22:37:15 +0000
commitfa3bd28afb0468488b877d4649ac0c7c623059aa (patch)
tree025483fe01a362bfedf35a1bf99703738ff54e63 /cmake
parent1bc177fd5bef62dd3808841dd38735a0b06d1233 (diff)
libcxx: fix bootstrapping for mingw-w64
Differential Revision: https://reviews.llvm.org/D33388 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@303928 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake')
-rw-r--r--cmake/config-ix.cmake10
1 files changed, 9 insertions, 1 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake
index c425c31ea..6c99c4c03 100644
--- a/cmake/config-ix.cmake
+++ b/cmake/config-ix.cmake
@@ -41,7 +41,15 @@ if (LIBCXX_SUPPORTS_NODEFAULTLIBS_FLAG)
if (MINGW)
# Mingw64 requires quite a few "C" runtime libraries in order for basic
# programs to link successfully with -nodefaultlibs.
- list(APPEND CMAKE_REQUIRED_LIBRARIES mingw32 gcc gcc_eh mingwex msvcrt gcc)
+ if (LIBCXX_USE_COMPILER_RT)
+ set(MINGW_RUNTIME ${LIBCXXABI_BUILTINS_LIBRARY})
+ else ()
+ set(MINGW_RUNTIME gcc_s gcc)
+ endif()
+ set(MINGW_LIBRARIES mingw32 ${MINGW_RUNTIME} moldname mingwex msvcrt advapi32
+ shell32 user32 kernel32 mingw32 ${MINGW_RUNTIME}
+ moldname mingwex msvcrt)
+ list(APPEND CMAKE_REQUIRED_LIBRARIES ${MINGW_LIBRARIES})
endif()
if (CMAKE_C_FLAGS MATCHES -fsanitize OR CMAKE_CXX_FLAGS MATCHES -fsanitize)
set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -fno-sanitize=all")