diff --git a/scripts/build-libbox.sh b/scripts/build-libbox.sh index c810aba..b421a21 100644 --- a/scripts/build-libbox.sh +++ b/scripts/build-libbox.sh @@ -65,8 +65,15 @@ if [ "$TARGET" = "apple" ]; then go run ./cmd/internal/build_libbox -target apple fi echo "✅ 产物: $WORK/sing-box/Libbox.xcframework" - # 部署到工程引用位置(client/{macos,ios}/Frameworks/Libbox.xcframework,均 gitignore)。 - for fw in "$REPO_ROOT/client/macos/Frameworks" "$REPO_ROOT/client/ios/Frameworks"; do + # 按 PLATFORM 部署到工程引用位置(均 gitignore)。⚠️ 只编某一平台时,产出的 xcframework + # 只含该平台 slice,**不能**覆盖到另一平台的 Frameworks(否则那端 build 缺 slice)。 + # 空(全 Apple)→ macos + ios 都放;macos→只 macos;ios→只 ios。 + case "$PLATFORM" in + macos) fws=("$REPO_ROOT/client/macos/Frameworks") ;; + ios) fws=("$REPO_ROOT/client/ios/Frameworks") ;; + *) fws=("$REPO_ROOT/client/macos/Frameworks" "$REPO_ROOT/client/ios/Frameworks") ;; + esac + for fw in "${fws[@]}"; do mkdir -p "$fw" rm -rf "$fw/Libbox.xcframework" cp -R "$WORK/sing-box/Libbox.xcframework" "$fw/"