termux-packages/packages/swift/swift-utils-swift_build_sup...

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)