| # Copyright 2015 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/chrome_build.gni") |
| import("//build/config/chromecast_build.gni") |
| import("//build/config/compiler/compiler.gni") |
| import("//build/config/dcheck_always_on.gni") |
| import("//build/config/features.gni") |
| import("//components/safe_browsing/buildflags.gni") |
| import("//device/vr/buildflags/buildflags.gni") |
| import("//extensions/buildflags/buildflags.gni") |
| import("//media/media_options.gni") |
| import("//net/features.gni") |
| import("//ppapi/buildflags/buildflags.gni") |
| import("//printing/buildflags/buildflags.gni") |
| import("//ui/base/ui_features.gni") |
| import("//ui/webui/webui_features.gni") |
| |
| assert(!is_ios, "Chromium/iOS shouldn't use anything in //chrome") |
| |
| # Please keep features in alphabetical order. |
| declare_args() { |
| # Platforms where the BuiltinCertificateVerifierEnabled enterprise policy is |
| # supported. This must must match the supported_on list of the policy in |
| # policy_templates.json and be a subset of the |
| # builtin_cert_verifier_feature_supported platforms. |
| # See crbug.com/410574. This can be removed when the builtin verifier is |
| # unconditionally enabled on all platforms. |
| builtin_cert_verifier_policy_supported = is_chromeos || is_desktop_linux |
| |
| enable_app_list = is_chromeos |
| |
| # Enables support for background apps. |
| enable_background_contents = !is_android && !is_chromecast |
| enable_background_mode = !is_android && !is_chromecast && !is_chromeos |
| |
| # Enable the printing system dialog for platforms that support printing |
| # and have a system dialog. |
| enable_basic_print_dialog = enable_basic_printing && !is_chromeos |
| |
| enable_captive_portal_detection = !is_android && !is_chromecast |
| |
| # Hangout services is an extension that adds extra features to Hangouts. |
| # It is enableable separately to facilitate testing. |
| enable_hangout_services_extension = is_chrome_branded |
| |
| # Enables usage of the system-provided notification center. |
| enable_native_notifications = is_android || is_mac || is_win || |
| (is_desktop_linux && use_dbus) || is_chromeos |
| |
| enable_one_click_signin = |
| is_win || is_mac || (is_linux && !is_chromeos && !is_chromecast) |
| |
| enable_service_discovery = (enable_mdns && !is_android) || is_mac |
| |
| # Enables use of the session service, which is enabled by default. |
| # Android stores them separately on the Java side. |
| enable_session_service = !is_android && !is_chromecast |
| |
| enable_supervised_users = is_chromeos || is_android |
| |
| # Indicates if Wayland display server support is enabled. |
| enable_wayland_server = is_chromeos |
| |
| # Indicates if the build is using PGO. |
| pgo_build = chrome_pgo_phase > 0 |
| |
| # optimize_webui was moved to ui/base/ui_features.gni |
| } |
| |
| # Use brlapi from brltty for braille display support. |
| use_brlapi = is_chromeos |
| |
| # Every grit target in //chrome should apply these defines so that the |
| # proper build flags can be set. |
| chrome_grit_defines = [ |
| "enable_app_list=$enable_app_list", |
| "enable_arcore=$enable_arcore", |
| "enable_background_mode=$enable_background_mode", |
| "enable_background_contents=$enable_background_contents", |
| "enable_extensions=$enable_extensions", |
| "enable_hangout_services_extension=$enable_hangout_services_extension", |
| "enable_plugins=$enable_plugins", |
| "enable_print_preview=$enable_print_preview", |
| "enable_printing=$enable_basic_printing", |
| "enable_service_discovery=$enable_service_discovery", |
| "enable_supervised_users=$enable_supervised_users", |
| "enable_vr=$enable_vr", |
| "enable_webui_tab_strip=$enable_webui_tab_strip", |
| "safe_browsing_mode=$safe_browsing_mode", |
| "optimize_webui=$optimize_webui", |
| ] |