diff --git a/llvm/cmake/platforms/WinMsvc.cmake b/llvm/cmake/platforms/WinMsvc.cmake --- a/llvm/cmake/platforms/WinMsvc.cmake +++ b/llvm/cmake/platforms/WinMsvc.cmake @@ -190,7 +190,9 @@ endif() set(MSVC_INCLUDE "${MSVC_BASE}/include") +set(ATLMFC_INCLUDE "${MSVC_BASE}/atlmfc/include") set(MSVC_LIB "${MSVC_BASE}/lib") +set(ATLMFC_LIB "${MSVC_BASE}/atlmfc/lib") set(WINSDK_INCLUDE "${WINSDK_BASE}/Include/${WINSDK_VER}") set(WINSDK_LIB "${WINSDK_BASE}/Lib/${WINSDK_VER}") @@ -246,6 +248,7 @@ -D_CRT_SECURE_NO_WARNINGS --target=${TRIPLE_ARCH}-windows-msvc -fms-compatibility-version=19.11 + -imsvc "${ATLMFC_INCLUDE}" -imsvc "${MSVC_INCLUDE}" -imsvc "${WINSDK_INCLUDE}/ucrt" -imsvc "${WINSDK_INCLUDE}/shared" @@ -282,6 +285,7 @@ # Prevent CMake from attempting to invoke mt.exe. It only recognizes the slashed form and not the dashed form. /manifest:no + -libpath:"${ATLMFC_LIB}/${WINSDK_ARCH}" -libpath:"${MSVC_LIB}/${WINSDK_ARCH}" -libpath:"${WINSDK_LIB}/ucrt/${WINSDK_ARCH}" -libpath:"${WINSDK_LIB}/um/${WINSDK_ARCH}")