summaryrefslogtreecommitdiffstats
path: root/chromium/build/config/features.gni
blob: 79fc222d5c0df124a14b83e52c7faff33f98b561 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# Copyright 2014 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.

# This file contains UI-related build flags. It should theoretically be in the
# src/ui directory and only things that depend on the ui module should get the
# definitions.
#
# However, today we have many "bad" dependencies on some of these flags from,
# e.g. base, so they need to be global.
#
# See also build/config/ui.gni

declare_args() {
  # Multicast DNS.
  enable_mdns = is_win || is_linux

  enable_plugins = !is_android || !is_ios
}

# Additional dependent variables -----------------------------------------------

# Set the version of CLD.
#   0: Don't specify the version. This option is for the Finch testing.
#   1: Use only CLD1.
#   2: Use only CLD2.
if (is_android || is_ios) {
  cld_version = 1
} else {
  cld_version = 2
}

# libudev usage. This currently only affects the content layer.
use_udev = is_linux

# Enable the spell checker.
enable_spellcheck = !is_android

enable_pepper_cdms = enable_plugins && (is_linux || is_mac || is_win)

# Enable printing support and UI. This variable is used to configure which
# parts of printing will be built. 0 disables printing completely, 1 enables it
# fully, and 2 enables only the codepath to generate a Metafile (e.g.  usually
# a PDF or EMF) and disables print preview, cloud print, UI, etc.
if (is_android) {
  enable_printing = 2
} else {
  enable_printing = 1
}

# The seccomp-bpf sandbox is only supported on three architectures
# currently.
# Do not disable seccomp_bpf anywhere without talking to
# security@chromium.org!
use_seccomp_bpf = (is_linux || is_android) &&
  (cpu_arch == "x86" || cpu_arch == "x64" || cpu_arch == "arm")

enable_webrtc = !is_ios

# Enable notifications everywhere except Android.
# Android is http://crbug.com/115320
enable_notifications = !is_android

# TODO(brettw) this should be moved to net and only dependents get this define.
disable_ftp_support = is_ios

# Speech input is compiled in by default. Set to 0 to disable.
# TODO(tommyw): Speech Input doesn't exist anymore. Clarify the scope
# of this flag (and probably rename it).
enable_speech_input = true

use_dbus = is_linux

enable_extensions = (!is_android && !is_ios)