38 lines
1.8 KiB
Diff
38 lines
1.8 KiB
Diff
--- a/swift/utils/swift_build_support/swift_build_support/products/indexstoredb.py 2021-08-07 01:42:42.000000000 +0000
|
|
+++ b/swift/utils/swift_build_support/swift_build_support/products/indexstoredb.py 2021-08-20 21:38:31.566330389 +0000
|
|
@@ -81,8 +81,10 @@
|
|
install_destdir = swiftpm.SwiftPM.get_install_destdir(args,
|
|
host_target,
|
|
product.build_dir)
|
|
- toolchain_path = targets.toolchain_path(install_destdir,
|
|
- args.install_prefix)
|
|
+ if args.native_swift_tools_path is not None:
|
|
+ toolchain_path = os.path.split(args.native_swift_tools_path)[0]
|
|
+ else:
|
|
+ toolchain_path = product.install_toolchain_path(host_target)
|
|
is_release = product.is_release()
|
|
configuration = 'release' if is_release else 'debug'
|
|
helper_cmd = [
|
|
@@ -106,4 +108,21 @@
|
|
elif args.enable_tsan:
|
|
helper_cmd.extend(['--sanitize', 'thread'])
|
|
|
|
+ if swiftpm.SwiftPM.has_cross_compile_hosts(args) and host_target != args.host_target:
|
|
+ helper_cmd.extend(['--cross-compile-host', host_target])
|
|
+ build_toolchain_path = install_destdir + args.install_prefix
|
|
+ resource_dir = '%s/lib/swift' % build_toolchain_path
|
|
+ helper_cmd += [
|
|
+ '--cross-compile-config',
|
|
+ targets.StdlibDeploymentTarget.get_target_for_name(host_target).platform
|
|
+ .swiftpm_config(args, output_dir=build_toolchain_path,
|
|
+ swift_toolchain=toolchain_path,
|
|
+ resource_path=resource_dir)
|
|
+ ]
|
|
+
|
|
+ if action == 'install':
|
|
+ helper_cmd.extend([
|
|
+ '--prefix', install_destdir + args.install_prefix
|
|
+ ])
|
|
+
|
|
shell.call(helper_cmd)
|