123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- # Copyright 2016 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import("//build/config/apple/symbols.gni")
- import("//build/config/chrome_build.gni")
- import("//build/config/ios/ios_sdk.gni")
- # Xcode 13.1 or higher is required to build Chromium on iOS. This file should
- # only be included when building Chromium, not other related projects (cronet,
- # webrtc, ...).
- assert(xcode_version_int >= 1310, "Xcode 13.1 or higher is required.")
- declare_args() {
- # Enable widget extensions.
- ios_enable_content_widget_extension = true
- ios_enable_search_widget_extension = true
- # Enable iOS 14, WidgetKit extension.
- ios_enable_widget_kit_extension = true
- # Enable iOS 16 lockscreen extensions.
- ios_enable_lockscreen_extension = true
- # Enable share extension.
- ios_enable_share_extension = true
- # Enable credential provider extension.
- ios_enable_credential_provider_extension = true
- # Enable intents extension.
- ios_enable_intents_extension = false
- # Label of the target providing implementation for AccountVerificationProvider.
- # Overridden when using the Google-internal repository to build Chrome on iOS.
- ios_account_verification_provider_target = "//ios/chrome/credential_provider_extension:account_verification_provider_implementation"
- # The API key to query Google services in the Credential Provider Extension.
- ios_credential_provider_extension_api_key = ""
- # Controls whether ScreenTime API is used.
- ios_enable_screen_time = true
- # Enable background fetch mode for feed refresh.
- ios_enable_background_mode = true
- # Value of the encryption export compliance code. See "Cryptography and
- # U.S. Export Compliance" in "Submitting the App to App Review" in the
- # Apple developer documentation (https://goo.gl/yv1xEF).
- ios_encryption_export_compliance_code = ""
- # List of plist templates to merge when generating chrome Info.plist.
- ios_chrome_info_plist_additions = []
- # List of targets used to generate the plist listed in
- # ios_chrome_info_plist_additions variable (if any).
- ios_chrome_info_plist_addition_targets = []
- # List of plist templates to merge when generating chrome entitlements.
- ios_chrome_entitlements_additions = []
- # List of plist templates to merge when generating EarlGrey tests
- # entitlements.
- ios_egtests_entitlements_additions = []
- # Overridable list of dependencies that are forbidden for
- # //ios/chrome/app:chrome target.
- ios_chrome_extra_assert_no_deps = []
- # List of plist templates to merge when generating chrome cpe entitlements.
- ios_chrome_cpe_entitlements_additions = []
- }
- if (target_environment == "catalyst") {
- # Some extensions uses API that are not available in "catalyst" environment.
- ios_enable_content_widget_extension = false
- ios_enable_search_widget_extension = false
- ios_enable_credential_provider_extension = false
- ios_enable_widget_kit_extension = false
- ios_enable_prebuilt_widget_kit_extension = false
- # ScreenTime framework is not available in the iOS support libraries provided
- # by "catalyst" environment.
- ios_enable_screen_time = false
- }
- # Configure whether breakpad support is enabled.
- breakpad_enabled = is_official_build && is_chrome_branded
- if (breakpad_enabled) {
- breakpad_enabled_as_int = 1
- is_official_release = enable_dsyms && target_environment == "device" &&
- current_toolchain == default_toolchain
- } else {
- breakpad_enabled_as_int = 0
- is_official_release = false
- }
- chromium_bundle_id = "$ios_app_bundle_id_prefix.chrome.ios.dev"
- chromium_handoff_id = "$ios_app_bundle_id_prefix.chrome.handoff"
- ios_move_tab_activity_type = "$ios_app_bundle_id_prefix.chrome.move-tab"
- if (is_chrome_branded) {
- chromium_short_name = "Chrome"
- url_channel_scheme = "googlechrome-dev"
- url_secure_scheme = "googlechromes"
- url_ssoauth_scheme = "$ios_app_bundle_id_prefix.sso.chrome.stable"
- url_unsecure_scheme = "googlechrome"
- url_x_callback_scheme = "googlechrome-x-callback"
- } else {
- chromium_short_name = "Chromium"
- url_channel_scheme = "chromium-dev"
- url_secure_scheme = "chromiums"
- url_ssoauth_scheme = "$ios_app_bundle_id_prefix.sso.chromium"
- url_unsecure_scheme = "chromium"
- url_x_callback_scheme = "chromium-x-callback"
- }
|