diff options
author | Eric Fiselier <eric@efcs.ca> | 2017-05-11 03:29:59 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2017-05-11 03:29:59 +0000 |
commit | 1e5f94fb78e91326d20d076c15cb2d5cec8eee78 (patch) | |
tree | be9a004e20671600addd7e7cfb8c05afb51015aa | |
parent | 9a8ac6a3a5f494e8a1de3191d9fb8cdb32227f8c (diff) | |
download | libcxxabi-1e5f94fb78e91326d20d076c15cb2d5cec8eee78.tar.gz |
Fix Libc++abi linking under MinGW64
git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@302760 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | cmake/config-ix.cmake | 5 | ||||
-rw-r--r-- | src/CMakeLists.txt | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index 3a6b86b..a19b19a 100644 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -30,7 +30,10 @@ if (LIBCXXABI_HAS_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) + set(MINGW_LIBRARIES mingw32 gcc_s gcc moldname mingwex msvcrt advapi32 + shell32 user32 kernel32 iconv mingw32 gcc_s gcc 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") diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 1efc92e..cbf962f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -74,6 +74,10 @@ if (LIBCXXABI_USE_LLVM_UNWINDER) else() append_if(libraries LIBCXXABI_HAS_GCC_S_LIB gcc_s) endif() +if (MINGW) + # MINGW_LIBRARIES is defined in config-ix.cmake + list(APPEND libraries ${MINGW_LIBRARIES}) +endif() # Setup flags. append_if(LIBCXXABI_COMPILE_FLAGS LIBCXXABI_HAS_FPIC_FLAG -fPIC) |