MacOS framework was simplified to remove an internal zip. (#35563)

diff --git a/build/archives/BUILD.gn b/build/archives/BUILD.gn
index 658ee2c..81f2e53 100644
--- a/build/archives/BUILD.gn
+++ b/build/archives/BUILD.gn
@@ -246,12 +246,6 @@
     deps = [ "//flutter/lib/snapshot:create_macos_gen_snapshots" ]
   }
 
-  group("macos_flutter_framework") {
-    deps = [
-      "//flutter/shell/platform/darwin/macos:macos_flutter_framework_archive",
-    ]
-  }
-
   zip_bundle("archive_gen_snapshot") {
     deps = [
       ":snapshot_entitlement_config",
diff --git a/build/zip.py b/build/zip.py
index 9b36dd2..dbcd18a 100755
--- a/build/zip.py
+++ b/build/zip.py
@@ -14,7 +14,14 @@
 
 def _zip_dir(path, zip_file, prefix):
   path = path.rstrip('/\\')
-  for root, _, files in os.walk(path):
+  for root, directories, files in os.walk(path):
+    for directory in directories:
+      if os.path.islink(os.path.join(root, directory)):
+        add_symlink(
+            zip_file,
+            os.path.join(root, '%s/' % directory),
+            os.path.join(root.replace(path, prefix), directory),
+        )
     for file in files:
       if os.path.islink(os.path.join(root, file)):
         add_symlink(
diff --git a/shell/platform/darwin/macos/BUILD.gn b/shell/platform/darwin/macos/BUILD.gn
index 0381e6f..d2f5b3d 100644
--- a/shell/platform/darwin/macos/BUILD.gn
+++ b/shell/platform/darwin/macos/BUILD.gn
@@ -325,8 +325,15 @@
 }
 
 zip_bundle("zip_macos_flutter_framework") {
-  deps = [ ":_generate_symlinks" ]
-  output = "tmp/FlutterMacOS.framework.zip"
+  deps = [
+    ":_generate_symlinks",
+    ":macos_framework_without_entitlement_config",
+  ]
+  prefix = "$full_platform_name-$flutter_runtime_mode/"
+  if (flutter_runtime_mode == "debug") {
+    prefix = "$full_platform_name/"
+  }
+  output = "${prefix}FlutterMacOS.framework.zip"
   visibility = [ ":*" ]
   files = [
     {
@@ -343,25 +350,3 @@
 
   deps = [ ":_generate_symlinks" ]
 }
-
-zip_bundle("macos_flutter_framework_archive") {
-  deps = [
-    ":macos_framework_without_entitlement_config",
-    ":zip_macos_flutter_framework",
-  ]
-  prefix = "$full_platform_name-$flutter_runtime_mode/"
-  if (flutter_runtime_mode == "debug") {
-    prefix = "$full_platform_name/"
-  }
-  output = "${prefix}FlutterMacOS.framework.zip"
-  files = [
-    {
-      source = "$root_out_dir/zip_archives/tmp/FlutterMacOS.framework.zip"
-      destination = "FlutterMacOS.framework.zip"
-    },
-    {
-      source = "$target_gen_dir/framework_without_entitlements.txt"
-      destination = "without_entitlements.txt"
-    },
-  ]
-}