diff options
author | Shoaib Meenai <smeenai@fb.com> | 2017-12-14 18:41:49 +0000 |
---|---|---|
committer | Shoaib Meenai <smeenai@fb.com> | 2017-12-14 18:41:49 +0000 |
commit | 7fe22d613f345fb37779bf6b4c2f4044946886f9 (patch) | |
tree | 085074fbdb06fb526d392b7223c231258e0b62fb | |
parent | 600f1ba333a42e9f26d799db1b206c4eae4bd091 (diff) | |
download | bcm5719-llvm-7fe22d613f345fb37779bf6b4c2f4044946886f9.tar.gz bcm5719-llvm-7fe22d613f345fb37779bf6b4c2f4044946886f9.zip |
[cmake] Only attempt to install MSVC system libraries on Windows
Newer versions of CMake (I'm on 3.10, but I believe 3.9 behaves the same
way) attempt to query the system for information about the VS 2017
install. Unfortunately, this query fails on non-Windows systems:
cmake_host_system_information does not recognize <key> VS_15_DIR
CMake isn't going to find these system libraries on non-Windows anyway
(and we were previously silencing the resultant warnings in our
cross-compilation toolchain), so it makes sense to just omit the
attempted installation entirely on non-Windows.
Differential Revision: https://reviews.llvm.org/D41220
llvm-svn: 320724
-rw-r--r-- | llvm/CMakeLists.txt | 2 | ||||
-rw-r--r-- | llvm/cmake/platforms/WinMsvc.cmake | 7 |
2 files changed, 1 insertions, 8 deletions
diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt index 0b0b58d980a..84dca6bf598 100644 --- a/llvm/CMakeLists.txt +++ b/llvm/CMakeLists.txt @@ -1010,7 +1010,7 @@ if(LLVM_DISTRIBUTION_COMPONENTS) endif() # This allows us to deploy the Universal CRT DLLs by passing -DCMAKE_INSTALL_UCRT_LIBRARIES=ON to CMake -if (MSVC) +if (MSVC AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows") include(InstallRequiredSystemLibraries) endif() diff --git a/llvm/cmake/platforms/WinMsvc.cmake b/llvm/cmake/platforms/WinMsvc.cmake index 5fd0c95af04..c4761636c92 100644 --- a/llvm/cmake/platforms/WinMsvc.cmake +++ b/llvm/cmake/platforms/WinMsvc.cmake @@ -299,10 +299,3 @@ set(CMAKE_SHARED_LINKER_FLAGS "${_CMAKE_SHARED_LINKER_FLAGS_INITIAL} ${LINK_FLAG # control which libraries they require. set(CMAKE_C_STANDARD_LIBRARIES "" CACHE STRING "" FORCE) set(CMAKE_CXX_STANDARD_LIBRARIES "" CACHE STRING "" FORCE) - -# CMake's InstallRequiredSystemLibraries module searches for a Visual Studio -# installation in order to determine where to copy the required DLLs. This -# installation won't exist when cross-compiling, of course, so silence the -# resulting warnings about missing libraries. -set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON) - |