| # Copyright 2023 The Chromium Authors | 
 | # Use of this source code is governed by a BSD-style license that can be | 
 | # found in the LICENSE file. | 
 |  | 
 | import("//build/apple/compile_entitlements.gni") | 
 | import("//build/apple/tweak_info_plist.gni") | 
 | import("//build/config/ios/rules.gni") | 
 | import("//ios/build/chrome_build.gni") | 
 | import("//ios/build/config.gni") | 
 |  | 
 | assert( | 
 |     ios_enable_share_extension, | 
 |     "ios_enable_share_extension must be true to depend on //ios/chrome/share_extension") | 
 |  | 
 | tweak_info_plist("tweak_info_plist") { | 
 |   if (ios_enable_extended_share_extension) { | 
 |     info_plist = "ExtendedInfo.plist" | 
 |   } else { | 
 |     info_plist = "Info.plist" | 
 |   } | 
 | } | 
 |  | 
 | compile_entitlements("entitlements") { | 
 |   substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] | 
 |   output_name = "$target_gen_dir/share_extension.appex.entitlements" | 
 |   entitlements_templates = | 
 |       [ "entitlements/external/share_extension.appex.entitlements" ] | 
 | } | 
 |  | 
 | ios_appex_bundle("appex") { | 
 |   output_name = "share_extension" | 
 |   deps = [ "//ios/chrome/share_extension:share" ] | 
 |   if (ios_app_extension_privacy_manifest != "") { | 
 |     deps += [ ":privacy_manifest" ] | 
 |   } | 
 |  | 
 |   bundle_deps_filter = [ "//third_party/icu:icudata" ] | 
 |   assert_no_deps = ios_extension_assert_no_deps | 
 |  | 
 |   extra_substitutions = [ | 
 |     "CHROME_CHANNEL_SCHEME=$url_channel_scheme", | 
 |     "CHROMIUM_SHORT_NAME=$chromium_short_name", | 
 |   ] | 
 |  | 
 |   entitlements_target = ":entitlements" | 
 |   info_plist_target = ":tweak_info_plist" | 
 |   bundle_identifier = "$ios_chromium_bundle_id.ShareExtension" | 
 | } | 
 |  | 
 | if (ios_app_extension_privacy_manifest != "") { | 
 |   bundle_data("privacy_manifest") { | 
 |     sources = [ ios_app_extension_privacy_manifest ] | 
 |     outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ] | 
 |   } | 
 | } |