From 99b6e72b29c410db319f06b776dfd13161ddf384 Mon Sep 17 00:00:00 2001 From: Shoaib Meenai Date: Thu, 14 Dec 2017 18:41:49 +0000 Subject: [PATCH] [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 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 --- CMakeLists.txt | 2 +- cmake/platforms/WinMsvc.cmake | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b0b58d980a..84dca6bf598 100644 --- a/CMakeLists.txt +++ b/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/cmake/platforms/WinMsvc.cmake b/cmake/platforms/WinMsvc.cmake index 5fd0c95af04..c4761636c92 100644 --- a/cmake/platforms/WinMsvc.cmake +++ b/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) -