diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c0601409e82e..a28bf92956680 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -954,7 +954,7 @@ if(SWIFT_PATH_TO_EARLYSWIFTSYNTAX_BUILD_DIR) set(SWIFT_SWIFT_PARSER TRUE) include(${SWIFT_PATH_TO_EARLYSWIFTSYNTAX_TARGETS}) - if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX" AND NOT BOOTSTRAPPING_MODE STREQUAL "HOSTTOOLS") + if(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD" AND NOT BOOTSTRAPPING_MODE STREQUAL "HOSTTOOLS") # Only "HOSTTOOLS" is supported in Linux when Swift parser integration is enabled. message(WARNING "Force setting BOOTSTRAPPING=HOSTTOOLS because Swift parser integration is enabled") set(BOOTSTRAPPING_MODE "HOSTTOOLS") diff --git a/cmake/modules/AddPureSwift.cmake b/cmake/modules/AddPureSwift.cmake index 388b9000d2988..1bf156b23163c 100644 --- a/cmake/modules/AddPureSwift.cmake +++ b/cmake/modules/AddPureSwift.cmake @@ -66,7 +66,7 @@ function(_add_host_swift_compile_options name) endfunction() function(_set_pure_swift_link_flags name relpath_to_lib_dir) - if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX") + if(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD") # Don't add builder's stdlib RPATH automatically. target_compile_options(${name} PRIVATE $<$:-no-toolchain-stdlib-rpath> @@ -291,7 +291,7 @@ function(add_pure_swift_host_tool name) set_property(TARGET ${name} APPEND PROPERTY INSTALL_RPATH "@executable_path/../lib/swift/host") - else() + elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD") set_property(TARGET ${name} APPEND PROPERTY INSTALL_RPATH "$ORIGIN/../lib/swift/host") diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index d73b22a8f5125..a29e9770d9115 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -54,7 +54,7 @@ if (SWIFT_SWIFT_PARSER) # be found via RPATH. foreach (sharedlib ${SWIFT_SYNTAX_SHARED_LIBRARIES}) set(add_origin_rpath) - if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX") + if(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD") # At runtime, use swiftCore in the current toolchain. swift_get_set_rpath_script_file(setrpath_command) set(add_origin_rpath COMMAND ${CMAKE_COMMAND} diff --git a/lib/Macros/CMakeLists.txt b/lib/Macros/CMakeLists.txt index dc61d9a904488..e7501449c03e2 100644 --- a/lib/Macros/CMakeLists.txt +++ b/lib/Macros/CMakeLists.txt @@ -39,7 +39,7 @@ function(add_swift_macro_library name) _set_pure_swift_link_flags(${name} "${relpath_to_lib}") # Add rpath to 'lib/host' - if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX") + if(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD") set_property(TARGET ${name} APPEND PROPERTY INSTALL_RPATH "$ORIGIN/..") endif()