diff --git a/lldb/cmake/modules/AddLLDB.cmake b/lldb/cmake/modules/AddLLDB.cmake index c28d61b9c3f5c..c1436ef359283 100644 --- a/lldb/cmake/modules/AddLLDB.cmake +++ b/lldb/cmake/modules/AddLLDB.cmake @@ -217,17 +217,27 @@ function(add_properties_for_swift_modules target reldir) # Workaround for a linker crash related to autolinking: rdar://77839981 set_property(TARGET ${target} APPEND_STRING PROPERTY LINK_FLAGS " -lobjc ") + + set_property(TARGET ${target} APPEND PROPERTY BUILD_RPATH "${SWIFT_BUILD_RPATH}") + set_property(TARGET ${target} APPEND PROPERTY INSTALL_RPATH "${SWIFT_INSTALL_RPATH}") elseif (CMAKE_SYSTEM_NAME MATCHES "Linux|Android|OpenBSD|FreeBSD") string(REGEX MATCH "^[^-]*" arch ${LLVM_TARGET_TRIPLE}) target_link_libraries(${target} PRIVATE swiftCore-linux-${arch}) string(TOLOWER ${CMAKE_SYSTEM_NAME} platform) set(SWIFT_BUILD_RPATH "${LLDB_SWIFT_LIBS}/${platform}") set(SWIFT_INSTALL_RPATH "$ORIGIN/${reldir}lib/swift/${platform}") + set_property(TARGET ${target} APPEND PROPERTY BUILD_RPATH "${SWIFT_BUILD_RPATH}") + set_property(TARGET ${target} APPEND PROPERTY INSTALL_RPATH "${SWIFT_INSTALL_RPATH}") + elseif(CMAKE_SYSTEM_NAME MATCHES Windows) + if(CMAKE_SYSTEM_PROCESSOR MATCHES AMD64|amd64|x86_64) + target_link_directories(${target} PRIVATE + ${SWIFT_PATH_TO_SWIFT_SDK}/usr/lib/swift/windows/x86_64) + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES ARM64|arm64|aarch64) + target_link_directories(${target} PRIVATE + ${SWIFT_PATH_TO_SWIFT_SDK}/usr/lib/swift/windows/aarch64) + endif() endif() - set_property(TARGET ${target} APPEND PROPERTY BUILD_RPATH "${SWIFT_BUILD_RPATH}") - set_property(TARGET ${target} APPEND PROPERTY INSTALL_RPATH "${SWIFT_INSTALL_RPATH}") - if (SWIFT_SWIFT_PARSER) if (CMAKE_SYSTEM_NAME MATCHES "Darwin") set_property(TARGET ${target} diff --git a/llvm/lib/Support/CMakeLists.txt b/llvm/lib/Support/CMakeLists.txt index 82193384dadea..fbbb27a7c1334 100644 --- a/llvm/lib/Support/CMakeLists.txt +++ b/llvm/lib/Support/CMakeLists.txt @@ -79,7 +79,7 @@ endif( MSVC OR MINGW ) # Delay load shell32.dll if possible to speed up process startup. set (delayload_flags) if (MSVC) - set (delayload_flags delayimp -delayload:shell32.dll -delayload:ole32.dll) + set (delayload_flags $<$>:delayimp -delayload:shell32.dll -delayload:ole32.dll>) endif() # Link Z3 if the user wants to build it.