--- meson.build.orig
+++ meson.build
@@ -1539,7 +1539,7 @@
 xcrun = find_program('xcrun', required: get_option('swift-build').require(darwin))
 swift_ver = '0.0'
 if xcrun.found()
+    swift_prog = find_program(run_command(xcrun, '-find', 'swift', check: true).stdout().strip())
-    swift_prog = find_program(run_command(xcrun, '-find', 'swiftc', check: true).stdout().strip())
     swift_ver_string = run_command(swift_prog, '-version', check: true).stdout()
     verRe = '''
 #!/usr/bin/env python3
--- osdep/mac/meson.build.orig
+++ osdep/mac/meson.build
@@ -4,8 +4,8 @@
 module = join_paths(build_root, 'osdep/mac/swift.swiftmodule')
 target = join_paths(build_root, 'osdep/mac/swift.o')
 
+swift_flags = ['-frontend', '-c', '-sdk', macos_sdk_path,
+               '-enable-objc-interop', '-emit-objc-header', '-parse-as-library']
-swift_flags = ['-c', '-emit-library', '-static', '-sdk', macos_sdk_path,
-               '-emit-objc-header', '-parse-as-library']
 
 if swift_ver.version_compare('>=6.0')
     swift_flags += ['-swift-version', '5']
