@@ -538,20 +538,26 @@ function(_add_swift_runtime_link_flags target relpath_to_lib_dir bootstrapping)
538538 set_property (TARGET ${target} APPEND_STRING PROPERTY
539539 LINK_FLAGS " -lobjc " )
540540
541- elseif (SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD" )
541+ elseif (SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD|WINDOWS " )
542542 set (swiftrt "swiftImageRegistrationObject${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK} _OBJECT_FORMAT}-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK} _LIB_SUBDIR}-${SWIFT_HOST_VARIANT_ARCH} " )
543543 if (ASRLF_BOOTSTRAPPING_MODE MATCHES "HOSTTOOLS|CROSSCOMPILE" )
544544 # At build time and run time, link against the swift libraries in the
545545 # installed host toolchain.
546- get_filename_component (swift_bin_dir ${SWIFT_EXEC_FOR_SWIFT_MODULES} DIRECTORY )
547- get_filename_component (swift_dir ${swift_bin_dir} DIRECTORY )
546+ if (SWIFT_PATH_TO_SWIFT_SDK)
547+ set (swift_dir "${SWIFT_PATH_TO_SWIFT_SDK} /usr" )
548+ else ()
549+ get_filename_component (swift_bin_dir ${SWIFT_EXEC_FOR_SWIFT_MODULES} DIRECTORY )
550+ get_filename_component (swift_dir ${swift_bin_dir} DIRECTORY )
551+ endif ()
548552 set (host_lib_dir "${swift_dir} /lib/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK} _LIB_SUBDIR}" )
549- set (swiftrt "${host_lib_dir} /${SWIFT_HOST_VARIANT_ARCH} /swiftrt.o " )
553+ set (host_lib_arch_dir "${host_lib_dir} /${SWIFT_HOST_VARIANT_ARCH} " )
550554
555+ set (swiftrt "${host_lib_arch_dir} /swiftrt${CMAKE_C_OUTPUT_EXTENSION} " )
551556 target_link_libraries (${target} PRIVATE ${swiftrt} )
552557 target_link_libraries (${target} PRIVATE "swiftCore" )
553558
554559 target_link_directories (${target} PRIVATE ${host_lib_dir} )
560+ target_link_directories (${target} PRIVATE ${host_lib_arch_dir} )
555561
556562 # At runtime, use swiftCore in the current toolchain.
557563 # For building stdlib, LD_LIBRARY_PATH will be set to builder's stdlib
0 commit comments