From 1a3d1a024ebb2a3dd5d15849523a55246d78fda6 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 18 Aug 2025 11:35:49 +0100 Subject: [PATCH] fix(ios): Tauri iOS build with binary XCFramework dependencies (#13995) * Fix Tauri iOS build not having a PATH variable to access unzip to extract binaryTargets and also not including Frameworks when linking * Add covector change * fmt * Update crates/tauri-utils/src/build.rs Co-authored-by: Lucas Fernandes Nogueira --------- Co-authored-by: Lucas Fernandes Nogueira --- .changes/fix-ios-binary-framework-dependencies.md | 5 +++++ crates/tauri-utils/src/build.rs | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .changes/fix-ios-binary-framework-dependencies.md diff --git a/.changes/fix-ios-binary-framework-dependencies.md b/.changes/fix-ios-binary-framework-dependencies.md new file mode 100644 index 000000000..6595eee5c --- /dev/null +++ b/.changes/fix-ios-binary-framework-dependencies.md @@ -0,0 +1,5 @@ +--- +"tauri-utils": patch:bug +--- + +Fix Tauri iOS build with binary XCFramework dependencies, allows extracting binaryTargets that are zipped and also not including XCFrameworks when linking. diff --git a/crates/tauri-utils/src/build.rs b/crates/tauri-utils/src/build.rs index 4db034591..53e98e28d 100644 --- a/crates/tauri-utils/src/build.rs +++ b/crates/tauri-utils/src/build.rs @@ -75,6 +75,7 @@ fn link_xcode_library(name: &str, source: impl AsRef) { .arg("OTHER_SWIFT_FLAGS=-no-verify-emitted-module-interface") .current_dir(source) .env_clear() + .env("PATH", std::env::var_os("PATH").unwrap_or_default()) .status() .unwrap(); @@ -85,6 +86,10 @@ fn link_xcode_library(name: &str, source: impl AsRef) { .join("Products") .join(format!("{configuration}-{sdk}")); + println!( + "cargo::rustc-link-search=framework={}", + lib_out_dir.display() + ); println!("cargo:rerun-if-changed={}", source.display()); println!("cargo:rustc-link-search=native={}", lib_out_dir.display()); println!("cargo:rustc-link-lib=static={name}");