| # 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/features.gni") |
| import("//build/config/linux/gtk/gtk.gni") |
| import("//device/vr/features/features.gni") |
| import("//extensions/features/features.gni") |
| import("//media/media_options.gni") |
| import("//net/features.gni") |
| import("//ppapi/features/features.gni") |
| import("//printing/features/features.gni") |
| import("//ui/base/ui_features.gni") |
| |
| assert(!is_ios, "Chromium/iOS shouldn't use anything in //chrome") |
| |
| # Please keep features in alphabetical order. |
| declare_args() { |
| enable_app_list = is_chromeos |
| |
| # Enables support for background apps. |
| enable_background = !is_android && !is_chromecast |
| |
| # 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 |
| |
| # Google Now is disabled to prepare for its removal. |
| # http://crbug.com/539674 |
| enable_google_now = false |
| |
| # 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 |
| |
| # 'Ok Google' hotwording is disabled to prepare for its removal. |
| # http://crbug.com/755579 |
| enable_hotwording = false |
| |
| # 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) |
| |
| # Set to true to bundle all the mash related mojo services into chrome. |
| # Specify --mash to chrome to have chrome start the mash environment. |
| enable_package_mash_services = is_chromeos |
| |
| enable_service_discovery = enable_mdns || 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_chromecast |
| |
| # 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 parts of Chrome's UI written with web technologies (HTML/CSS/JS) |
| # for runtime performance purposes. This does more work at compile time for |
| # speed benefits at runtime (so we skip in debug builds). |
| optimize_webui = !is_debug |
| } |
| |
| # Use brlapi from brltty for braille display support. |
| use_brlapi = is_chromeos |
| |
| _enable_printing = enable_basic_printing || enable_print_preview |
| |
| # 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_background=$enable_background", |
| "enable_extensions=$enable_extensions", |
| "enable_google_now=$enable_google_now", |
| "enable_hangout_services_extension=$enable_hangout_services_extension", |
| "enable_hotwording=$enable_hotwording", |
| "enable_plugins=$enable_plugins", |
| "enable_print_preview=$enable_print_preview", |
| "enable_printing=$_enable_printing", |
| "enable_service_discovery=$enable_service_discovery", |
| "enable_webrtc=$enable_webrtc", |
| "enable_vr=$enable_vr", |
| "mac_views_browser=$mac_views_browser", |
| "safe_browsing_mode=$safe_browsing_mode", |
| "optimize_webui=$optimize_webui", |
| ] |