From 1538cc64b360ee0ffcb4fa1caa0d643bd70d0052 Mon Sep 17 00:00:00 2001 From: Patrick Ecord Date: Mon, 22 Jun 2026 02:50:38 -0500 Subject: [PATCH] macos: link iroh's frameworks for MacTetherApp (matches the iOS app) The macOS GUI app needs the same OTHER_LDFLAGS as the iOS app to link the iroh staticlib: Network (netwatch nw_* symbols) + CoreFoundation/Foundation/objc (objc2 bindings) + iconv. With this it builds against the iroh core like the agent and the iOS app do. Verified: BUILD SUCCEEDED for macOS arm64. Co-Authored-By: Claude Opus 4.8 --- ios/MacTetherApp/MacTetherApp.xcodeproj/project.pbxproj | 4 ++-- ios/MacTetherApp/project.yml | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ios/MacTetherApp/MacTetherApp.xcodeproj/project.pbxproj b/ios/MacTetherApp/MacTetherApp.xcodeproj/project.pbxproj index 05d1f67..0a1afb3 100644 --- a/ios/MacTetherApp/MacTetherApp.xcodeproj/project.pbxproj +++ b/ios/MacTetherApp/MacTetherApp.xcodeproj/project.pbxproj @@ -302,7 +302,7 @@ "@executable_path/../Frameworks", ); MARKETING_VERSION = 0.1.0; - OTHER_LDFLAGS = "-framework Security -framework SystemConfiguration -lresolv"; + OTHER_LDFLAGS = "-framework Security -framework SystemConfiguration -framework Network -framework CoreFoundation -framework Foundation -lobjc -liconv -lresolv"; PRODUCT_BUNDLE_IDENTIFIER = io.pecord.tether.mac; SDKROOT = macosx; }; @@ -327,7 +327,7 @@ "@executable_path/../Frameworks", ); MARKETING_VERSION = 0.1.0; - OTHER_LDFLAGS = "-framework Security -framework SystemConfiguration -lresolv"; + OTHER_LDFLAGS = "-framework Security -framework SystemConfiguration -framework Network -framework CoreFoundation -framework Foundation -lobjc -liconv -lresolv"; PRODUCT_BUNDLE_IDENTIFIER = io.pecord.tether.mac; SDKROOT = macosx; }; diff --git a/ios/MacTetherApp/project.yml b/ios/MacTetherApp/project.yml index 1ad13e4..e077f34 100644 --- a/ios/MacTetherApp/project.yml +++ b/ios/MacTetherApp/project.yml @@ -22,8 +22,10 @@ targets: settings: base: PRODUCT_BUNDLE_IDENTIFIER: io.pecord.tether.mac - # Rust staticlib pulls in SecRandomCopyBytes (ring) + system config (reqwest). - OTHER_LDFLAGS: "-framework Security -framework SystemConfiguration -lresolv" + # Rust staticlib pulls in SecRandomCopyBytes (ring) + system config + # (reqwest) + iroh's netwatch (Network.framework) + objc2 bindings + # (CoreFoundation/Foundation/objc) + iconv. + OTHER_LDFLAGS: "-framework Security -framework SystemConfiguration -framework Network -framework CoreFoundation -framework Foundation -lobjc -liconv -lresolv" MARKETING_VERSION: "0.1.0" CURRENT_PROJECT_VERSION: "1" GENERATE_INFOPLIST_FILE: true