@@ -739,6 +739,10 @@ function(add_libswift name)
739
739
get_filename_component(swift_exec_bin_dir ${ALS_SWIFT_EXEC} DIRECTORY)
740
740
set(sdk_option ${sdk_option} " -resource-dir " " ${swift_exec_bin_dir} /../bootstrapping0/lib/swift ")
741
741
endif()
742
+ elseif(${LIBSWIFT_BUILD_MODE} STREQUAL " CROSSCOMPILE ")
743
+ set(sdk_option " -sdk " " ${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH} ")
744
+ get_filename_component(swift_exec_bin_dir ${ALS_SWIFT_EXEC} DIRECTORY)
745
+ set(sdk_option ${sdk_option} " -resource-dir " " ${swift_exec_bin_dir} /../lib/swift ")
742
746
endif()
743
747
get_versioned_target_triple(target ${SWIFT_HOST_VARIANT_SDK}
744
748
${SWIFT_HOST_VARIANT_ARCH} " ${deployment_version} ")
@@ -965,22 +969,28 @@ function(add_swift_host_tool executable)
965
969
BUILD_WITH_INSTALL_RPATH YES
966
970
INSTALL_RPATH " ${RPATH_LIST} ")
967
971
968
- elseif(SWIFT_HOST_VARIANT_SDK STREQUAL " LINUX " AND ASHT_HAS_LIBSWIFT AND LIBSWIFT_BUILD_MODE)
972
+ elseif(SWIFT_HOST_VARIANT_SDK MATCHES " LINUX|ANDROID|OPENBSD " AND ASHT_HAS_LIBSWIFT AND LIBSWIFT_BUILD_MODE)
969
973
set(swiftrt " swiftImageRegistrationObject${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_OBJECT_FORMAT}-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}-${SWIFT_HOST_VARIANT_ARCH} ")
970
- if(LIBSWIFT_BUILD_MODE STREQUAL " HOSTTOOLS ")
974
+ if(${ LIBSWIFT_BUILD_MODE} MATCHES " HOSTTOOLS|CROSSCOMPILE ")
971
975
# At build time and and run time, link against the swift libraries in the
972
976
# installed host toolchain.
973
977
get_filename_component(swift_bin_dir ${SWIFT_EXEC_FOR_LIBSWIFT} DIRECTORY)
974
978
get_filename_component(swift_dir ${swift_bin_dir} DIRECTORY)
975
- set(host_lib_dir " ${swift_dir} /lib/swift/linux ")
979
+ set(host_lib_dir " ${swift_dir} /lib/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR} ")
976
980
977
981
target_link_libraries(${executable} PRIVATE ${swiftrt} )
978
982
target_link_libraries(${executable} PRIVATE " swiftCore ")
979
983
980
984
target_link_directories(${executable} PRIVATE ${host_lib_dir} )
981
- set_target_properties(${executable} PROPERTIES
982
- BUILD_WITH_INSTALL_RPATH YES
983
- INSTALL_RPATH " ${host_lib_dir} ")
985
+ if(LIBSWIFT_BUILD_MODE STREQUAL " HOSTTOOLS ")
986
+ set_target_properties(${executable} PROPERTIES
987
+ BUILD_WITH_INSTALL_RPATH YES
988
+ INSTALL_RPATH " ${host_lib_dir} ")
989
+ else()
990
+ set_target_properties(${executable} PROPERTIES
991
+ BUILD_WITH_INSTALL_RPATH YES
992
+ INSTALL_RPATH " $ORIGIN/../lib/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR} ")
993
+ endif()
984
994
985
995
elseif(LIBSWIFT_BUILD_MODE STREQUAL " BOOTSTRAPPING ")
986
996
# At build time link against the built swift libraries from the
@@ -996,7 +1006,7 @@ function(add_swift_host_tool executable)
996
1006
# bootstrapping stage.
997
1007
set_target_properties(${executable} PROPERTIES
998
1008
BUILD_WITH_INSTALL_RPATH YES
999
- INSTALL_RPATH " $ORIGIN/../lib/swift/${SWIFT_SDK_LINUX_LIB_SUBDIR } ")
1009
+ INSTALL_RPATH " $ORIGIN/../lib/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR } ")
1000
1010
1001
1011
elseif(LIBSWIFT_BUILD_MODE STREQUAL " BOOTSTRAPPING-WITH-HOSTLIBS ")
1002
1012
message(FATAL_ERROR " LIBSWIFT_BUILD_MODE 'BOOTSTRAPPING-WITH-HOSTLIBS' not supported on Linux ")
0 commit comments