diff options
-rw-r--r-- | cmake/config-ix.cmake | 10 | ||||
-rw-r--r-- | include/__threading_support | 2 | ||||
-rw-r--r-- | lib/CMakeLists.txt | 7 |
3 files changed, 12 insertions, 7 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") diff --git a/include/__threading_support b/include/__threading_support index 385fff32b..afd7cb506 100644 --- a/include/__threading_support +++ b/include/__threading_support @@ -27,7 +27,7 @@ # include <pthread.h> # include <sched.h> #elif defined(_LIBCPP_HAS_THREAD_API_WIN32) -#include <Windows.h> +#include <windows.h> #include <process.h> #include <fibersapi.h> #include <__undef_min_max> diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 6161838d0..fe45f5ac0 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -242,14 +242,11 @@ endif() if (LIBCXX_ENABLE_STATIC) add_library(cxx_static STATIC $<TARGET_OBJECTS:cxx_objects>) target_link_libraries(cxx_static ${LIBCXX_LIBRARIES}) - set(STATIC_OUTPUT_NAME "c++") - if (WIN32) - set(STATIC_OUTPUT_NAME "libc++") - endif() + set(CMAKE_STATIC_LIBRARY_PREFIX "lib") set_target_properties(cxx_static PROPERTIES LINK_FLAGS "${LIBCXX_LINK_FLAGS}" - OUTPUT_NAME "${STATIC_OUTPUT_NAME}" + OUTPUT_NAME "c++" ) list(APPEND LIBCXX_TARGETS "cxx_static") |