Last active
December 2, 2024 08:43
-
-
Save rgonzalezfluendo/e74fd368ad266fe31996642f467b827a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
action_pool_depth | |
Current value (from the default) = -1 | |
From //build/toolchain/BUILD.gn:11 | |
Pool for non goma tasks. | |
added_rust_stdlib_libs | |
Current value (from the default) = [] | |
From //build/config/rust.gni:44 | |
Any extra std rlibs in your Rust toolchain, relative to the standard | |
Rust toolchain. Typically used with 'use_unverified_rust_toolchain' = true | |
allow_critical_memory_pressure_handling_in_foreground | |
Current value (from the default) = false | |
From //content/common/features.gni:14 | |
allow_runtime_configurable_key_storage | |
Current value (from the default) = false | |
From //components/os_crypt/features.gni:17 | |
Whether to make account and service names for the crypto key storage | |
configurable at runtime for embedders. | |
Currently only has an effect on macOS via KeychainPassword | |
also_build_ash_chrome | |
Current value (from the default) = false | |
From //build/config/chromeos/ui_mode.gni:26 | |
Setting this to true when building linux Lacros-chrome will cause it to | |
*also* build linux ash-chrome in a subdirectory using an alternate | |
toolchain. | |
Don't set this unless you're sure you want it, because it'll double | |
your build time. | |
also_build_lacros_chrome | |
Current value (from the default) = false | |
From //build/config/chromeos/ui_mode.gni:30 | |
Setting this to true when building linux ash-chrome will cause it to | |
*also* build linux Lacros-chrome in a subdirectory using an alternate toolchain. | |
also_build_lacros_chrome_for_architecture | |
Current value (from the default) = "" | |
From //build/config/chromeos/ui_mode.gni:35 | |
Setting this when building ash-chrome will cause it to | |
*also* build Lacros-chrome in a subdirectory using an alternate toolchain. | |
You can set this to either "amd64" or "arm". | |
alternate_cdm_storage_id_key | |
Current value (from the default) = "" | |
From //media/media_options.gni:218 | |
If |enable_cdm_storage_id| is set, then an implementation specific key | |
must also be provided. It can be provided by defining CDM_STORAGE_ID_KEY | |
(which takes precedence), or by setting |alternate_cdm_storage_id_key|. | |
The key must be a string of at least 32 characters. | |
android_channel | |
Current value (from the default) = "default" | |
From //build/config/android/channel.gni:8 | |
The channel to build on Android: stable, beta, dev, canary, work, or | |
default. "default" should be used on non-official builds. | |
android_full_debug | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:60 | |
Normally, Android builds are lightly optimized, even for debug builds, to | |
keep binary size down. Setting this flag to true disables such optimization | |
angle_64bit_current_cpu | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:84 | |
angle_assert_always_on | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:79 | |
angle_build_all | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:42 | |
Don't build extra (test, samples etc) for Windows UWP. We don't have | |
infrastructure (e.g. windowing helper functions) in place to run them. | |
angle_build_capture_replay_tests | |
Current value (from the default) = false | |
From //third_party/angle/src/tests/capture_replay_tests/BUILD.gn:9 | |
Determines if we build the capture_replay_tests. Off by default. | |
angle_build_tests | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:258 | |
True if we want to build the ANGLE test suites. On by default in most configs. | |
angle_build_vulkan_system_info | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:240 | |
angle_capture_replay_composite_file_id | |
Current value (from the default) = 1 | |
From //third_party/angle/src/tests/capture_replay_tests/BUILD.gn:14 | |
angle_capture_replay_test_trace_dir | |
Current value (from the default) = "traces" | |
From //third_party/angle/src/tests/capture_replay_tests/BUILD.gn:12 | |
Set the trace directory. Default is traces | |
angle_debug_layers_enabled | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:99 | |
By default we enable debug layers when asserts are turned on. | |
angle_delegate_workers | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:137 | |
By default, ANGLE is using a thread pool for parallel compilation. | |
Activating the delegate worker results in posting the tasks using the | |
embedder API. In Chromium code base, it results in sending tasks to the | |
worker thread pool. | |
angle_egl_extension | |
Current value (from the default) = "" | |
From //third_party/angle/BUILD.gn:62 | |
Allow shared library custom name extensions for setting soname such as libEGL.so.1 | |
angle_enable_abseil | |
Current value (from the default) = true | |
From //third_party/angle/BUILD.gn:50 | |
Abseil has trouble supporting MSVC, particularly regarding component builds. | |
http://crbug.com/1126524 | |
angle_enable_annotator_run_time_checks | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:53 | |
Adds run-time checks to filter out EVENT() messages when the debug annotator is disabled. | |
angle_enable_apple_translator_workarounds | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:252 | |
angle_enable_cgl | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:249 | |
TODO(jdarpinian): Support enabling CGL and EAGL at the same time using the soft linking code. Also support disabling both for Metal-only builds. | |
angle_enable_cl | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:21 | |
Enables OpenCL support, off by default. | |
angle_enable_cl_passthrough | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:169 | |
Enables the OpenCL pass-through back end | |
angle_enable_commit_id | |
Current value (from the default) = true | |
From //third_party/angle/BUILD.gn:46 | |
Enable generating current commit information using git | |
angle_enable_custom_vulkan_cmd_buffers | |
Current value (from the default) = true | |
From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:15 | |
Enable custom (cpu-side) secondary command buffers | |
angle_enable_custom_vulkan_outside_render_pass_cmd_buffers | |
Current value (from the default) = true | |
From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:24 | |
angle_enable_custom_vulkan_render_pass_cmd_buffers | |
Current value (from the default) = true | |
From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:28 | |
angle_enable_d3d11 | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:143 | |
angle_enable_d3d11_compositor_native_window | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:218 | |
angle_enable_d3d9 | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:142 | |
angle_enable_desktop_glsl | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:191 | |
Translator frontend support: | |
angle_enable_eagl | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:224 | |
We should use EAGL (ES) on iOS except on Mac Catalyst on Intel CPUs, which uses CGL (desktop GL). | |
angle_enable_essl | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:195 | |
angle_enable_gl | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:145 | |
angle_enable_gl_desktop | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:163 | |
angle_enable_gl_null | |
Current value (from the default) = true | |
From //third_party/angle/src/libANGLE/renderer/gl/BUILD.gn:16 | |
angle_enable_glsl | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:196 | |
angle_enable_hlsl | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:194 | |
Translator backend support: | |
angle_enable_metal | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:166 | |
http://anglebug.com/2634 | |
angle_enable_msl_through_spirv | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:129 | |
By default, include the SPIR-V based MSL translator (in addition to the direct translator) | |
angle_enable_null | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:162 | |
Disable null backend to save space for official build. | |
angle_enable_overlay | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:244 | |
Enable overlay by default when debug layers are enabled. This is currently only implemented on | |
Vulkan. | |
angle_enable_perf_counter_output | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:221 | |
Disable performance counter output by default | |
angle_enable_renderdoc | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:262 | |
angle_enable_spirv_gen_through_glslang | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:212 | |
angle_enable_swiftshader | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:188 | |
angle_enable_trace | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:197 | |
angle_enable_trace_android_logcat | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:198 | |
angle_enable_trace_events | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:199 | |
angle_enable_vulkan | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:150 | |
angle_enable_vulkan_gpu_trace_events | |
Current value (from the default) = false | |
From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:18 | |
Enable Vulkan GPU trace event capability | |
angle_enable_vulkan_system_info | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:35 | |
Enable using Vulkan to collect system info as a fallback. | |
angle_enable_vulkan_validation_layers | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:205 | |
angle_expose_non_conformant_extensions_and_versions | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:56 | |
Enables non-conformant extensions and features | |
angle_extract_native_libs | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:11 | |
Extract native libs in ANGLE apk. Useful for flamegraph generation. | |
angle_force_context_check_every_call | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:59 | |
Optional feature that forces dirty state whenever we use a new context regardless of thread. | |
angle_glesv2_extension | |
Current value (from the default) = "" | |
From //third_party/angle/BUILD.gn:63 | |
angle_has_frame_capture | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:126 | |
Frame capture code is enabled by default if rapidjson is available. | |
angle_has_histograms | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:255 | |
angle_has_rapidjson | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:94 | |
Indicate if the rapidJSON library is available to build with in third_party/. | |
angle_is_winuwp | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:113 | |
There's no "is_winuwp" helper in BUILDCONFIG.gn, so we define one ourselves | |
angle_libs_suffix | |
Current value (from the default) = "" | |
From //third_party/angle/gni/angle.gni:119 | |
angle_link_glx | |
Current value (from the default) = false | |
From //third_party/angle/BUILD.gn:38 | |
Link in system libGL, to work with apitrace. See doc/DebuggingTips.md. | |
angle_restricted_traces | |
Current value (from the default) = [] | |
From //third_party/angle/gni/angle.gni:23 | |
angle_shared_libvulkan | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:110 | |
Vulkan loader is statically linked on Mac. http://anglebug.com/4477 | |
angle_standalone | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:140 | |
True if we are building inside an ANGLE checkout. | |
angle_use_custom_libvulkan | |
Current value (from the default) = true | |
From //third_party/angle/src/common/vulkan/BUILD.gn:13 | |
angle_use_gbm | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:45 | |
angle_use_spirv_gen_through_glslang | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:172 | |
Use glslang to generate SPIR-V | |
angle_use_vulkan_display | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:50 | |
angle_use_vulkan_null_display | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:159 | |
When set to true, ANGLE will not use VK_KHR_surface and VK_KHR_swapchain | |
extensions. Content can be rendered only off-screen. | |
angle_use_wayland | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:49 | |
angle_use_x11 | |
Current value (from the default) = true | |
From //third_party/angle/gni/angle.gni:46 | |
angle_vulkan_display_mode | |
Current value (from the default) = "simple" | |
From //third_party/angle/gni/angle.gni:14 | |
Display mode for ANGLE vulkan display, could be 'simple' or 'headless', default is 'simple'. | |
angle_vulkan_headers_dir | |
Current value = "//third_party/vulkan-deps/vulkan-headers/src" | |
From //.gn:52 | |
Overridden from the default = "//third_party/angle/third_party/vulkan-deps/vulkan-headers/src" | |
From //third_party/angle/gni/angle.gni:232 | |
angle_vulkan_loader_dir | |
Current value = "//third_party/vulkan-deps/vulkan-loader/src" | |
From //.gn:53 | |
Overridden from the default = "//third_party/angle/third_party/vulkan-deps/vulkan-loader/src" | |
From //third_party/angle/gni/angle.gni:234 | |
angle_vulkan_tools_dir | |
Current value = "//third_party/vulkan-deps/vulkan-tools/src" | |
From //.gn:54 | |
Overridden from the default = "//third_party/angle/third_party/vulkan-deps/vulkan-tools/src" | |
From //third_party/angle/gni/angle.gni:236 | |
angle_vulkan_validation_layers_dir | |
Current value = "//third_party/vulkan-deps/vulkan-validation-layers/src" | |
From //.gn:56 | |
Overridden from the default = "//third_party/angle/third_party/vulkan-deps/vulkan-validation-layers/src" | |
From //third_party/angle/gni/angle.gni:238 | |
angle_wayland_dir | |
Current value (from the default) = "//third_party/angle/third_party/wayland" | |
From //third_party/angle/gni/angle.gni:229 | |
Directory where to find wayland source files | |
angle_with_capture_by_default | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:18 | |
Defaults to capture building to $root_out_dir/angle_libs/with_capture. | |
Switch on to build capture to $root_out_dir. | |
apm_debug_dump | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:117 | |
Selects whether debug dumps for the audio processing module | |
should be generated. | |
archive_seed_corpus | |
Current value (from the default) = true | |
From //build/config/sanitizers/sanitizers.gni:108 | |
When true, seed corpora archives are built. | |
audio_input_sample_rate | |
Current value (from the default) = 16000 | |
From //chromecast/chromecast.gni:118 | |
Recording happens at this sample rate. Must be 16000, 48000 or 96000 Hz. | |
auto_profile_path | |
Current value (from the default) = "" | |
From //build/config/compiler/BUILD.gn:86 | |
AFDO (Automatic Feedback Directed Optimizer) is a form of profile-guided | |
optimization that GCC supports. It used by ChromeOS in their official | |
builds. To use it, set auto_profile_path to the path to a file containing | |
the needed gcov profiling data. | |
blink_animation_use_time_delta | |
Current value (from the default) = false | |
From //third_party/blink/renderer/core/animation/BUILD.gn:11 | |
Use base::TimeDelta to represent time in renderer/core/animations. See | |
http://crbug.com/737867 | |
blink_enable_generated_code_formatting | |
Current value (from the default) = false | |
From //third_party/blink/renderer/config.gni:26 | |
Format the generated files to improve the code readability. Apply clang- | |
format, gn format, etc. to the generated files if possible. | |
blink_gc_plugin | |
Current value (from the default) = true | |
From //third_party/blink/renderer/BUILD.gn:18 | |
Set to true to enable the clang plugin that checks the usage of the Blink | |
garbage-collection infrastructure during compilation. | |
blink_gc_plugin_option_do_dump_graph | |
Current value (from the default) = false | |
From //third_party/blink/renderer/BUILD.gn:22 | |
Set to true to have the clang Blink GC plugin emit class graph (in JSON) | |
with typed pointer edges; for debugging or other (internal) uses. | |
blink_gc_plugin_option_warn_unneeded_finalizer | |
Current value (from the default) = false | |
From //third_party/blink/renderer/BUILD.gn:27 | |
Set to true to have the clang Blink GC plugin additionally check if | |
a class has an empty destructor which would be unnecessarily invoked | |
when finalized. | |
blink_symbol_level | |
Current value (from the default) = -1 | |
From //third_party/blink/renderer/config.gni:40 | |
How many symbols to include in the build of blink. This affects | |
the performance of the build since the symbols are large and dealing with | |
them is slow. | |
2 means regular build with symbols. | |
1 means medium symbols, usually enough for backtraces only. Symbols with | |
internal linkage (static functions or those in anonymous namespaces) may not | |
appear when using this level. On some platforms (including Windows) | |
filenames and line numbers will be included. Information about types and | |
locals is not included. | |
0 means minimal symbols, which on some platforms (including Windows) may | |
include function names suitable for backtraces. | |
-1 means auto-set according to debug/release and platform. | |
branding_file_path | |
Current value (from the default) = "//chrome/app/theme/chromium/BRANDING" | |
From //build/config/chrome_build.gni:24 | |
The path to the BRANDING file in chrome/app/theme. | |
branding_path_component | |
Current value (from the default) = "chromium" | |
From //build/config/chrome_build.gni:18 | |
build_angle_deqp_tests | |
Current value (from the default) = false | |
From //third_party/angle/src/tests/BUILD.gn:12 | |
Don't build dEQP by default. | |
build_angle_gles1_conform_tests | |
Current value (from the default) = false | |
From //third_party/angle/src/tests/BUILD.gn:13 | |
build_angle_perftests | |
Current value (from the default) = true | |
From //third_party/angle/src/tests/BUILD.gn:16 | |
build_angle_trace_perf_tests | |
Current value (from the default) = false | |
From //third_party/angle/src/tests/BUILD.gn:14 | |
build_contextual_search | |
Current value (from the default) = false | |
From //components/contextual_search/features.gni:6 | |
build_dawn_tests | |
Current value (from the default) = true | |
From //ui/gl/features.gni:26 | |
Should Dawn test binaries (unittests, end2end_tests, perf_tests) be built? | |
Independent of use_dawn, which controls whether Dawn is used in Chromium. | |
build_libsrtp_tests | |
Current value (from the default) = false | |
From //third_party/libsrtp/BUILD.gn:10 | |
Tests may not be appropriate for some build environments, e.g. Windows. | |
Rather than enumerate valid options, we just let clients ask for them. | |
build_tflite_with_ruy | |
Current value (from the default) = true | |
From //third_party/tflite/features.gni:13 | |
Turns on TFLITE_WITH_RUY, using ruy as the gemm backend instead of gemmlowp. | |
build_tflite_with_xnnpack | |
Current value (from the default) = true | |
From //third_party/tflite/features.gni:10 | |
This enables building TFLite with XNNPACK. Currently only available for | |
Linux x64. | |
build_with_internal_optimization_guide | |
Current value (from the default) = false | |
From //components/optimization_guide/features.gni:38 | |
Use is_chrome_branded as a proxy for "does src-internal exist". | |
build_with_mozilla | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:144 | |
Enable to use the Mozilla internal settings. | |
build_with_tflite_lib | |
Current value (from the default) = true | |
From //components/optimization_guide/features.gni:14 | |
builtin_cert_verifier_feature_supported | |
Current value (from the default) = false | |
From //net/features.gni:46 | |
Platforms where both the builtin cert verifier and a platform verifier are | |
supported and may be switched between using the CertVerifierBuiltin feature | |
flag. This does not include platforms where the builtin cert verifier is | |
the only verifier supported. | |
builtin_cert_verifier_policy_supported | |
Current value (from the default) = false | |
From //chrome/common/features.gni:35 | |
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. | |
bundle_widevine_cdm | |
Current value (from the default) = false | |
From //third_party/widevine/cdm/widevine.gni:58 | |
Widevine CDM is bundled as part of Google Chrome builds. | |
cast_allow_developer_certificate | |
Current value (from the default) = false | |
From //third_party/openscreen/src/build/config/cast.gni:8 | |
Whether or not self-signed certificates are enabled for the receiver | |
and sender implementations. | |
cast_build_incremental | |
Current value (from the default) = "999999" | |
From //chromecast/chromecast.gni:34 | |
The incremental build number. The Cast automated builders will set this | |
value to indicate the buildset. Note: The default value should be greater | |
than any value the builder may assign to prevent attempted automatic updates | |
when the default value is used. | |
cast_is_debug | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:28 | |
If true, IS_CAST_DEBUG_BUILD() will evaluate to 1 in version.h. Otherwise, | |
it will evaluate to 0. Overriding this when is_debug=false is useful for | |
doing engineering builds. | |
cast_streaming_enable_remoting | |
Current value (from the default) = false | |
From //components/cast_streaming/features.gni:9 | |
Whether the cast remoting feature should be enabled in this build. | |
cast_volume_control_in_avsettings | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:59 | |
Set to true on devices where the VolumeControl implementation is in the | |
libcast_avsettings_1.0.so instead of in libcast_media_1.0.so. | |
cc_wrapper | |
Current value (from the default) = "" | |
From //build/toolchain/cc_wrapper.gni:37 | |
Set to "ccache", "icecc" or "distcc". Probably doesn't work on windows. | |
chrome_pgo_phase | |
Current value (from the default) = 0 | |
From //build/config/compiler/pgo/pgo.gni:19 | |
Specify the current PGO phase. | |
Here's the different values that can be used: | |
0 : Means that PGO is turned off. | |
1 : Used during the PGI (instrumentation) phase. | |
2 : Used during the PGO (optimization) phase. | |
PGO profiles are generated from `dcheck_always_on = false` builds. Mixing | |
those profiles with `dcheck_always_on = true` builds can cause the compiler | |
to think some code is hotter than it actually is, potentially causing very | |
bad compile times. | |
chrome_root_store_policy_supported | |
Current value (from the default) = false | |
From //chrome/common/features.gni:43 | |
Platforms where the ChromeRootStoreEnabled enterprise policy is | |
supported. This must must match the supported_on/future_on list of the | |
policy in policy_templates.json and be a subset of the | |
chrome_root_store_supported platforms. | |
See https://crbug.com/1228958. This can be removed when the Chrome Root | |
Store is unconditionally enabled on all platforms. | |
chrome_root_store_supported | |
Current value (from the default) = false | |
From //net/features.gni:50 | |
Platforms for which the builtin cert verifier can use the Chrome Root Store. | |
See https://crbug.com/1216547 for status. | |
chrome_wide_echo_cancellation_supported | |
Current value (from the default) = true | |
From //media/media_options.gni:306 | |
Currently it is available on Win, Mac and Linux, since it requires the audio | |
service to run in a separate process. | |
chromecast_branding | |
Current value (from the default) = "public" | |
From //build/config/chromecast_build.gni:21 | |
chromecast_branding is used to include or exclude Google-branded components. | |
Set it to "public" for a Chromium build. | |
TODO(crbug.com/1293517): Remove usages in Chromium and move to //chromecast. | |
chromeos_afdo_platform | |
Current value (from the default) = "atom" | |
From //build/config/compiler/BUILD.gn:109 | |
This configuration is used to select a default profile in Chrome OS based on | |
the microarchitectures we are using. This is only used if | |
clang_use_default_sample_profile is true and clang_sample_profile_path is | |
empty. | |
chromeos_is_browser_only | |
Current value (from the default) = false | |
From //build/config/chromeos/ui_mode.gni:19 | |
Deprecated, use is_lacros. | |
This controls UI configuration for Chrome. | |
If this flag is set, we assume Chrome runs on Chrome OS devices, using | |
Wayland (instead of X11). | |
TODO(crbug.com/1052397): | |
Define chromeos_product instead, which takes either "browser" or "ash". | |
Re-define the following variables as: | |
is_lacros = chromeos_product == "browser" | |
is_ash = chromeos_product == "ash" | |
clang_base_path | |
Current value (from the default) = "//third_party/llvm-build/Release+Asserts" | |
From //build/config/clang/clang.gni:17 | |
clang_diagnostic_dir | |
Current value (from the default) = "../../tools/clang/crashreports" | |
From //build/config/compiler/compiler.gni:127 | |
clang_emit_debug_info_for_profiling | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:112 | |
Emit debug information for profiling wile building with clang. | |
clang_sample_profile_path | |
Current value (from the default) = "" | |
From //build/config/compiler/BUILD.gn:93 | |
Path to an AFDO profile to use while building with clang, if any. Empty | |
implies none. | |
clang_use_chrome_plugins | |
Current value (from the default) = true | |
From //build/config/clang/clang.gni:14 | |
clang_use_default_sample_profile | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:102 | |
clang_version | |
Current value (from the default) = "15.0.0" | |
From //build/toolchain/toolchain.gni:36 | |
com_init_check_hook_disabled | |
Current value (from the default) = false | |
From //base/BUILD.gn:63 | |
Set to true to disable COM init check hooks. | |
compile_credentials | |
Current value (from the default) = true | |
From //sandbox/linux/BUILD.gn:17 | |
compile_suid_client | |
Current value (from the default) = true | |
From //sandbox/linux/BUILD.gn:15 | |
compiler_timing | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:115 | |
Turn this on to have the compiler output extra timing information. | |
compute_build_timestamp | |
Current value (from the default) = "compute_build_timestamp.py" | |
From //build/timestamp.gni:17 | |
This should be the filename of a script that prints a single line | |
containing an integer that's a unix timestamp in UTC. | |
This timestamp is used as build time and will be compiled into | |
other code. | |
This argument may look unused. Before removing please check with the | |
chromecast team to see if they still use it internally. | |
compute_inputs_for_analyze | |
Current value (from the default) = false | |
From //build/config/compute_inputs_for_analyze.gni:13 | |
Enable this flag when running "gn analyze". | |
This causes some gn actions to compute inputs immediately (via exec_script) | |
where they would normally compute them only when executed (and write them to | |
a depfile). | |
This flag will slow down GN, but is required for analyze to work properly. | |
concurrent_links | |
Current value (from the default) = -1 | |
From //build/toolchain/concurrent_links.gni:23 | |
Limit the number of concurrent links; we often want to run fewer | |
links at once than we do compiles, because linking is memory-intensive. | |
The default to use varies by platform and by the amount of memory | |
available, so we call out to a script to get the right value. | |
content_shell_major_version | |
Current value (from the default) = "999" | |
From //content/shell/BUILD.gn:38 | |
content_shell_product_name | |
Current value (from the default) = "Content Shell" | |
From //content/shell/BUILD.gn:36 | |
content_shell_version | |
Current value (from the default) = "999.77.34.5" | |
From //content/shell/BUILD.gn:37 | |
coverage_instrumentation_input_file | |
Current value (from the default) = "" | |
From //build/config/coverage/coverage.gni:36 | |
The path to the coverage instrumentation input file should be a source root | |
absolute path (e.g. //out/Release/coverage_instrumentation_input.txt), and | |
the file consists of multiple lines where each line represents a path to a | |
source file, and the paths must be relative to the root build directory. | |
e.g. ../../base/task/post_task.cc for build directory 'out/Release'. | |
NOTE that this arg will be non-op if use_clang_coverage is false. | |
cppgc_allow_allocations_in_prefinalizers | |
Current value (from the default) = false | |
From //v8/BUILD.gn:297 | |
Enable allocations during prefinalizer invocations. | |
cppgc_enable_caged_heap | |
Current value (from the default) = true | |
From //v8/BUILD.gn:290 | |
cppgc_enable_object_names | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:95 | |
Enable object names in cppgc for debug purposes. | |
cppgc_enable_pointer_compression | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:101 | |
Enable pointer compression in cppgc. | |
cppgc_enable_verify_heap | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:294 | |
Enables additional heap verification phases and checks. | |
cppgc_enable_young_generation | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:98 | |
Enable young generation in cppgc. | |
cppgc_is_standalone | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:92 | |
crashpad_dependencies | |
Current value = "chromium" | |
From //.gn:49 | |
Overridden from the default = "standalone" | |
From //third_party/crashpad/crashpad/build/crashpad_buildconfig.gni:19 | |
Determines various flavors of build configuration, and which concrete | |
targets to use for dependencies. Valid values are "standalone", "chromium", | |
"fuchsia", "dart" or "external". | |
crashpad_http_transport_impl | |
Current value (from the default) = "libcurl" | |
From //third_party/crashpad/crashpad/util/net/tls.gni:21 | |
crashpad_use_boringssl_for_http_transport_socket | |
Current value (from the default) = true | |
From //third_party/crashpad/crashpad/util/net/tls.gni:30 | |
cros_board | |
Current value (from the default) = "" | |
From //build/config/chromeos/args.gni:8 | |
This is used only by Simple Chrome to bind its value to test-runner scripts | |
generated at build-time. | |
cros_sdk_version | |
Current value (from the default) = "" | |
From //build/config/chromeos/args.gni:12 | |
Similar to cros_board above, this used only by test-runner scripts in | |
Simple Chrome. | |
current_cpu | |
Current value (from the default) = "" | |
(Internally set; try `gn help current_cpu`.) | |
current_os | |
Current value (from the default) = "" | |
(Internally set; try `gn help current_os`.) | |
custom_toolchain | |
Current value (from the default) = "" | |
From //build/config/BUILDCONFIG.gn:147 | |
Allows the path to a custom target toolchain to be injected as a single | |
argument, and set as the default toolchain. | |
custom_vulkan_loader_library_name | |
Current value (from the default) = "" | |
From //third_party/vulkan-deps/vulkan-loader/src/BUILD.gn:20 | |
dawn_always_assert | |
Current value (from the default) = false | |
From //third_party/dawn/scripts/dawn_features.gni:44 | |
Enable Dawn's ASSERTs even in release builds | |
dawn_complete_static_libs | |
Current value (from the default) = false | |
From //third_party/dawn/scripts/dawn_features.gni:49 | |
Should the Dawn static libraries be fully linked vs. GN's default of | |
treating them as source sets. This is useful for people using Dawn | |
standalone to produce static libraries to use in their projects. | |
dawn_enable_d3d12 | |
Current value (from the default) = false | |
From //third_party/dawn/scripts/dawn_features.gni:52 | |
Enables the compilation of Dawn's D3D12 backend | |
dawn_enable_desktop_gl | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:63 | |
Enables the compilation of Dawn's OpenGL backend | |
(best effort, non-conformant) | |
dawn_enable_error_injection | |
Current value (from the default) = false | |
From //third_party/dawn/scripts/dawn_features.gni:78 | |
dawn_enable_metal | |
Current value (from the default) = false | |
From //third_party/dawn/scripts/dawn_features.gni:55 | |
Enables the compilation of Dawn's Metal backend | |
dawn_enable_null | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:59 | |
Enables the compilation of Dawn's Null backend | |
(required for unittests, obviously non-conformant) | |
dawn_enable_opengles | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:69 | |
dawn_enable_vulkan | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:73 | |
Enables the compilation of Dawn's Vulkan backend | |
Disables vulkan when compiling for UWP, since UWP only supports d3d | |
dawn_enable_vulkan_loader | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:92 | |
dawn_enable_vulkan_validation_layers | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:87 | |
dawn_use_angle | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:35 | |
dawn_use_swiftshader | |
Current value (from the default) = true | |
From //third_party/dawn/scripts/dawn_features.gni:39 | |
Enables SwiftShader as the fallback adapter. Requires dawn_swiftshader_dir | |
to be set to take effect. | |
dcheck_always_on | |
Current value (from the default) = true | |
From //build/config/dcheck_always_on.gni:25 | |
dcheck_is_configurable | |
Current value (from the default) = false | |
From //build/config/dcheck_always_on.gni:14 | |
Enables DCHECKs to be built-in, but to default to being non-fatal/log-only. | |
DCHECKS can then be set as fatal/non-fatal via the "DcheckIsFatal" feature. | |
See https://bit.ly/dcheck-albatross for details on how this is used. | |
default_command_line_flags | |
Current value (from the default) = [] | |
From //chromecast/chromecast.gni:93 | |
Contain default command line switches we want to set. | |
This will get joined into a comma-separated list that looks like: | |
"test-flag-one=public,test-flag-two=true,test-flag-three=1," | |
TODO(ziyangch): make the parsing logic have ability to quote/escape characters. | |
device_user_agent_suffix | |
Current value (from the default) = "" | |
From //chromecast/chromecast.gni:147 | |
device specific string to append to User string. | |
devtools_components_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/ui/components/visibility.gni:8 | |
devtools_dcheck_always_on | |
Current value (from the default) = false | |
From //third_party/devtools-frontend/src/scripts/build/ninja/vars.gni:8 | |
devtools_entrypoints_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/entrypoints/visibility.gni:8 | |
devtools_fast_bundle | |
Current value (from the default) = true | |
From //third_party/devtools-frontend/src/scripts/build/ninja/bundle.gni:12 | |
If this is enabled, devtools build uses esbuild instead of rollup.js to | |
bundle JavaScript files. | |
devtools_grd_location | |
Current value (from the default) = "third_party/devtools-frontend/src/front_end/devtools_resources.grd" | |
From //build/config/devtools.gni:29 | |
devtools_lit_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/ui/lit-html/visibility.gni:8 | |
devtools_location | |
Current value (from the default) = "third_party/devtools-frontend/src/" | |
From //build/config/devtools.gni:27 | |
devtools_models_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/models/visibility.gni:8 | |
devtools_panels_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/panels/visibility.gni:8 | |
devtools_root_location | |
Current value (from the default) = "third_party/devtools-frontend/src" | |
From //build/config/devtools.gni:26 | |
devtools_skip_typecheck | |
Current value (from the default) = true | |
From //third_party/devtools-frontend/src/third_party/typescript/typescript.gni:15 | |
devtools_third_party_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/third_party/visibility.gni:8 | |
devtools_ui_legacy_visibility | |
Current value (from the default) = ["*"] | |
From //third_party/devtools-frontend/src/front_end/ui/legacy/visibility.gni:8 | |
devtools_use_remoteexec | |
Current value (from the default) = false | |
From //third_party/devtools-frontend/src/third_party/typescript/typescript.gni:13 | |
Set to true to enable remote compilation of TypeScript using reclient. | |
This flag is temporarily until DevTools reclient support has stabilized. | |
At that point, this flag will be folded together with "use_remoteexec". | |
TODO(crbug.com/1139220): Remove the flag once we are confident. | |
devtools_visibility | |
Current value = ["*"] | |
From //.gn:63 | |
Overridden from the default = [] | |
From //third_party/devtools-frontend/src/front_end/visibility.gni:6 | |
dfmify_feed_v2_modern | |
Current value (from the default) = false | |
From //components/feed/features.gni:13 | |
Whether to include Feed as a DFM in ChromeModern builds. | |
disable_brotli_filter | |
Current value (from the default) = false | |
From //net/features.gni:22 | |
Do not disable brotli filter by default. | |
disable_fieldtrial_testing_config | |
Current value (from the default) = false | |
From //components/variations/service/BUILD.gn:14 | |
Set to true make a build that disables activation of field trial tests | |
specified in testing/variations/fieldtrial_testing_config.json. | |
Note: For Chrome-branded Android builds, this is always considered as set to | |
true (see below). This is done to avoid the binary size impact (~40 KiB) on | |
Android. | |
disable_file_support | |
Current value (from the default) = false | |
From //net/features.gni:9 | |
Disables support for file URLs. File URL support requires use of icu. | |
disable_histogram_support | |
Current value (from the default) = false | |
From //components/cronet/BUILD.gn:16 | |
If set to true, this will remove histogram manager to reduce binary size. | |
disable_libfuzzer | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:86 | |
Helper variable for testing builds with disabled libfuzzer. | |
Not for client use. | |
disable_secure_flac_and_opus_decoding | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:97 | |
Set to true to disable secure flac/opus support in EME, when using | |
cast CMA media backend and supporting Widevine or Playready. | |
enable_arcore | |
Current value (from the default) = false | |
From //device/vr/buildflags/buildflags.gni:38 | |
Controls inclusion of code for ARCore that must be identical across configs. | |
Once crbug.com/920424 is resolved, this will exactly control whether ARCore | |
is supported. | |
TODO(crbug.com/843374): AR should not depend on |enable_vr|. | |
enable_assistant | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:47 | |
Set true to enable assistant features. | |
enable_assistant_integration_tests | |
Current value (from the default) = false | |
From //chromeos/ash/components/assistant/assistant.gni:18 | |
Enable Assistant integration tests using LibAssistant and a fake S3 server. | |
This requires libassistant.so to support grpc communication with the S3 | |
server, which increases the library size, which is why we introduced this | |
flag to disable them in the release builds. | |
enable_audio_capture_service | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:124 | |
Set to true to enable audio capture service for audio input. | |
enable_autofill_assistant_api | |
Current value (from the default) = false | |
From //extensions/buildflags/buildflags.gni:10 | |
Compile time flag for the Autofill Assistant API. | |
WARNING: This must not be enabled in official builds. | |
enable_av1_decoder | |
Current value (from the default) = true | |
From //media/media_options.gni:108 | |
enable_background_contents | |
Current value (from the default) = true | |
From //chrome/common/features.gni:46 | |
Enables support for background apps. | |
enable_background_mode | |
Current value (from the default) = true | |
From //chrome/common/features.gni:47 | |
enable_backup_ref_ptr_slow_checks | |
Current value (from the default) = false | |
From //base/allocator/allocator.gni:108 | |
enable_base_tracing | |
Current value (from the default) = true | |
From //build_overrides/build.gni:22 | |
Tracing support requires //third_party/perfetto, which is not available in | |
libchrome (CrOS's version of //base). This flag can disable tracing support | |
altogether, in which case all tracing instrumentation in //base becomes a | |
no-op. | |
TODO(crbug/1065905): Add dependency on perfetto to support typed events. | |
enable_basic_print_dialog | |
Current value (from the default) = true | |
From //chrome/common/features.gni:51 | |
Enable the printing system dialog for platforms that support printing | |
and have a system dialog. | |
enable_basic_printing | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:14 | |
Enables basic printing support and UI. | |
enable_blink_bindings_tracing | |
Current value (from the default) = false | |
From //third_party/blink/renderer/platform/BUILD.gn:193 | |
Enable TRACE_EVENT instrumentation for Blink bindings. | |
Disabled by default as it increases binary size. | |
enable_browser_speech_service | |
Current value (from the default) = true | |
From //chrome/services/speech/buildflags/buildflags.gni:20 | |
Whether the speech service is implemented in the browser as a hosted service | |
possibly running in a utility process. | |
On other platforms, that service is either | |
* implemented some other way (e.g. ChromeOS, where ML Service provides the | |
implementation); or | |
* not implemented, and corresponding features don't exist as part of Chrome | |
(e.g. Android, where Live Caption is instead a system feature). | |
enable_call_graph_profile_sort | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:162 | |
Turn off the --call-graph-profile-sort flag for lld by default. Enable | |
selectively for targets where it's beneficial. | |
enable_callgrind | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:54 | |
Enable callgrind for performance profiling | |
enable_captive_portal_detection | |
Current value (from the default) = true | |
From //components/captive_portal/core/features.gni:9 | |
enable_cast_audio_manager_mixer | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:102 | |
enable_cast_audio_renderer | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:38 | |
True to enable the cast audio renderer. | |
TODO(crbug.com/1293520): Remove this buildflag. | |
enable_cast_media_runtime | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:140 | |
True to link in alternate build targets for the Cast Media Runtime. | |
enable_cast_receiver | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:47 | |
Set this true for a Chromecast build. Chromecast builds are supported on | |
Linux, Android, ChromeOS, and Fuchsia. | |
During the migration from is_chromecast, this must be set to the same value | |
as is_chromecast. | |
enable_cast_renderer | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:71 | |
enable_cdm_host_verification | |
Current value (from the default) = false | |
From //media/media_options.gni:207 | |
enable_cdm_storage_id | |
Current value (from the default) = false | |
From //media/media_options.gni:211 | |
Enable Storage ID which is used by CDMs. This is only available with chrome | |
branding, but may be overridden by other embedders. | |
enable_cet_shadow_stack | |
Current value (from the default) = true | |
From //build/config/compiler/compiler.gni:134 | |
Mark binaries as compatible with Shadow Stack of Control-flow Enforcement | |
Technology (CET). If Windows version and hardware supports the feature and | |
it's enabled by OS then additional validation of return address will be | |
performed as mitigation against Return-oriented programming (ROP). | |
https://chromium.googlesource.com/chromium/src/+/main/docs/design/sandbox.md#cet-shadow-stack | |
enable_chrome_notifications | |
Current value (from the default) = true | |
From //chrome/common/features.gni:54 | |
Enables usage of notifications via Chrome's MessageCenter. | |
enable_chromecast_extensions | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:192 | |
enable_chromecast_webui | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:44 | |
If true, Chromecast WebUI resources are included in a build. | |
TODO(antz): default to false for audio-only builds, might need further | |
clean up (b/27119303) | |
enable_chromium_runtime_cast_renderer | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:137 | |
True to use the Chromium runtime for cast rendering. | |
enable_chromium_updater | |
Current value (from the default) = false | |
From //chrome/browser/buildflags.gni:17 | |
Chromium Updater is a cross-platform updater for desktop clients built using | |
Chromium code and tools. Code is in //chrome/updater. The design doc is | |
located at http://bit.ly/chromium-updater. Chrome is currently installed and | |
updated with proprietary updater (Omaha & Keystone). This build flag allows | |
integration with the open source, cross-platform Chromium updater. | |
TODO(crbug.com/1054060) | |
enable_click_to_call | |
Current value (from the default) = true | |
From //chrome/common/features.gni:57 | |
Disable Click to Call on Fuchsia. | |
enable_color_manager | |
Current value (from the default) = false | |
From //components/exo/buildflags.gni:11 | |
If true, enables zcr_color_manager_v1. This is a temporary flag meant to | |
guard an in-progress implementation, to be replaced by a feature flag. | |
enable_cros_libassistant | |
Current value (from the default) = false | |
From //chromeos/ash/components/assistant/assistant.gni:6 | |
Enable assistant implementation based on libassistant. | |
enable_cros_media_app | |
Current value (from the default) = false | |
From //ash/webui/media_app_ui/media_app_ui.gni:7 | |
Whether to enable the "real" ChromeOS Media App. When false, a mock app is | |
bundled for testing integration points. | |
enable_cross_trusted | |
Current value (from the default) = true | |
From //native_client_sdk/src/BUILD.gn:10 | |
Set to true if cross compiling trusted (e.g. building sel_ldr_arm on x86) | |
binaries is supported. | |
enable_dangling_raw_ptr_checks | |
Current value (from the default) = false | |
From //base/allocator/allocator.gni:109 | |
enable_dav1d_decoder | |
Current value (from the default) = true | |
From //media/media_options.gni:87 | |
enable_discovery | |
Current value (from the default) = false | |
From //chrome/browser/sharing/buildflags.gni:6 | |
enable_distro_version_check | |
Current value (from the default) = true | |
From //chrome/installer/linux/BUILD.gn:29 | |
Enables checks that ensure the packages are installable on all supported | |
distributions. | |
enable_downgrade_processing | |
Current value (from the default) = true | |
From //chrome/browser/downgrade/buildflags.gni:9 | |
enable_downstream_media_tests | |
Current value (from the default) = false | |
From //chrome/test/media_router/BUILD.gn:10 | |
Many of the targets defined in this file have dependencies that cannot be | |
satisfied without additional downstream resources. Explicitly guard them | |
them behind this flag so that we do not attempt to build or isolate targets | |
in public chromium checkouts. | |
enable_dsyms | |
Current value (from the default) = false | |
From //build/config/apple/symbols.gni:17 | |
Produce dSYM files for targets that are configured to do so. dSYM | |
generation is controlled globally as it is a linker output (produced via | |
the //build/toolchain/apple/linker_driver.py. Enabling this will result in | |
all shared library, loadable module, and executable targets having a dSYM | |
generated. | |
enable_expensive_dchecks | |
Current value (from the default) = true | |
From //build/config/dcheck_always_on.gni:30 | |
Set to false to disable EXPENSIVE_DCHECK()s. | |
enable_extensions | |
Current value (from the default) = true | |
From //extensions/buildflags/buildflags.gni:6 | |
enable_external_mojo_services | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:109 | |
Set to true to enable external Mojo services to communicate with services | |
within cast_shell. | |
enable_fake_assistant_microphone | |
Current value (from the default) = false | |
From //chromeos/ash/components/assistant/assistant.gni:10 | |
Enable a fake microphone, which can replay audio files as microphone input. | |
See chromeos/ash/components/assistant/tools/send-audio.sh | |
enable_feed_v2 | |
Current value (from the default) = true | |
From //components/feed/features.gni:7 | |
Whether Feed is enabled in the build. | |
enable_feed_v2_modern | |
Current value (from the default) = true | |
From //components/feed/features.gni:10 | |
Whether to include Feed in ChromeModern builds. | |
enable_ffmpeg_video_decoders | |
Current value (from the default) = true | |
From //media/media_options.gni:192 | |
On Android, FFMpeg is built without video decoders by default. | |
This flag gives the option to override that decision in case there are no | |
hardware decoders. To do so, you will also need to update ffmpeg build files | |
in order to define which decoders to build in. | |
enable_full_stack_frames_for_profiling | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:67 | |
Compile in such a way as to make it possible for the profiler to unwind full | |
stack frames. Setting this flag has a large effect on the performance of the | |
generated code than just setting profiling, but gives the profiler more | |
information to analyze. | |
Requires profiling to be set to true. | |
enable_google_benchmarks | |
Current value (from the default) = false | |
From //third_party/google_benchmark/buildconfig.gni:11 | |
Google Benchmark is not checked out by default, because it is only used by | |
a few specialized benchmarks that most developers do not interact with. | |
enable_gpu_client_logging | |
Current value (from the default) = false | |
From //gpu/command_buffer/client/BUILD.gn:13 | |
Enable GPU client logging without DCHECK being on. | |
enable_gpu_service_logging | |
Current value (from the default) = false | |
From //ui/gl/BUILD.gn:21 | |
Whether service side logging (actual calls into the GL driver) is enabled | |
or not. | |
enable_grpc_ares | |
Current value (from the default) = false | |
From //third_party/grpc/BUILD.gn:9 | |
Compiles with ares. | |
enable_gvr_services | |
Current value (from the default) = false | |
From //device/vr/buildflags/buildflags.gni:11 | |
enable_gwp_asan | |
Current value (from the default) = true | |
From //components/gwp_asan/buildflags/buildflags.gni:25 | |
Convenience definition | |
enable_gwp_asan_malloc | |
Current value (from the default) = true | |
From //components/gwp_asan/buildflags/buildflags.gni:19 | |
Is GWP-ASan malloc/PartitionAlloc hooking enabled for chrome/ on a given | |
platform. | |
enable_gwp_asan_partitionalloc | |
Current value (from the default) = true | |
From //components/gwp_asan/buildflags/buildflags.gni:20 | |
enable_hangout_services_extension | |
Current value (from the default) = false | |
From //chrome/common/features.gni:61 | |
Hangout services is an extension that adds extra features to Hangouts. | |
It is enableable separately to facilitate testing. | |
enable_hevc_parser_and_hw_decoder | |
Current value (from the default) = false | |
From //media/media_options.gni:100 | |
enable_hls_demuxer | |
Current value (from the default) = false | |
From //media/media_options.gni:94 | |
Enable HLS manifest parser and demuxer. | |
enable_hls_sample_aes | |
Current value (from the default) = false | |
From //media/media_options.gni:80 | |
enable_ink | |
Current value (from the default) = false | |
From //pdf/features.gni:18 | |
Enable ink libraries provided by the ChromeOS media app dependency. | |
This argument indicates whether the ink libraries provided by the ChromeOS | |
media app dependency is enabled. It also determines whether the annotation | |
feature is enabled for the PDF viewer. | |
enable_ipc_fuzzer | |
Current value (from the default) = false | |
From //tools/ipc_fuzzer/ipc_fuzzer.gni:14 | |
Build IPC fuzzer by default if it's a supported configuration. For | |
sanitizer builds, this needs to be enabled explicitly as they can be slow | |
(especially MSan). | |
enable_ipc_logging | |
Current value (from the default) = false | |
From //ipc/features.gni:7 | |
Enabling debug builds automatically sets enable_ipc_logging to true. | |
enable_iterator_debugging | |
Current value (from the default) = false | |
From //build/config/c++/c++.gni:41 | |
When set, enables libc++ debug mode with iterator debugging. | |
Iterator debugging is generally useful for catching bugs. But it can | |
introduce extra locking to check the state of an iterator against the state | |
of the current object. For iterator- and thread-heavy code, this can | |
significantly slow execution - two orders of magnitude slowdown has been | |
seen (crbug.com/903553) and iterator debugging also slows builds by making | |
generation of snapshot_blob.bin take ~40-60 s longer. Therefore this | |
defaults to off. | |
enable_js_protobuf | |
Current value (from the default) = true | |
From //third_party/protobuf/proto_library.gni:145 | |
Allows subprojects to omit javascript dependencies (e.g.) closure_compiler | |
and google-closure-library. | |
enable_js_type_check | |
Current value (from the default) = true | |
From //third_party/closure_compiler/compile_js.gni:11 | |
Enable closure type-checking for Chrome's web technology-based UI. This | |
enables the webui_closure_compile target which does a no-op without this | |
flag enabled. Requires Java. | |
enable_jxl_decoder | |
Current value (from the default) = true | |
From //third_party/blink/public/public_features.gni:9 | |
If true, adds support for JPEG XL image decoding. | |
enable_keystone_registration_framework | |
Current value (from the default) = true | |
From //chrome/BUILD.gn:60 | |
Indicates whether keystone registration framework should be enabled (see | |
action("keystone_registration_framework") below). There are some tests | |
where we'd like for it to be disabled. (https://crbug.com/909080) | |
enable_kythe_annotations | |
Current value (from the default) = false | |
From //build/toolchain/kythe.gni:10 | |
Enables Kythe annotations necessary to build cross references. | |
enable_libaom | |
Current value (from the default) = true | |
From //third_party/libaom/options.gni:7 | |
Enable encoding and decoding AV1 video files. | |
enable_libaom_decoder | |
Current value (from the default) = false | |
From //third_party/libaom/options.gni:10 | |
To be deprecated soon. | |
enable_libgav1_decoder | |
Current value (from the default) = false | |
From //third_party/libgav1/options.gni:12 | |
enable_library_cdms | |
Current value (from the default) = true | |
From //media/media_options.gni:200 | |
Enables the use of library CDMs that implements the interface defined at | |
media/cdm/api/content_decryption_module.h. If true, the actually library CDM | |
will be hosted in the mojo CDM service running in the CDM (utility) process. | |
Used for all desktop platforms except Fuchsia (crbug.com/1265618). | |
enable_linux_installer | |
Current value (from the default) = true | |
From //chrome/installer/BUILD.gn:11 | |
enable_location_source | |
Current value (from the default) = true | |
From //base/BUILD.gn:52 | |
Indicates if the Location object contains the source code information | |
(file, function, line). False means only the program counter (and currently | |
file name) is saved. | |
enable_log_error_not_reached | |
Current value (from the default) = false | |
From //build/config/logging.gni:12 | |
enable_logging_override | |
Current value (from the default) = false | |
From //media/media_options.gni:85 | |
Enable logging override, e.g. enable DVLOGs through level 2 at build time. | |
On Chromecast, these are logged as INFO. | |
On Fuchsia, these are logged as VLOGs. | |
enable_maldoca | |
Current value (from the default) = true | |
From //chrome/services/file_util/public/features.gni:14 | |
Enables analysis of Office documents for malicious macros | |
enable_mdns | |
Current value (from the default) = true | |
From //net/features.gni:25 | |
Multicast DNS. | |
enable_media_drm_storage | |
Current value (from the default) = false | |
From //media/media_options.gni:91 | |
Enable browser managed persistent metadata storage for EME persistent | |
session and persistent usage record session. | |
enable_media_foundation_widevine_cdm | |
Current value (from the default) = false | |
From //third_party/widevine/cdm/widevine.gni:51 | |
enable_media_overlay | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:130 | |
Set to true to enable media overlay for volume bar, etc. | |
enable_media_remoting | |
Current value (from the default) = true | |
From //media/media_options.gni:294 | |
This switch defines whether the Media Remoting implementation will be built. | |
When enabled, media is allowed to be renderer and played back on remote | |
devices when the tab is being casted and other conditions are met. | |
enable_media_remoting_rpc | |
Current value (from the default) = true | |
From //media/media_options.gni:300 | |
Media Remoting RPC is disabled on Android since it's unused but increases | |
the native binary size by ~70Kb. | |
enable_message_center | |
Current value (from the default) = true | |
From //ui/base/ui_features.gni:30 | |
enable_modular_updater | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:33 | |
Set true to enable modular_updater. | |
enable_mojo_tracing | |
Current value (from the default) = false | |
From //mojo/public/cpp/bindings/BUILD.gn:12 | |
enable_mojom_closure_compile | |
Current value (from the default) = true | |
From //mojo/public/tools/bindings/mojom.gni:44 | |
Enables Closure compilation of generated JS lite bindings. In environments | |
where compilation is supported, any mojom target "foo" will also have a | |
corresponding "foo_js_library_for_compile" target generated. | |
enable_mojom_fuzzer | |
Current value (from the default) = false | |
From //mojo/public/tools/bindings/mojom.gni:51 | |
Enables generating javascript fuzzing-related code and the bindings for the | |
MojoLPM fuzzer targets. Off by default. | |
enable_mojom_message_id_scrambling | |
Current value (from the default) = true | |
From //mojo/public/tools/bindings/mojom.gni:39 | |
Controls message ID scrambling behavior. If |true|, message IDs are | |
scrambled (i.e. randomized based on the contents of //chrome/VERSION) on | |
non-Chrome OS desktop platforms. Set to |false| to disable message ID | |
scrambling on all platforms. | |
enable_mojom_typemapping | |
Current value (from the default) = true | |
From //mojo/public/tools/bindings/mojom.gni:33 | |
Indicates whether typemapping should be supported in this build | |
configuration. This may be disabled when building external projects which | |
depend on //mojo but which do not need/want all of the Chromium tree | |
dependencies that come with typemapping. | |
Note that (perhaps obviously) a huge amount of Chromium code will not build | |
with typemapping disabled, so it is never valid to set this to |false| in | |
any Chromium build configuration. | |
enable_mse_mpeg2ts_stream_parser | |
Current value (from the default) = false | |
From //media/media_options.gni:64 | |
enable_mutex_priority_inheritance | |
Current value (from the default) = false | |
From //base/BUILD.gn:68 | |
Set to true to enable mutex priority inheritance. See the comments in | |
LockImpl::PriorityInheritanceAvailable() in lock_impl_posix.cc for the | |
platform requirements to safely enable priority inheritance. | |
enable_nacl | |
Current value (from the default) = true | |
From //components/nacl/features.gni:14 | |
enable_nocompile_tests | |
Current value (from the default) = true | |
From //build/nocompile.gni:68 | |
TODO(crbug.com/105388): make sure no-compile test is not flaky. | |
enable_offline_pages | |
Current value (from the default) = false | |
From //components/offline_pages/buildflags/features.gni:8 | |
Whether to enable OfflinePages support. Currently user-visible features | |
are Android-only. | |
enable_offline_pages_harness | |
Current value (from the default) = false | |
From //components/offline_pages/buildflags/features.gni:12 | |
This enables test API for locally-built harness which is used for quality | |
evaluations. Requires setting this variable manually at local environment. | |
enable_oop_printing | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:35 | |
Enables out-of-process printing. While this definition matches | |
`enable_print_preview`, do not base this definition upon that. This | |
feature could still be appropriate for some build configurations which | |
explicitly disable print preview. | |
enable_opengl_apitrace | |
Current value (from the default) = false | |
From //build/config/ozone.gni:34 | |
Enable explicit apitrace (https://apitrace.github.io) loading. | |
This requires apitrace library with additional bindings. | |
See ChromeOS package for details: | |
https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2659419 | |
Chrome will not start without an apitrace.so library. | |
Trace will be saved to /tmp/gltrace.dat file by default. You can | |
override it at run time with TRACE_FILE=<path> environment variable. | |
enable_openscreen_protocol | |
Current value (from the default) = false | |
From //chrome/browser/media/router/BUILD.gn:12 | |
Set to true to build code that supports the Open Screen Protocol. | |
OSP is experimental and not yet feature-complete. | |
enable_openxr | |
Current value (from the default) = false | |
From //device/vr/buildflags/buildflags.gni:18 | |
To build with OpenXR support, the OpenXR Loader needs to be pulled to | |
third_party/openxr. | |
enable_paint_preview | |
Current value (from the default) = true | |
From //build/config/buildflags_paint_preview.gni:15 | |
Enable basic paint preview support. Does not work on iOS. Should | |
not be included with Chromecast hardware devices. | |
Used by //components/paint_preview and //third_party/harfbuzz-ng. | |
TODO(crbug.com/webrtc/11223) Move back this file in | |
//components/paint_preview/ once WebRTC doesn't roll harfbuzz-ng anymore, | |
for consistency sake. | |
enable_pdf | |
Current value (from the default) = true | |
From //pdf/features.gni:20 | |
enable_perfetto_benchmarks | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:195 | |
enable_perfetto_fuzzers | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:198 | |
enable_perfetto_heapprofd | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:157 | |
enable_perfetto_integration_tests | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:193 | |
enable_perfetto_ipc | |
Current value (from the default) = true | |
From //third_party/perfetto/gn/perfetto.gni:150 | |
enable_perfetto_llvm_demangle | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:300 | |
enable_perfetto_platform_services | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:141 | |
enable_perfetto_stderr_crash_dump | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:235 | |
enable_perfetto_tools | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:187 | |
enable_perfetto_trace_processor | |
Current value (from the default) = true | |
From //third_party/perfetto/gn/perfetto.gni:173 | |
enable_perfetto_trace_processor_httpd | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:287 | |
enable_perfetto_trace_processor_json | |
Current value (from the default) = true | |
From //third_party/perfetto/gn/perfetto.gni:282 | |
enable_perfetto_trace_processor_linenoise | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:276 | |
enable_perfetto_trace_processor_percentile | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:272 | |
enable_perfetto_trace_processor_sqlite | |
Current value (from the default) = true | |
From //third_party/perfetto/gn/perfetto.gni:267 | |
enable_perfetto_traceconv | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:306 | |
enable_perfetto_traced_perf | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:165 | |
enable_perfetto_traced_probes | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:259 | |
The traced_probes daemon is very Linux-specific, as it depends on ftrace and | |
various /proc interfaces. There is no point making its code platform-neutral | |
as it won't do anything useful on Windows. | |
The only reason why we still build it on Mac OS is to be able to run the | |
unittests there and making dev on mac less cumbersome. The traced_probes | |
code happens to build cleanly and for now the mainteinance cost on Mac is | |
extremely low. | |
enable_perfetto_tracing | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:115 | |
Support using system perfetto tracing | |
enable_perfetto_ui | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:310 | |
enable_perfetto_unittests | |
Current value (from the default) = true | |
From //third_party/perfetto/gn/perfetto.gni:189 | |
enable_perfetto_version_gen | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:204 | |
enable_perfetto_watchdog | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:182 | |
enable_perfetto_x64_cpu_opt | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:243 | |
enable_perfetto_zlib | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:293 | |
enable_platform_ac3_eac3_audio | |
Current value (from the default) = false | |
From //media/media_options.gni:53 | |
Enables AC3/EAC3 audio demuxing. This is enabled only on Chromecast, since | |
it only provides demuxing, and is only useful for AC3/EAC3 audio | |
pass-through to HDMI sink on Chromecast. | |
enable_platform_dolby_vision | |
Current value (from the default) = false | |
From //media/media_options.gni:73 | |
Enable Dolby Vision demuxing. Enable by default for Chromecast. Actual | |
decoding must be provided by the platform. Note some Dolby Vision profiles | |
which are encoded using HEVC require |enable_platform_hevc| to be enabled. | |
TODO(crbug.com/1336055): Revisit the default value for this setting as it | |
applies to video-capable devices. | |
enable_platform_dts_audio | |
Current value (from the default) = false | |
From //media/media_options.gni:59 | |
Enables DTS/DTSX audio handling in chromium. This includes demuxing, | |
on-device decoding and bitstream passthrough as supported by device. | |
enable_platform_hevc | |
Current value (from the default) = false | |
From //media/media_options.gni:116 | |
enable_platform_mpeg_h_audio | |
Current value (from the default) = false | |
From //media/media_options.gni:55 | |
enable_playready | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:157 | |
Use Playready CDMs for internal non-desktop builds. | |
enable_plugins | |
Current value (from the default) = true | |
From //ppapi/buildflags/buildflags.gni:13 | |
Enables basic plugin support. This enables support for registering and | |
looking up plugins, but does not include support for loading plugins using a | |
specific technology like Pepper. | |
enable_ppapi | |
Current value (from the default) = true | |
From //ppapi/buildflags/buildflags.gni:18 | |
Enables Pepper API (PPAPI) plugin support. | |
enable_precompiled_headers | |
Current value (from the default) = false | |
From //build/config/pch.gni:14 | |
enable_print_content_analysis | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:40 | |
enable_print_media_l10n | |
Current value (from the default) = false | |
From //chrome/common/printing/BUILD.gn:15 | |
Enable print media localization only on the platforms that support CUPS IPP | |
(ChromeOS and macOS for now). The localization expects media vendor IDs | |
uniquely generated by CUPS IPP. | |
enable_print_preview | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:21 | |
Enables printing with print preview. | |
Print preview requires PDF per //printing/BUILD.gn. | |
The is_android condition is currently redundant but left for clarity. | |
enable_profiling | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:68 | |
Compile in such a way as to enable profiling of the generated code. For | |
example, don't omit the frame pointer and leave in symbols. | |
enable_pseudolocales | |
Current value (from the default) = true | |
From //build/config/locales.gni:243 | |
We want to give pseudolocales to everyone except end-users (devs & QA). | |
Note that this only packages the locales in, and doesn't add the ui to enable them. | |
enable_qr_print | |
Current value (from the default) = false | |
From //components/qr_code_generator/BUILD.gn:7 | |
Enables building a development / debugging binary. | |
enable_random_mojo_delays | |
Current value (from the default) = false | |
From //mojo/public/cpp/bindings/BUILD.gn:18 | |
enable_random_mojo_delays starts a task runner that periodically pauses | |
random Mojo bindings and later resumes them, in order to test whether parts | |
of the code implicitly rely on FIFO processing of messages sent on different | |
message pipes (which they should not). | |
enable_reading_list | |
Current value (from the default) = true | |
From //components/reading_list/features/reading_list.gni:8 | |
Controls whether reading list support is active or not. Currently only | |
supported on iOS (on other platforms, the feature is always disabled). | |
enable_remoting | |
Current value (from the default) = true | |
From //remoting/remoting_enable.gni:12 | |
enable_remoting_for_cwr | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:144 | |
True to use the remoting implementation of cast streaming for the cast web | |
runtime (as opposed to the mirroring-only implementation). | |
enable_reporting | |
Current value (from the default) = true | |
From //net/features.gni:28 | |
Reporting not used on iOS. | |
enable_resource_allowlist_generation | |
Current value (from the default) = false | |
From //build/toolchain/gcc_toolchain.gni:28 | |
enable_rust | |
Current value (from the default) = false | |
From //build/config/rust.gni:17 | |
Whether to allow Rust code to be part of the Chromium *build process*. | |
This can be used to create Rust test binaries, even if the flag below | |
is false. | |
enable_screen_ai_service | |
Current value (from the default) = true | |
From //components/services/screen_ai/buildflags/features.gni:11 | |
enable_segment_heap | |
Current value (from the default) = false | |
From //build/config/win/manifest.gni:46 | |
enable_service_discovery | |
Current value (from the default) = true | |
From //chrome/common/features.gni:63 | |
enable_session_service | |
Current value (from the default) = true | |
From //chrome/common/features.gni:67 | |
Enables use of the session service, which is enabled by default. | |
Android stores them separately on the Java side. | |
enable_skia_dawn_gtests | |
Current value (from the default) = false | |
From //skia/features.gni:13 | |
Enable gtests using SkiaRenderer Dawn. | |
TODO(rivr): Remove this and enable the tests by default once a software | |
path for D3D12 is available. | |
enable_skia_wuffs_gif | |
Current value (from the default) = true | |
From //skia/BUILD.gn:30 | |
enable_snap_package | |
Current value (from the default) = false | |
From //chrome/installer/linux/BUILD.gn:32 | |
Enable building snap packages | |
enable_soda | |
Current value (from the default) = false | |
From //components/soda/buildflags.gni:7 | |
Used to enable the Speech On-Device API (SODA) in unit and browser tests. | |
enable_speech_service | |
Current value (from the default) = true | |
From //chrome/services/speech/buildflags/buildflags.gni:10 | |
Whether the browser provides a speech recognition service | |
(//media/mojo/mojom/speech_recognition_service.mojom) to the renderer. | |
enable_stack_trace_line_numbers | |
Current value (from the default) = false | |
From //build/config/logging.gni:13 | |
enable_stripping | |
Current value (from the default) = false | |
From //build/config/apple/symbols.gni:24 | |
Strip symbols from linked targets by default. If this is enabled, the | |
//build/config/mac:strip_all config will be applied to all linked targets. | |
If custom stripping parameters are required, remove that config from a | |
linked target and apply custom -Wcrl,strip flags. See | |
//build/toolchain/apple/linker_driver.py for more information. | |
enable_swiftshader | |
Current value (from the default) = true | |
From //ui/gl/features.gni:30 | |
enable_swiftshader_vulkan | |
Current value (from the default) = true | |
From //gpu/vulkan/features.gni:17 | |
Enable swiftshader vulkan. Disabling it can save build time, however | |
--use-vulkan=swiftshader and some tests which use swiftshader vulkan will | |
not work. | |
enable_system_notifications | |
Current value (from the default) = true | |
From //chrome/common/features.gni:71 | |
enable_tagged_pdf | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:45 | |
Enables exporting to tagged PDF. | |
enable_trace_logging | |
Current value (from the default) = false | |
From //third_party/openscreen/src/util/BUILD.gn:11 | |
Enables trace logging in build. This is true by default, unless | |
we are built against Chrome--we have no way to link their platform | |
implementation into our binaries so trace logging is not possible. | |
enable_typescript_bindings | |
Current value (from the default) = false | |
From //mojo/public/tools/bindings/mojom.gni:47 | |
Enables generating Typescript bindings and compiling them to JS bindings. | |
enable_video_capture_service | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:105 | |
Set to true to enable video capture service for video input and output. | |
enable_video_with_mixed_audio | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:79 | |
Set to true to enable a CMA media backend that allows mixed audio to be | |
output with sync'd video. | |
enable_vr | |
Current value (from the default) = true | |
From //device/vr/buildflags/buildflags.gni:26 | |
enable_vulkan | |
Current value (from the default) = true | |
From //gpu/vulkan/features.gni:12 | |
enable_wayland_server | |
Current value (from the default) = false | |
From //chrome/common/features.gni:74 | |
Indicates if Wayland display server support is enabled. | |
enable_websockets | |
Current value (from the default) = true | |
From //net/features.gni:13 | |
WebSockets and socket stream code are not used on iOS and are optional in | |
cronet. | |
enable_webui_certificate_viewer | |
Current value (from the default) = true | |
From //chrome/common/features.gni:77 | |
Enables the webui certificate viewer dialog. | |
enable_webui_inline_sourcemaps | |
Current value (from the default) = false | |
From //ui/webui/webui_features.gni:18 | |
Whether to inline source maps during build. This is an experimental feature | |
currently only being used for New Tab Page being tracked at crbug/1337530. | |
enable_webui_tab_strip | |
Current value (from the default) = true | |
From //ui/webui/webui_features.gni:14 | |
Enable the WebUI version of the browser's tab strip. | |
enable_widevine | |
Current value (from the default) = false | |
From //third_party/widevine/cdm/widevine.gni:15 | |
Enables Widevine key system support. Enabled by default in Google Chrome, | |
on Android and Fuchsia platforms. | |
Can be optionally enabled in Chromium on non-Android platforms. Please see | |
//src/third_party/widevine/LICENSE file for details. | |
enable_wmax_tokens | |
Current value (from the default) = true | |
From //build/config/compiler/BUILD.gn:154 | |
enable_xz_extractor | |
Current value (from the default) = true | |
From //chrome/services/file_util/public/features.gni:11 | |
Whether the file_util service supports .xz file extraction. | |
Currently only used by imageWriterPrivate extension API, so only enabled | |
when Extensions are enabled. | |
exclude_unwind_tables | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:123 | |
Exclude unwind tables by default for official builds as unwinding can be | |
done from stack dumps produced by Crashpad at a later time "offline" in the | |
crash server. Since this increases binary size, we don't recommend including | |
them in shipping builds. | |
For unofficial (e.g. development) builds and non-Chrome branded (e.g. Cronet | |
which doesn't use Crashpad, crbug.com/479283) builds it's useful to be able | |
to unwind at runtime. | |
Include the unwind tables on Android even for official builds, as otherwise | |
the crash dumps generated by Android's debuggerd are largely useless, and | |
having this additional mechanism to understand issues is particularly helpful | |
to WebView. | |
extended_tracing_enabled | |
Current value (from the default) = false | |
From //base/trace_event/tracing.gni:11 | |
Enable more trace events. Disabled by default due to binary size impact, | |
but highly recommended for local development. | |
fatal_linker_warnings | |
Current value (from the default) = true | |
From //build/config/compiler/BUILD.gn:75 | |
Enable fatal linker warnings. Building Chromium with certain versions | |
of binutils can cause linker warning. | |
ffmpeg_branding | |
Current value = "Chrome" | |
From //out/Default/args.gn:4 | |
Overridden from the default = "Chromium" | |
From //third_party/ffmpeg/ffmpeg_options.gni:32 | |
Controls whether we build the Chromium or Google Chrome version of FFmpeg. | |
The Google Chrome version contains additional codecs. Typical values are | |
Chromium, Chrome, and ChromeOS. | |
ffmpeg_use_unsafe_atomics | |
Current value (from the default) = false | |
From //third_party/ffmpeg/ffmpeg_options.gni:50 | |
Set to true to force the use of ffmpeg's stdatomic fallback code. This code | |
is unsafe and does not implement atomics properly. https://crbug.com/161723. | |
Windows and GCC prior to 4.9 lack stdatomic.h. | |
This is also useful for developers who use icecc, which relies upon | |
clang's -frewrite-includes flag which is broken with #include_next | |
directives as used in chromium's clang stdatomic.h. | |
Some background: https://bugs.llvm.org/show_bug.cgi?id=26828 | |
forbid_non_component_debug_builds | |
Current value (from the default) = true | |
From //build/config/compiler/compiler.gni:110 | |
Whether an error should be raised on attempts to make debug builds with | |
is_component_build=false. Very large debug symbols can have unwanted side | |
effects so this is enforced by default for chromium. | |
force_cast_bluetooth | |
Current value (from the default) = false | |
From //device/bluetooth/cast_bluetooth.gni:4 | |
from_here_uses_location_builtins | |
Current value (from the default) = true | |
From //base/BUILD.gn:55 | |
Whether or not the FROM_HERE macro uses base::Location::Current(). | |
gcc_target_rpath | |
Current value (from the default) = "" | |
From //build/config/gcc/BUILD.gn:19 | |
When non empty, overrides the target rpath value. This allows a user to | |
make a Chromium build where binaries and shared libraries are meant to be | |
installed into separate directories, like /usr/bin/chromium and | |
/usr/lib/chromium for instance. It is useful when a build system that | |
generates a whole target root filesystem (like Yocto) is used on top of gn, | |
especially when cross-compiling. | |
Note: this gn arg is similar to gyp target_rpath generator flag. | |
generate_fuzzer_owners | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:166 | |
Generates an owners file for each fuzzer test. | |
TODO(crbug.com/1194183): Remove this arg when finding OWNERS is faster. | |
generate_linker_map | |
Current value (from the default) = false | |
From //build/toolchain/toolchain.gni:21 | |
Used for binary size analysis. | |
gold_path | |
Current value (from the default) = "" | |
From //build/config/compiler/BUILD.gn:71 | |
When we are going to use gold we need to find it. | |
This is initialized below, after use_gold might have been overridden. | |
goma_dir | |
Current value (from the default) = "" | |
From //build/toolchain/goma.gni:17 | |
Absolute directory containing the gomacc binary. | |
google_api_key | |
Current value (from the default) = "" | |
From //google_apis/BUILD.gn:43 | |
Set these to bake the specified API keys and OAuth client | |
IDs/secrets into your build. | |
If you create a build without values baked in, you can instead | |
set environment variables to provide the keys at runtime (see | |
src/google_apis/google_api_keys.h for details). Features that | |
require server-side APIs may fail to work if no keys are | |
provided. | |
Note that when building a Chrome-branded build or if | |
`use_official_google_api_keys` has been set to `true` (explicitly or | |
implicitly), these values will be ignored and the official | |
keys will be used instead. | |
google_default_client_id | |
Current value (from the default) = "" | |
From //google_apis/BUILD.gn:46 | |
See google_api_key. | |
google_default_client_secret | |
Current value (from the default) = "" | |
From //google_apis/BUILD.gn:49 | |
See google_api_key. | |
grpc_use_static_linking | |
Current value (from the default) = false | |
From //third_party/grpc/BUILD.gn:17 | |
TODO(169395837): Somehow gRPC symbols cannot be found on Android. | |
Keep using static linking for now. | |
In windows and mac use static linking. | |
Use static linking on Chrome OS as a workaround for the symbol lookup | |
error(crbug/1241330) due to a gRPC version mismatch between what Chrome | |
uses and what CrOS provides. | |
gtest_enable_absl_printers | |
Current value (from the default) = true | |
From //build_overrides/build.gni:39 | |
Allows googletest to pretty-print various absl types. Disabled for nacl due | |
to lack of toolchain support. | |
gtk_version | |
Current value (from the default) = 3 | |
From //build/config/linux/gtk/gtk.gni:13 | |
The (major) version of GTK to build against. A different version may be | |
loaded at runtime. | |
has_native_accessibility | |
Current value (from the default) = true | |
From //ui/base/ui_features.gni:18 | |
Whether the platform provides a native accessibility toolkit, in other words | |
the platform has a C/C++ interface for accessibility that Chrome | |
implements/subclasses in some way - win, mac, linux. | |
has_platform_accessibility_support | |
Current value (from the default) = false | |
From //ui/base/ui_features.gni:26 | |
Whether the platform provide platform-specific accessibility implementation, | |
i.e. there an accessibility API of some kind on this platform that's | |
implemented in Chrome's browser process, but not necessarily something that | |
looks like subclassing an interface - so that includes Android (the Java | |
AccessibilityNodeProvider API) and Fuchsia (uses fidl messaging, kind of | |
like mojo). | |
have_full_mixer | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:51 | |
Set to true if there is a full mixer implementation; if not, we create a | |
shim mixer service receiver that pushes audio to the CMA backend. | |
headless_mode_policy_supported | |
Current value (from the default) = true | |
From //headless/headless.gni:16 | |
Platforms where headless mode is supported. | |
headless_use_embedded_resources | |
Current value (from the default) = false | |
From //headless/headless.gni:7 | |
Embed resource.pak file into the binary for easier distribution. | |
headless_use_policy | |
Current value (from the default) = true | |
From //headless/headless.gni:13 | |
Use Policy component to manage preferences. | |
headless_use_prefs | |
Current value (from the default) = true | |
From //headless/headless.gni:10 | |
Use Prefs component to access Local State and other preferences. | |
host_byteorder | |
Current value (from the default) = "undefined" | |
From //build/config/host_byteorder.gni:9 | |
host_cpu | |
Current value (from the default) = "x64" | |
(Internally set; try `gn help host_cpu`.) | |
host_os | |
Current value (from the default) = "linux" | |
(Internally set; try `gn help host_os`.) | |
host_pkg_config | |
Current value (from the default) = "" | |
From //build/config/linux/pkg_config.gni:36 | |
A optional pkg-config wrapper to use for tools built on the host. | |
host_toolchain | |
Current value (from the default) = "" | |
From //build/config/BUILDCONFIG.gn:151 | |
This should not normally be set as a build argument. It's here so that | |
every toolchain can pass through the "global" value via toolchain_args(). | |
icu_disable_thin_archive | |
Current value (from the default) = false | |
From //third_party/icu/config.gni:17 | |
If true, compile icu into a standalone static library. Currently this is | |
only useful on Chrome OS. | |
icu_fuchsia_override_data_dir | |
Current value (from the default) = "" | |
From //third_party/icu/config.gni:22 | |
If set to nonempty, this is the label of the directory to be used to pull | |
the ICU data files content. The setting has effect only when building | |
inside the Fuchsia source tree. | |
icu_use_data_file | |
Current value (from the default) = true | |
From //third_party/icu/config.gni:8 | |
Tells icu to load an external data file rather than rely on the icudata | |
being linked directly into the binary. | |
icu_use_stub_data | |
Current value (from the default) = true | |
From //third_party/icu/config.gni:13 | |
If true, then this creates a stub data file. This should be disabled if | |
a custom data file will be used instead, in order to avoid conflicting | |
symbols. | |
ignore_missing_widevine_signing_cert | |
Current value (from the default) = true | |
From //third_party/widevine/cdm/widevine.gni:81 | |
If set, and Widevine CDM host verification signing failed due to no signing | |
cert, the failure will be ignored. Otherwise the build process will fail. | |
Set to false by default for official build to catch missing cert error. | |
For developers building with "is_official_build" locally without Widevine | |
signing certs, please manually set `ignore_missing_widevine_signing_cert` | |
to true to suppress the error. | |
include_ash_ambient_animation_resources | |
Current value (from the default) = false | |
From //ash/ambient/resources/resources.gni:16 | |
Build flag to include resources for the animated screensaver in ash builds. | |
Currently, these resources are included by default for internal ChromeOS | |
builds as both conditions below are prerequisites for downloading Lottie | |
ambient mode resources from CIPD in the DEPS file. | |
May be overridden locally to false for testing purposes if desired. | |
include_transport_security_state_preload_list | |
Current value (from the default) = true | |
From //net/features.gni:36 | |
Includes the transport security state preload list. This list includes | |
mechanisms (e.g. HSTS, HPKP) to enforce trusted connections to a significant | |
set of hardcoded domains. While this list has a several hundred KB of binary | |
size footprint, this flag should not be disabled unless the embedder is | |
willing to take the responsibility to make sure that all important | |
connections use HTTPS. | |
include_vr_data | |
Current value (from the default) = false | |
From //device/vr/buildflags/buildflags.gni:30 | |
Whether to include VR extras like test APKs in non-VR-specific targets | |
init_stack_vars | |
Current value (from the default) = true | |
From //build/config/compiler/BUILD.gn:140 | |
Initialize all local variables with a pattern. This flag will fill | |
uninitialized floating-point types (and 32-bit pointers) with 0xFF and the | |
rest with 0xAA. This makes behavior of uninitialized memory bugs consistent, | |
recognizable in the debugger, and crashes on memory accesses through | |
uninitialized pointers. | |
TODO(crbug.com/1131993): Enabling this when 'is_android' is true breaks | |
content_shell_test_apk on both ARM and x86. | |
internal_gles2_conform_tests | |
Current value (from the default) = false | |
From //gpu/gles2_conform_support/BUILD.gn:7 | |
Set to true to compile with the OpenGL ES 2.0 conformance tests. | |
internal_khronos_glcts_tests | |
Current value (from the default) = false | |
From //gpu/khronos_glcts_support/BUILD.gn:8 | |
invert_fieldtrials | |
Current value (from the default) = false | |
From //components/variations/field_trial_config/BUILD.gn:8 | |
ios_deployment_target | |
Current value (from the default) = "14.0" | |
From //build/config/ios/ios_sdk_overrides.gni:10 | |
Version of iOS that we're targeting. | |
ios_stack_profiler_enabled | |
Current value (from the default) = true | |
From //base/BUILD.gn:73 | |
Control whether the ios stack sampling profiler is enabled. This flag is | |
only supported on iOS 64-bit architecture, but some project build //base | |
for 32-bit architecture. | |
iot_service_rpath | |
Current value (from the default) = "" | |
From //chromecast/chromecast.gni:127 | |
Extra rpath to use for standalone services. | |
is_android_arc | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:62 | |
Set to true for builds targeting ARC. | |
is_asan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:14 | |
Compile for Address Sanitizer to find memory bugs. | |
is_cast_android | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:62 | |
Set this to true to build for Android-based Cast devices. | |
Set this to false to use the defaults for the target OS/platform. | |
is_cast_audio_only | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:26 | |
Set this true for an audio-only Chromecast build. | |
TODO(crbug.com/1293538): Replace with a buildflag for speaker-only builds not | |
specific to Cast. | |
is_cast_desktop_build | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:20 | |
is_castos | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:58 | |
Set this to true to build for Nest hardware running Linux (aka "CastOS"). | |
Set this to false to use the defaults for the target OS/platform. | |
Prevent it from being true for the building of host tools when the target | |
is Fuchsia. is_a_target_toolchain could be checked instead, but this would | |
be a change in behavior. | |
TODO(crbug.com/1340117): Migrate to NOT setting is_castos to true in the | |
host toolchain even after the following TODO is addressed. | |
TODO(crbug.com/1314528): Change default to false. | |
is_cfi | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:53 | |
Compile with Control Flow Integrity to protect virtual calls and casts. | |
See http://clang.llvm.org/docs/ControlFlowIntegrity.html | |
TODO(pcc): Remove this flag if/when CFI is enabled in all official builds. | |
is_cfm | |
Current value (from the default) = false | |
From //build/config/chromebox_for_meetings/buildflags.gni:7 | |
True if compiling for Chromebox for Meeting devices. | |
is_chrome_branded | |
Current value (from the default) = false | |
From //build/config/chrome_build.gni:9 | |
Select the desired branding flavor. False means normal Chromium branding, | |
true means official Google Chrome branding (requires extra Google-internal | |
resources). | |
is_chromecast | |
Current value (from the default) = false | |
From //build/config/chromecast_build.gni:16 | |
DEPRECATED. This flag will be removed in the future; see https://crbug.com/1219802. | |
New code should use enable_cast_receiver if the feature in question is | |
required for all Cast-enabled browsers, or an alternative buildflag if it is | |
for specific types of devices. | |
is_chromeos_device | |
Current value (from the default) = false | |
From //build/config/chromeos/args.gni:26 | |
Determines if we're building for a Chrome OS device (or VM) and not just | |
linux-chromeos. NOTE: Most test targets in Chrome expect to run under | |
linux-chromeos, so some have compile-time asserts that intentionally fail | |
when this build flag is set. Build and run the tests for linux-chromeos | |
instead. | |
https://chromium.googlesource.com/chromium/src/+/main/docs/chromeos_build_instructions.md | |
https://chromium.googlesource.com/chromiumos/docs/+/main/simple_chrome_workflow.md | |
is_chromeos_with_hw_details | |
Current value (from the default) = false | |
From //build/config/chromeos/args.gni:34 | |
Determines if we collect hardware information in chrome://system and | |
feedback logs. A similar build flag "hw_details" is defined in Chrome OS | |
(see https://crrev.com/c/3123455). | |
is_clang | |
Current value (from the default) = true | |
From //build/config/BUILDCONFIG.gn:139 | |
Set to true when compiling with the Clang compiler. | |
is_component_build | |
Current value (from the default) = false | |
From //build/config/BUILDCONFIG.gn:168 | |
Component build. Setting to true compiles targets declared as "components" | |
as shared libraries loaded dynamically. This speeds up development time. | |
When false, components will be linked statically. | |
For more information see | |
https://chromium.googlesource.com/chromium/src/+/main/docs/component_build.md | |
is_component_ffmpeg | |
Current value = true | |
From //out/Default/args.gn:2 | |
Overridden from the default = false | |
From //third_party/ffmpeg/ffmpeg_options.gni:39 | |
Set true to build ffmpeg as a shared library. NOTE: this means we should | |
always consult is_component_ffmpeg instead of is_component_build for | |
ffmpeg targets. This helps linux chromium packagers that swap out our | |
ffmpeg.so with their own. See discussion here | |
https://groups.google.com/a/chromium.org/forum/#!msg/chromium-packagers/R5rcZXWxBEQ/B6k0zzmJbvcJ | |
is_cronet_build | |
Current value (from the default) = false | |
From //build/config/ios/config.gni:16 | |
Control whether cronet is built (this is usually set by the script | |
components/cronet/tools/cr_cronet.py as cronet requires specific | |
gn args to build correctly). | |
is_ct_supported | |
Current value (from the default) = true | |
From //services/network/public/cpp/features.gni:10 | |
Certificate transparency is not supported on iOS. | |
TODO(mmenke): It's actually not supported on Android, either. | |
is_debug | |
Current value = false | |
From //out/Default/args.gn:1 | |
Overridden from the default = true | |
From //build/config/BUILDCONFIG.gn:158 | |
Debug build. Enabling official builds automatically sets is_debug to false. | |
is_ggp | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:8 | |
is_hwasan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:19 | |
Compile for Hardware-Assisted Address Sanitizer to find memory bugs | |
(android/arm64 only). | |
See http://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html | |
is_lsan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:22 | |
Compile for Leak Sanitizer to find leaks. | |
is_msan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:25 | |
Compile for Memory Sanitizer to find uninitialized reads. | |
is_nacl_glibc | |
Current value (from the default) = false | |
From //build/config/nacl/config.gni:12 | |
True if nacl_glibc is used. | |
is_nacl_saigo | |
Current value (from the default) = false | |
From //build/config/nacl/config.gni:15 | |
True if saigo_newlib is used. | |
is_official_build | |
Current value (from the default) = false | |
From //build/config/BUILDCONFIG.gn:136 | |
Set to enable the official build level of optimization. This has nothing | |
to do with branding, but enables an additional level of optimization above | |
release (!is_debug). This might be better expressed as a tri-state | |
(debug, release, official) but for historical reasons there are two | |
separate flags. | |
IMPORTANT NOTE: (!is_debug) is *not* sufficient to get satisfying | |
performance. In particular, DCHECK()s are still enabled for release builds, | |
which can halve overall performance, and do increase memory usage. Always | |
set "is_official_build" to true for any build intended to ship to end-users. | |
is_on_release_branch | |
Current value (from the default) = false | |
From //v8/gni/release_branch_toggle.gni:6 | |
is_p2p_enabled | |
Current value (from the default) = true | |
From //services/network/public/cpp/features.gni:16 | |
Controls whether P2P is exposed by the network service. | |
Optional to reduce avoid having Chrome on iOS depends on | |
WebRTC and related third-party libraries (libvpx, libaom, | |
...). | |
is_perfetto_build_generator | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:82 | |
All the tools/gen_* scripts set this to true. This is mainly used to locate | |
.gni files from //gn rather than //build. | |
is_perfetto_embedder | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:87 | |
This is for override via `gn args` (e.g. for tools/gen_xxx). Embedders | |
based on GN (e.g. v8) should NOT set this and instead directly sets | |
perfetto_build_with_embedder=true in their GN files. | |
is_reven | |
Current value (from the default) = false | |
From //build/config/chromeos/args.gni:40 | |
Refers to the separate branding required for the reven build. | |
is_skylab | |
Current value (from the default) = false | |
From //build/config/chromeos/args.gni:29 | |
Determines if we run the test in skylab, aka the CrOS labs. | |
is_tsan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:28 | |
Compile for Thread Sanitizer to find threading bugs. | |
is_ubsan | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:32 | |
Compile for Undefined Behaviour Sanitizer to find various types of | |
undefined behaviour (excludes vptr checks). | |
is_ubsan_no_recover | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:35 | |
Halt the program if a problem is detected. | |
is_ubsan_null | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:38 | |
Compile for Undefined Behaviour Sanitizer's null pointer checks. | |
is_ubsan_security | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:82 | |
Enables core ubsan security features. Will later be removed once it matches | |
is_ubsan. | |
is_ubsan_vptr | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:118 | |
Compile for Undefined Behaviour Sanitizer's vptr checks. | |
is_unsafe_developer_build | |
Current value (from the default) = true | |
From //base/BUILD.gn:60 | |
Unsafe developer build. Has developer-friendly features that may weaken or | |
disable security measures like sandboxing or ASLR. | |
IMPORTANT: Unsafe developer builds should never be distributed to end users. | |
is_win_arm64 | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:123 | |
Currently Windows on Arm doesn't support OpenGL or Vulkan. | |
jsoncpp_no_deprecated_declarations | |
Current value (from the default) = true | |
From //third_party/jsoncpp/BUILD.gn:11 | |
Allow individual projects to remove the warning suppression | |
by overriding this in their .gn file or through custom args.gn | |
See crbug.com/983223 | |
ldso_path | |
Current value (from the default) = "" | |
From //build/config/gcc/BUILD.gn:20 | |
libcxx_is_shared | |
Current value (from the default) = false | |
From //build/config/c++/c++.gni:55 | |
WARNING: Setting this to a non-default value is highly discouraged. | |
If true, libc++ will be built as a shared library; otherwise libc++ will be | |
linked statically. Setting this to something other than the default is | |
unsupported and can be broken by libc++ rolls. Note that if this is set to | |
true, you must also set libcxx_abi_unstable=false, which is bad for | |
performance and memory use. | |
libcxx_natvis_include | |
Current value (from the default) = true | |
From //build/config/c++/c++.gni:30 | |
Builds libcxx Natvis into the symbols for type visualization. | |
Set to false to workaround http://crbug.com/966676 and | |
http://crbug.com/966687. | |
libcxx_revision | |
Current value (from the default) = "88bf4070487fbe9020697a2281743b91e5e29bef" | |
From //buildtools/deps_revisions.gni:8 | |
Used to cause full rebuilds on libc++ rolls. This should be kept in sync | |
with the libcxx_revision vars in //DEPS. | |
libyuv_disable_jpeg | |
Current value (from the default) = false | |
From //third_party/libyuv/libyuv.gni:15 | |
libyuv_include_tests | |
Current value (from the default) = false | |
From //third_party/libyuv/libyuv.gni:14 | |
libyuv_symbols_visible | |
Current value (from the default) = false | |
From //third_party/libyuv/BUILD.gn:19 | |
When building a shared library using a target in WebRTC or | |
Chromium projects that depends on libyuv, setting this flag | |
to true makes libyuv symbols visible inside that library. | |
libyuv_use_absl_flags | |
Current value (from the default) = true | |
From //third_party/libyuv/BUILD.gn:14 | |
Set to false to disable building with absl flags. | |
libyuv_use_mmi | |
Current value (from the default) = false | |
From //third_party/libyuv/libyuv.gni:22 | |
libyuv_use_msa | |
Current value (from the default) = false | |
From //third_party/libyuv/libyuv.gni:20 | |
libyuv_use_neon | |
Current value (from the default) = false | |
From //third_party/libyuv/libyuv.gni:17 | |
limit_android_deps | |
Current value (from the default) = false | |
From //build_overrides/build.gni:35 | |
Limits the defined //third_party/android_deps targets to only "buildCompile" | |
and "buildCompileNoDeps" targets. This is useful for third-party | |
repositories which do not use JUnit tests. For instance, | |
limit_android_deps == true removes "gn gen" requirement for | |
//third_party/robolectric . | |
link_pulseaudio | |
Current value (from the default) = false | |
From //media/media_options.gni:23 | |
Allows distributions to link pulseaudio directly (DT_NEEDED) instead of | |
using dlopen. This helps with automated detection of ABI mismatches and | |
prevents silent errors. | |
lld_path | |
Current value (from the default) = "../../third_party/llvm-build/Release+Asserts/bin" | |
From //build/config/compiler/BUILD.gn:50 | |
This allows overriding the location of lld. | |
llvm_force_head_revision | |
Current value (from the default) = false | |
From //build/toolchain/toolchain.gni:18 | |
If this is set to true, we use the revision in the llvm repo to determine | |
the CLANG_REVISION to use, instead of the version hard-coded into | |
//tools/clang/scripts/update.py. This should only be used in | |
conjunction with setting the llvm_force_head_revision DEPS variable when | |
`gclient runhooks` is run as well. | |
mac_sdk_min | |
Current value (from the default) = "10.15" | |
From //build/config/mac/mac_sdk_overrides.gni:12 | |
make_partition_alloc_standalone | |
Current value (from the default) = false | |
From //base/allocator/partition_allocator/partition_alloc.gni:6 | |
mbi_mode | |
Current value (from the default) = true | |
From //content/common/features.gni:18 | |
Whether or not MBI mode (Multiple Blink Isolates) should be enabled, | |
depending on the build argument. | |
media_clock_monotonic_raw | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:82 | |
unified flag to pick monotonic_clock OR monotonic_clock_raw | |
media_use_ffmpeg | |
Current value (from the default) = true | |
From //media/media_options.gni:28 | |
Enable usage of FFmpeg within the media library. Used for most software | |
based decoding, demuxing, and sometimes optimized FFTs. If disabled, | |
implementors must provide their own demuxers and decoders. | |
media_use_libvpx | |
Current value (from the default) = true | |
From //media/media_options.gni:32 | |
Enable usage of libvpx within the media library. Used for software based | |
decoding of VP9 and VP8A type content. | |
media_use_openh264 | |
Current value (from the default) = true | |
From //media/media_options.gni:42 | |
Enable usage of OpenH264 within the media library. Used for software based | |
encoding of H264 content. | |
mips_use_mmi | |
Current value (from the default) = false | |
From //build/config/mips.gni:13 | |
MIPS MultiMedia Instruction compilation flag. | |
mixer_in_cast_shell | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:55 | |
If true, the mixer will be instantiated inside cast_shell. When false, the | |
mixer is expected to be running in another process. | |
mojo_media_host | |
Current value (from the default) = "gpu" | |
From //media/media_options.gni:287 | |
The process that the mojo MediaService runs in. By default, all services | |
registered in |mojo_media_services| are hosted in the MediaService, with the | |
exception that when |enable_library_cdms| is true, the "cdm" service will | |
run in a separate CdmService in the CDM (utility) process, while other | |
|mojo_media_services| still run in the MediaService in the process specified | |
by "mojo_media_host". | |
Valid options are: | |
- "browser": Use mojo media service hosted in the browser process. | |
- "gpu": Use mojo media service hosted in the gpu process. | |
- "": Do not use mojo media service. | |
mojo_media_services | |
Current value (from the default) = ["video_decoder", "cdm"] | |
From //media/media_options.gni:275 | |
A list of mojo media services that should be used in the media pipeline. | |
Valid entries in the list are: | |
- "renderer": Use mojo-based media Renderer service. | |
- "cdm": Use mojo-based Content Decryption Module. | |
- "audio_decoder": Use mojo-based audio decoder in the default media | |
Renderer. Cannot be used with the mojo Renderer above. | |
- "video_decoder": Use mojo-based video decoder in the default media | |
Renderer. Cannot be used with the mojo Renderer above. | |
mojom_message_id_salt_path | |
Current value (from the default) = "//chrome/VERSION" | |
From //mojo/public/tools/bindings/mojom.gni:116 | |
The path to a file whose contents can be used as the basis for a message | |
ID scrambling salt. | |
monolithic_binaries | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:214 | |
Only for local development. When true the binaries (perfetto, traced, ...) | |
are monolithic and don't use a common shared library. This is mainly to | |
avoid LD_LIBRARY_PATH dances when testing locally. | |
On Windows we default to monolithic executables, because pairing | |
dllexport/import adds extra complexity for little benefit. Te only reason | |
for monolithic_binaries=false is saving binary size, which matters mainly on | |
Android. See also comments on PERFETTO_EXPORT_ENTRYPOINT in compiler.h. | |
msan_track_origins | |
Current value (from the default) = 2 | |
From //build/config/sanitizers/sanitizers.gni:43 | |
Track where uninitialized memory originates from. From fastest to slowest: | |
0 - no tracking, 1 - track only the initial allocation site, 2 - track the | |
chain of stores leading from allocation site to use site. | |
msvc_use_sse2 | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:69 | |
Enable SSE2 for MSVC builds. Ignored if it's not a MSVC build. | |
nacl_sdk_untrusted | |
Current value (from the default) = false | |
From //native_client_sdk/src/BUILD.gn:14 | |
Build the nacl SDK untrusted components. This is disabled by default since | |
not all NaCl untrusted compilers are in goma (e.g arm-nacl-glibc) | |
ndk_api_level_at_least_26 | |
Current value (from the default) = false | |
From //third_party/angle/gni/angle.gni:102 | |
needs_gomacc_path_arg | |
Current value (from the default) = false | |
From //build/toolchain/goma.gni:14 | |
This flag is for ChromeOS compiler wrapper. | |
By passing gomacc path via cmd-line arg, ChromeOS' compiler wrapper | |
invokes gomacc inside it. | |
optimize_for_fuzzing | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:90 | |
Optimize for coverage guided fuzzing (balance between speed and number of | |
branches). Can be also used to remove non-determinism and other issues. | |
optimize_for_size | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:138 | |
If true, optimize for size. | |
Default to favoring speed over size for platforms not listed below. | |
optimize_webui | |
Current value (from the default) = true | |
From //ui/webui/webui_features.gni:11 | |
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). | |
optional_trace_events_enabled | |
Current value (from the default) = true | |
From //base/trace_event/tracing.gni:20 | |
ozone_auto_platforms | |
Current value (from the default) = true | |
From //build/config/ozone.gni:21 | |
Select platforms automatically. Turn this off for manual control. | |
ozone_extra_path | |
Current value (from the default) = "//build/config/ozone_extra.gni" | |
From //build/config/ozone.gni:18 | |
Ozone extra platforms file path. Can be overridden to build out of | |
tree ozone platforms. | |
ozone_platform | |
Current value (from the default) = "x11" | |
From //build/config/ozone.gni:91 | |
ozone_platform_cast | |
Current value (from the default) = false | |
From //build/config/ozone.gni:43 | |
Compile the 'cast' platform. | |
ozone_platform_drm | |
Current value (from the default) = false | |
From //build/config/ozone.gni:46 | |
Compile the 'drm' platform. | |
ozone_platform_flatland | |
Current value (from the default) = false | |
From //build/config/ozone.gni:55 | |
Compile the 'flatland' platform. | |
ozone_platform_gbm | |
Current value (from the default) = -1 | |
From //build/config/ozone.gni:25 | |
TODO(petermcneeley): Backwards compatiblity support for VM images. | |
Remove when deprecated. (https://crbug.com/1122009) | |
ozone_platform_headless | |
Current value (from the default) = true | |
From //build/config/ozone.gni:66 | |
ozone_platform_scenic | |
Current value (from the default) = false | |
From //build/config/ozone.gni:52 | |
Compile the 'scenic' platform. | |
ozone_platform_wayland | |
Current value (from the default) = true | |
From //build/config/ozone.gni:92 | |
ozone_platform_x11 | |
Current value (from the default) = true | |
From //build/config/ozone.gni:93 | |
pdf_bundle_freetype | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:16 | |
Build PDFium either: | |
1) When set to true, with a bundled FreeType, built from FreeType source | |
code in //third_party/freetype and PDFium's FreeType configs in | |
third_party/freetype/include. | |
2) When set to false, use whatever FreeType target is defined in | |
//build/config/freetype. | |
pdf_enable_click_logging | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:19 | |
Generate logging messages for click events that reach PDFium | |
pdf_enable_v8 | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:22 | |
Build PDFium either with or without v8 support. | |
pdf_enable_xfa | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:25 | |
Build PDFium either with or without XFA Forms support. | |
pdf_enable_xfa_bmp | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:28 | |
If XFA, also support bmp codec. Ignored if not XFA. | |
pdf_enable_xfa_gif | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:31 | |
If XFA, also support gif codec. Ignored if not XFA. | |
pdf_enable_xfa_png | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:34 | |
If XFA, also support png codec. Ignored if not XFA. | |
pdf_enable_xfa_tiff | |
Current value (from the default) = true | |
From //third_party/pdfium/pdfium.gni:37 | |
If XFA, also support tiff codec. Ignored if not XFA. | |
pdf_is_complete_lib | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:51 | |
Build a complete static library | |
pdf_is_standalone | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:48 | |
Build PDFium standalone | |
pdf_use_skia | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:41 | |
Build PDFium against Skia (experimental) rather than AGG. Use Skia to draw | |
everything. | |
pdf_use_skia_paths | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:45 | |
Build PDFium against Skia (experimental) rather than AGG. Use Skia to draw | |
paths. | |
perfetto_build_with_android | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:78 | |
The Android blueprint file generator set this to true (as well as | |
is_perfetto_build_generator). This is just about being built in the | |
Android tree (AOSP and internal) and is NOT related with the target OS. | |
In standalone Android builds and Chromium Android builds, this is false. | |
perfetto_enable_git_rev_version_header | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:249 | |
perfetto_force_dcheck | |
Current value (from the default) = "" | |
From //third_party/perfetto/gn/perfetto.gni:229 | |
Whether DCHECKs should be enabled or not. Values: "on" | "off" | "". | |
By default ("") DCHECKs are enabled only: | |
- If DCHECK_ALWAYS_ON is defined (which is mainly a Chromium-ism). | |
- On debug builds (i.e. if NDEBUG is NOT defined) but only in Chromium, | |
Android and standalone builds. | |
- On all other builds (e.g., SDK) it's off regardless of NDEBUG (unless | |
DCHECK_ALWAYS_ON is defined). | |
See base/logging.h for the implementation of all this. | |
perfetto_force_dlog | |
Current value (from the default) = "off" | |
From //third_party/perfetto/gn/perfetto.gni:219 | |
Whether DLOG should be enabled on debug builds (""), all builds ("on"), or | |
none ("off"). We disable it by default for embedders to avoid spamming their | |
console. | |
perfetto_use_system_protobuf | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:318 | |
Used by CrOS system builds. Uses the system version of protobuf | |
from /usr/include instead of the hermetic one. | |
perfetto_use_system_zlib | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:320 | |
perfetto_verbose_logs_enabled | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:263 | |
pgo_data_path | |
Current value (from the default) = "" | |
From //build/config/compiler/pgo/pgo.gni:32 | |
When using chrome_pgo_phase = 2, read profile data from this path. | |
pkg_config | |
Current value (from the default) = "" | |
From //build/config/linux/pkg_config.gni:33 | |
A pkg-config wrapper to call instead of trying to find and call the right | |
pkg-config directly. Wrappers like this are common in cross-compilation | |
environments. | |
Leaving it blank defaults to searching PATH for 'pkg-config' and relying on | |
the sysroot mechanism to find the right .pc files. | |
print_unsymbolized_stack_traces | |
Current value (from the default) = false | |
From //base/third_party/symbolize/BUILD.gn:13 | |
Stack traces will not include function names. Instead they will contain | |
file and offset information that can be used with | |
tools/valgrind/asan/asan_symbolize.py. By piping stderr through this script, | |
and also enabling symbol_level = 2, you can get much more detailed stack | |
traces with file names and line numbers, even in non-ASAN builds. | |
proprietary_codecs | |
Current value = true | |
From //out/Default/args.gn:3 | |
Overridden from the default = false | |
From //build/config/features.gni:31 | |
Enables proprietary codecs and demuxers; e.g. H264, AAC, MP3, and MP4. | |
We always build Google Chrome and Chromecast with proprietary codecs. | |
Note: this flag is used by WebRTC which is DEPSed into Chrome. Moving it | |
out of //build will require using the build_overrides directory. | |
Do not add any other conditions to the following line. | |
TODO(crbug.com/1314528): Remove chromecast-related conditions and force | |
builds to explicitly specify this. | |
put_ref_count_in_previous_slot | |
Current value (from the default) = true | |
From //base/allocator/allocator.gni:107 | |
If BRP is enabled, additional options are available: | |
- put_ref_count_in_previous_slot: place the ref-count at the end of the | |
previous slot (or in metadata if a slot starts on the page boundary), as | |
opposed to the beginning of the slot. | |
- enable_backup_ref_ptr_slow_checks: enable additional safety checks that | |
are too expensive to have on by default. | |
- enable_dangling_raw_ptr_checks: enable checking raw_ptr do not become | |
dangling during their lifetime. | |
rbe_cc_cfg_file | |
Current value (from the default) = "" | |
From //build/toolchain/rbe.gni:20 | |
Set to the path of the RBE reclient configuration file. | |
rbe_cfg_dir | |
Current value (from the default) = "../../buildtools/reclient_cfgs" | |
From //build/toolchain/rbe.gni:17 | |
The directory where the re-client configuration files are. | |
rbe_cros_cc_wrapper | |
Current value (from the default) = "../../buildtools/reclient/rewrapper" | |
From //build/toolchain/rbe.gni:23 | |
Set to the path of the RBE recleint wrapper for ChromeOS. | |
regenerate_x11_protos | |
Current value (from the default) = false | |
From //ui/gfx/x/BUILD.gn:12 | |
remoting_use_wayland | |
Current value (from the default) = false | |
From //remoting/build/config/remoting_features.gni:8 | |
Determines whether or not remoting should use wayland implementation | |
to talk to remote host. | |
remoting_webrtc_verbose_logging | |
Current value (from the default) = false | |
From //remoting/build/config/remoting_logging.gni:13 | |
Enabling this will cause WebRTC's LS_INFO and LS_VERBOSE (level 1) | |
messages to appear in the debug log output. Note that WebRTC's | |
"VERBOSE1" messages are very spammy and it is impossible to | |
separately filter LS_INFO and LS_VERBOSE messages (see | |
third_party/webrtc_overrides/rtc_base/). So a separate GN option is | |
provided here, to allow this logging to be quickly enabled for Debug | |
or Release builds. | |
removed_rust_stdlib_libs | |
Current value (from the default) = [] | |
From //build/config/rust.gni:48 | |
Any removed std rlibs in your Rust toolchain, relative to the standard | |
Rust toolchain. Typically used with 'use_unverified_rust_toolchain' = true | |
root_extra_deps | |
Current value (from the default) = [] | |
From //BUILD.gn:53 | |
A list of extra dependencies to add to the root target. This allows a | |
checkout to add additional targets without explicitly changing any checked- | |
in files. | |
rtc_audio_device_plays_sinus_tone | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:191 | |
When set to true, replace the audio output with a sinus tone at 440Hz. | |
The ADM will ask for audio data from WebRTC but instead of reading real | |
audio samples from NetEQ, a sinus tone will be generated and replace the | |
real audio samples. | |
rtc_build_dcsctp | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:307 | |
Enable the dcsctp backend for DataChannels and related unittests | |
rtc_build_examples | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:126 | |
Set this to false to skip building examples. | |
rtc_build_json | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:247 | |
Disable these to not build components which can be externally provided. | |
rtc_build_libevent | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:261 | |
rtc_build_libsrtp | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:248 | |
rtc_build_libvpx | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:249 | |
rtc_build_opus | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:251 | |
rtc_build_ssl | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:252 | |
rtc_build_tools | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:129 | |
Set this to false to skip building tools. | |
rtc_build_with_neon | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:165 | |
rtc_builtin_ssl_root_certificates | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:88 | |
Setting this to false will require the API user to pass in their own | |
SSLCertificateVerifier to verify the certificates presented from a | |
TLS-TURN server. In return disabling this saves around 100kb in the binary. | |
rtc_disable_check_msg | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:295 | |
Set this to true to disable detailed error message and logging for | |
RTC_CHECKs. | |
rtc_disable_logging | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:288 | |
Set this to true to fully remove logging from WebRTC. | |
rtc_disable_metrics | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:298 | |
Set this to true to disable webrtc metrics. | |
rtc_disable_trace_events | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:291 | |
Set this to true to disable trace events. | |
rtc_dlog_always_on | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:51 | |
Setting this to true, will make RTC_DLOG() expand to log statements instead | |
of being removed by the preprocessor. | |
This is useful for example to be able to get RTC_DLOGs on a release build. | |
rtc_enable_android_aaudio | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:148 | |
Experimental: enable use of Android AAudio which requires Android SDK 26 or above | |
and NDK r16 or above. | |
rtc_enable_avx2 | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:274 | |
rtc_enable_bwe_test_logging | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:123 | |
Set this to true to enable BWE test logging. | |
rtc_enable_external_auth | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:113 | |
Enable when an external authentication mechanism is used for performing | |
packet authentication for RTP packets instead of libsrtp. | |
rtc_enable_grpc | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:310 | |
Enable gRPC used for negotiation in multiprocess tests | |
rtc_enable_libevent | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:260 | |
rtc_enable_objc_symbol_export | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:58 | |
Setting this to true will make RTC_OBJC_EXPORT expand to code that will | |
manage symbols visibility. By default, Obj-C/Obj-C++ symbols are exported | |
if C++ symbols are but setting this arg to true while keeping | |
rtc_enable_symbol_export=false will only export RTC_OBJC_EXPORT | |
annotated symbols. | |
rtc_enable_protobuf | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:241 | |
Enables the use of protocol buffers for debug recordings. | |
rtc_enable_sctp | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:244 | |
Set this to disable building with support for SCTP data channels. | |
rtc_enable_symbol_export | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:44 | |
Setting this to true will make RTC_EXPORT (see rtc_base/system/rtc_export.h) | |
expand to code that will manage symbols visibility. | |
rtc_enable_win_wgc | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:226 | |
When set to true, a capturer implementation that uses the | |
Windows.Graphics.Capture APIs will be available for use. This introduces a | |
dependency on the Win 10 SDK v10.0.17763.0. | |
rtc_exclude_audio_processing_module | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:120 | |
Selects whether the audio processing module should be excluded. | |
rtc_exclude_field_trial_default | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:68 | |
When WebRTC is built as part of Chromium it should exclude the default | |
implementation of field_trial unless it is building for NACL or | |
Chromecast. | |
rtc_exclude_metrics_default | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:77 | |
Setting this to true will define WEBRTC_EXCLUDE_METRICS_DEFAULT which | |
will tell the pre-processor to remove the default definition of symbols | |
needed to use metrics. In that case a new implementation needs to be | |
provided. | |
rtc_exclude_system_time | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:83 | |
Setting this to true will define WEBRTC_EXCLUDE_SYSTEM_TIME which | |
will tell the pre-processor to remove the default definition of the | |
SystemTimeNanos() which is defined in rtc_base/system_time.cc. In | |
that case a new implementation needs to be provided. | |
rtc_exclude_transient_suppressor | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:302 | |
Set this to true to exclude the transient suppressor in the audio processing | |
module from the build. | |
rtc_include_builtin_audio_codecs | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:207 | |
When set to false, builtin audio encoder/decoder factories and all the | |
audio codecs they depend on will not be included in libwebrtc.{a|lib} | |
(they will still be included in libjingle_peerconnection_so.so and | |
WebRTC.framework) | |
rtc_include_builtin_video_codecs | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:213 | |
When set to false, builtin video encoder/decoder factories and all the | |
video codecs they depends on will not be included in libwebrtc.{a|lib} | |
(they will still be included in libjingle_peerconnection_so.so and | |
WebRTC.framework) | |
rtc_include_dav1d_in_internal_decoder_factory | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:229 | |
Includes the dav1d decoder in the internal decoder factory when set to true. | |
rtc_include_ilbc | |
Current value = false | |
From //.gn:45 | |
Overridden from the default = true | |
From //third_party/webrtc/webrtc.gni:91 | |
Include the iLBC audio codec? | |
rtc_include_internal_audio_device | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:269 | |
Chromium uses its own IO handling, so the internal ADM is only built for | |
standalone WebRTC. | |
rtc_include_opus | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:94 | |
Disable this to avoid building the Opus audio codec. | |
rtc_include_pulse_audio | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:265 | |
Excluded in Chromium since its prerequisites don't require Pulse Audio. | |
rtc_include_tests | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:281 | |
Set this to true to build the unit tests. | |
Disabled when building with Chromium or Mozilla. | |
rtc_ios_macos_use_opengl_rendering | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:201 | |
rtc_jsoncpp_root | |
Current value (from the default) = "//third_party/jsoncpp/source/include" | |
From //third_party/webrtc/webrtc.gni:105 | |
Used to specify an external Jsoncpp include path when not compiling the | |
library that comes with WebRTC (i.e. rtc_build_json == 0). | |
rtc_libvpx_build_vp9 | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:250 | |
rtc_link_pipewire | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:141 | |
Set this to link PipeWire and required libraries directly instead of using the dlopen. | |
rtc_opus_support_120ms_ptime | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:98 | |
Enable this if the Opus version upon which WebRTC is built supports direct | |
encoding of 120 ms packets. | |
rtc_opus_variable_complexity | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:101 | |
Enable this to let the Opus audio codec change complexity on the fly. | |
rtc_prefer_fixed_point | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:158 | |
Selects fixed-point code where possible. | |
rtc_sanitize_coverage | |
Current value (from the default) = "" | |
From //third_party/webrtc/webrtc.gni:155 | |
Set to "func", "block", "edge" for coverage generation. | |
At unit test runtime set UBSAN_OPTIONS="coverage=1". | |
It is recommend to set include_examples=0. | |
Use llvm's sancov -html-report for human readable reports. | |
See http://clang.llvm.org/docs/SanitizerCoverage.html . | |
rtc_ssl_root | |
Current value (from the default) = "" | |
From //third_party/webrtc/webrtc.gni:109 | |
Used to specify an external OpenSSL include path when not compiling the | |
library that comes with WebRTC (i.e. rtc_build_ssl == 0). | |
rtc_use_absl_mutex | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:181 | |
Enable this flag to make webrtc::Mutex be implemented by absl::Mutex. | |
rtc_use_dummy_audio_file_devices | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:185 | |
By default, use normal platform audio support or dummy audio, but don't | |
use file-based audio playout and record. | |
rtc_use_h264 | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:178 | |
rtc_use_pipewire | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:138 | |
Set this to use PipeWire on the Wayland display server. | |
By default it's only enabled on desktop Linux (excludes ChromeOS) and | |
only when using the sysroot as PipeWire is not available in older and | |
supported Ubuntu and Debian distributions. | |
rtc_use_x11 | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:132 | |
Set this to false to skip building code that requires X11. | |
rtc_use_x11_extensions | |
Current value (from the default) = true | |
From //third_party/webrtc/webrtc.gni:285 | |
Set this to false to skip building code that also requires X11 extensions | |
such as Xdamage, Xfixes. | |
rtc_win_undef_unicode | |
Current value (from the default) = false | |
From //third_party/webrtc/webrtc.gni:221 | |
When set to true and in a standalone build, it will undefine UNICODE and | |
_UNICODE (which are always defined globally by the Chromium Windows | |
toolchain). | |
This is only needed for testing purposes, WebRTC wants to be sure it | |
doesn't assume /DUNICODE and /D_UNICODE but that it explicitly uses | |
wide character functions. | |
runtime_call_stats_count_everything | |
Current value (from the default) = false | |
From //third_party/blink/renderer/platform/BUILD.gn:189 | |
rust_sysroot_absolute | |
Current value (from the default) = "" | |
From //build/config/rust.gni:40 | |
Chromium currently has a Rust toolchain for Android and Linux, but | |
if you wish to experiment on more platforms you can use this | |
argument to specify an alternative toolchain. | |
This should be an absolute path to a directory | |
containing a 'bin' directory and others. Commonly | |
<home dir>/.rustup/toolchains/nightly-<something>-<something> | |
rustc_can_link | |
Current value (from the default) = true | |
From //build/config/rust.gni:73 | |
Rust code may end up being linked into a final executable by: | |
* rustc (which calls lld) | |
* our pre-existing C++ linker invocations | |
At the moment, this first pipeline is incompatible with the ldflags we use | |
for thin LTO, due to some problem in escaping gn rules. There's a further | |
problem with -lunwind on Android. | |
However, Rust code is still useful if it's contributing to our existing | |
C++ linker invocations, so this doesn't disable Rust entirely. It does | |
disable Rust unit test executables, so we do need to fix this. | |
https://crbug.com/1229423 | |
NB this may be overridden by individual toolchains | |
rustc_version | |
Current value (from the default) = "" | |
From //build/config/rust.gni:32 | |
The version string returned by rustc -V, if using an alternative toolchain. | |
safe_browsing_mode | |
Current value (from the default) = 1 | |
From //components/safe_browsing/buildflags.gni:20 | |
sample_profile_is_accurate | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:148 | |
Whether we should consider the profile we're using to be accurate. Accurate | |
profiles have the benefit of (potentially substantial) binary size | |
reductions, by instructing the compiler to optimize cold and uncovered | |
functions heavily for size. This often comes at the cost of performance. | |
sanitizer_coverage_flags | |
Current value (from the default) = "" | |
From //build/config/sanitizers/sanitizers.gni:100 | |
Value for -fsanitize-coverage flag. Setting this causes | |
use_sanitizer_coverage to be enabled. | |
This flag is not used for libFuzzer (use_libfuzzer=true). Instead, we use: | |
-fsanitize=fuzzer-no-link | |
Default value when unset and use_fuzzing_engine=true: | |
trace-pc-guard | |
Default value when unset and use_sanitizer_coverage=true: | |
trace-pc-guard,indirect-calls | |
seed_corpus_dir | |
Current value (from the default) = "//out/Default/gen/components/viz/service/compositor_frame_fuzzer/binary_seed_corpus" | |
From //components/viz/service/compositor_frame_fuzzer/BUILD.gn:9 | |
show_includes | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:177 | |
Enable -H, which prints the include tree during compilation. | |
For use by tools/clang/scripts/analyze_includes.py | |
skia_enable_skshaper | |
Current value (from the default) = true | |
From //third_party/skia/modules/skshaper/skshaper.gni:20 | |
skia_use_dawn | |
Current value (from the default) = false | |
From //skia/features.gni:7 | |
Enable experimental SkiaRenderer Dawn backend. | |
skia_use_gl | |
Current value (from the default) = true | |
From //skia/features.gni:8 | |
skip_buildtools_check | |
Current value (from the default) = false | |
From //third_party/perfetto/gn/perfetto.gni:314 | |
Skip buildtools dependency checks (needed for ChromeOS). | |
strip_debug_info | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:64 | |
Android-only: Strip the debug info of libraries within lib.unstripped to | |
reduce size. As long as symbol_level > 0, this will still allow stacks to be | |
symbolized. | |
subpixel_font_rendering_disabled | |
Current value (from the default) = false | |
From //gpu/ipc/service/BUILD.gn:13 | |
supports_llvm | |
Current value (from the default) = true | |
From //third_party/swiftshader/src/Reactor/reactor.gni:17 | |
supports_subzero | |
Current value (from the default) = true | |
From //third_party/swiftshader/src/Reactor/reactor.gni:13 | |
Subzero doesn't support ARM64, MIPS64, PPC64, and RISCV64 (only x86 and ARMv7a). | |
swiftshader_optimized_debug_build | |
Current value (from the default) = true | |
From //third_party/swiftshader/src/swiftshader.gni:23 | |
By default, build SwiftShader with optimizations enabled in debug | |
for performance reasons. Set to false to build as unoptimized. | |
swiftshader_startup_dialog | |
Current value (from the default) = false | |
From //third_party/swiftshader/src/swiftshader.gni:27 | |
If enabled, debug builds on Windows will pop up a dialog when the | |
SwiftShader DLL gets loaded, to facilitate attaching a debugger. | |
symbol_level | |
Current value (from the default) = -1 | |
From //build/config/compiler/compiler.gni:59 | |
How many symbols to include in the build. This affects the performance of | |
the build since the symbols are large and dealing with them is slow. | |
2 means regular build with symbols. | |
1 means minimal symbols, usually enough for backtraces only. Symbols with | |
internal linkage (static functions or those in anonymous namespaces) may not | |
appear when using this level. | |
0 means no symbols. | |
-1 means auto-set according to debug/release and platform. | |
sync_user_agent_product | |
Current value (from the default) = "Chrome" | |
From //components/sync/base/BUILD.gn:10 | |
Controls the product part of the user agent calculated in sync_util.cc. | |
sysroot | |
Current value (from the default) = "" | |
From //build/config/sysroot.gni:20 | |
The path of the sysroot for the current toolchain. If empty, default | |
sysroot is used. | |
system_headers_in_deps | |
Current value (from the default) = false | |
From //build/toolchain/gcc_toolchain.gni:34 | |
Use -MD instead of -MMD for compiler commands. This is useful for tracking | |
the comprehensive set of dependencies. | |
system_libdir | |
Current value (from the default) = "lib" | |
From //build/config/linux/pkg_config.gni:47 | |
CrOS systemroots place pkgconfig files at <systemroot>/usr/share/pkgconfig | |
and one of <systemroot>/usr/lib/pkgconfig or <systemroot>/usr/lib64/pkgconfig | |
depending on whether the systemroot is for a 32 or 64 bit architecture. | |
When build under GYP, CrOS board builds specify the 'system_libdir' variable | |
as part of the GYP_DEFINES provided by the CrOS emerge build or simple | |
chrome build scheme. This variable permits controlling this for GN builds | |
in similar fashion by setting the `system_libdir` variable in the build's | |
args.gn file to 'lib' or 'lib64' as appropriate for the target architecture. | |
system_wayland_scanner_path | |
Current value (from the default) = "/usr/bin/wayland-scanner" | |
From //third_party/wayland/features.gni:17 | |
target_cpu | |
Current value (from the default) = "" | |
(Internally set; try `gn help target_cpu`.) | |
target_environment | |
Current value (from the default) = "" | |
From //build/config/ios/config.gni:11 | |
Configure the environment for which to build. Could be either "device", | |
"simulator" or "catalyst". If unspecified, then it will be assumed to be | |
"simulator" if the target_cpu is "x68" or "x64", "device" otherwise. The | |
default is only there for compatibility reasons and will be removed (see | |
crbug.com/1138425 for more details). | |
target_os | |
Current value (from the default) = "" | |
(Internally set; try `gn help target_os`.) | |
target_rpath | |
Current value (from the default) = "" | |
From //build/config/chromecast_build.gni:30 | |
If non empty, rpath of executables is set to this. | |
If empty, default value is used. | |
target_sysroot | |
Current value (from the default) = "" | |
From //build/config/sysroot.gni:13 | |
The path of the sysroot that is applied when compiling using the target | |
toolchain. | |
target_sysroot_dir | |
Current value (from the default) = "//build/linux" | |
From //build/config/sysroot.gni:16 | |
The path to directory containing linux sysroot images. | |
tests_have_location_tags | |
Current value (from the default) = true | |
From //testing/test.gni:23 | |
Some component repos (e.g. ANGLE) import //testing but do not have | |
"location_tags.json", and so we don't want to try and upload the tags | |
for their tests. | |
And, some build configs may simply turn off generation altogether. | |
thin_lto_enable_optimizations | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:129 | |
tint_build_glsl_writer | |
Current value (from the default) = true | |
From //third_party/dawn/tint_overrides_with_defaults.gni:72 | |
tint_build_hlsl_writer | |
Current value (from the default) = true | |
From //third_party/dawn/tint_overrides_with_defaults.gni:67 | |
tint_build_msl_writer | |
Current value (from the default) = true | |
From //third_party/dawn/tint_overrides_with_defaults.gni:62 | |
tint_build_unittests | |
Current value (from the default) = true | |
From //third_party/dawn/tint_overrides_with_defaults.gni:77 | |
toolkit_views | |
Current value (from the default) = true | |
From //build/config/ui.gni:33 | |
True means the UI is built using the "views" framework. | |
treat_warnings_as_errors | |
Current value (from the default) = true | |
From //build/config/compiler/compiler.gni:49 | |
Default to warnings as errors for default workflow, where we catch | |
warnings with known toolchains. Allow overriding this e.g. for Chromium | |
builds on Linux that could use a different version of the compiler. | |
With GCC, warnings in no-Chromium code are always not treated as errors. | |
trial_comparison_cert_verifier_supported | |
Current value (from the default) = false | |
From //net/features.gni:40 | |
Platforms where the cert verifier comparison trial is supported. | |
See https://crbug.com/649026. | |
use_afl | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:75 | |
Compile for fuzzing with AFL. | |
use_allocator | |
Current value (from the default) = "partition" | |
From //base/allocator/allocator.gni:48 | |
Memory allocator to use. Set to "none" to use default allocator. | |
use_allocator_shim | |
Current value (from the default) = true | |
From //base/allocator/allocator.gni:51 | |
Causes all the allocations to be routed via allocator_shim.cc. | |
use_alsa | |
Current value (from the default) = true | |
From //media/media_options.gni:169 | |
use_amdgpu_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:17 | |
use_android_unwinder_v2 | |
Current value (from the default) = true | |
From //build/config/compiler/compiler.gni:33 | |
Set to true to use the android unwinder V2 implementation. | |
use_android_user_agent | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:87 | |
Include 'Android' in user agent string to avoid being served desktop | |
versions of websites. | |
TODO(halliwell): consider making this default for all Cast hardware. | |
use_arc_protected_media | |
Current value (from the default) = false | |
From //media/gpu/args.gni:43 | |
Indicates if the ChromeOS protected media functionality should also be | |
utilized by HW video decoding for ARC. | |
use_asan_backup_ref_ptr | |
Current value (from the default) = false | |
From //base/allocator/allocator.gni:119 | |
The supported platforms are supposed to match `_is_brp_supported`, but we | |
enable the feature on Linux early because it's most widely used for security | |
research | |
use_aura | |
Current value (from the default) = true | |
From //build/config/ui.gni:28 | |
Indicates if Aura is enabled. Aura is a low-level windowing library, sort | |
of a replacement for GDI or GTK. | |
use_backup_ref_ptr | |
Current value (from the default) = true | |
From //base/allocator/allocator.gni:90 | |
Set use_backup_ref_ptr true to use BackupRefPtr (BRP) as the implementation | |
of raw_ptr<T>, and enable PartitionAlloc support for it. | |
use_base_test_suite | |
Current value (from the default) = true | |
From //sandbox/linux/BUILD.gn:20 | |
On Android, use plain GTest. | |
use_blink_extensions_chromeos | |
Current value (from the default) = false | |
From //third_party/blink/renderer/config.gni:49 | |
If true, the experimental renderer extensions library will be used. | |
use_bluez | |
Current value (from the default) = true | |
From //device/bluetooth/cast_bluetooth.gni:5 | |
use_bundled_fontconfig | |
Current value (from the default) = true | |
From //third_party/fontconfig/fontconfig.gni:11 | |
use_bundled_weston | |
Current value (from the default) = false | |
From //ui/ozone/platform/wayland/wayland.gni:14 | |
Checks if Weston must be compiled | |
use_cfi_cast | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:115 | |
Enable checks for bad casts: derived cast and unrelated cast. | |
TODO(krasin): remove this, when we're ready to add these checks by default. | |
https://crbug.com/626794 | |
use_cfi_diag | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:64 | |
Print detailed diagnostics when Control Flow Integrity detects a violation. | |
use_cfi_icall | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:61 | |
use_cfi_recover | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:68 | |
Let Control Flow Integrity continue execution instead of crashing when | |
printing diagnostics (use_cfi_diag = true). | |
use_chromecast_cdms | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:198 | |
use_chromeos_protected_av1 | |
Current value (from the default) = false | |
From //media/gpu/args.gni:48 | |
Indicates if ChromeOS protected media supports the AV1 codec. By default | |
H.264, VP9 and HEVC are enabled if protected media is enabled; AV1 is | |
optional. | |
use_chromeos_protected_media | |
Current value (from the default) = false | |
From //media/gpu/args.gni:39 | |
Indicates if ChromeOS protected media support exists. This is used | |
to enable the CDM daemon in Chrome OS as well as support for | |
encrypted content with HW video decoders. | |
TODO(jkardatzke): Enable this for Lacros always, it is determined at runtime | |
in that configuration. | |
use_chromium_rust_toolchain | |
Current value (from the default) = true | |
From //build/config/rust.gni:29 | |
Use experimental Rust toolchain built in-tree. See //tools/rust. For now, | |
only use it for linux targets. The package only has prebuilt libs for linux. | |
More targets will be added later. | |
Ideally this should check `current_os` so that e.g. Android builds will use | |
the Android toolchain for target artifacts and the Chromium Rust toolchain | |
for host artifacts. Currently there is an std mixup in //build/rust/std that | |
prevents this. | |
TODO(https://crbug.com/1245714): fix std handling and check `current_os`. | |
use_clang_coverage | |
Current value (from the default) = false | |
From //build/config/coverage/coverage.gni:23 | |
use_clang_profiling | |
Current value (from the default) = false | |
From //build/config/profiling/profiling.gni:10 | |
use_clang_profiling_inside_sandbox | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:180 | |
use_command_buffer | |
Current value (from the default) = false | |
From //device/vr/buildflags/buildflags.gni:14 | |
use_cras | |
Current value (from the default) = false | |
From //media/media_options.gni:48 | |
Override to dynamically link the cras (ChromeOS audio) library. | |
use_crash_key_stubs | |
Current value (from the default) = false | |
From //components/crash/core/common/BUILD.gn:11 | |
If set to true, this will stub out and disable the entire crash key system. | |
use_cups | |
Current value (from the default) = true | |
From //printing/buildflags/buildflags.gni:27 | |
use_cups_ipp | |
Current value (from the default) = false | |
From //printing/buildflags/buildflags.gni:51 | |
Enables the CUPS IPP printing backend. | |
TODO(crbug.com/226176): Remove this after CUPS PPD API calls are removed. | |
use_custom_libcxx | |
Current value (from the default) = true | |
From //build/config/c++/c++.gni:15 | |
use_custom_libcxx_for_host | |
Current value (from the default) = false | |
From //build/config/c++/c++.gni:25 | |
Use libc++ instead of stdlibc++ when using the host_cpu toolchain, even if | |
use_custom_libcxx is false. This is useful for cross-compiles where a custom | |
toolchain for the target_cpu has been set as the default toolchain, but | |
use_custom_libcxx should still be true when building for the host. The | |
expected usage is to set use_custom_libcxx=false and | |
use_custom_libcxx_for_host=true in the passed in buildargs. | |
use_cxx11 | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:89 | |
Allow projects that wish to stay on C++11 to override Chromium's default. | |
use_dawn | |
Current value (from the default) = true | |
From //ui/gl/features.gni:21 | |
Should Dawn support be compiled to back the WebGPU implementation? | |
Also controls linking Dawn dependencies in such as SPIRV-Tools/SPIRV-Cross. | |
use_dbus | |
Current value (from the default) = true | |
From //build/config/features.gni:36 | |
use_debug_fission | |
Current value (from the default) = "default" | |
From //build/config/compiler/compiler.gni:80 | |
use_debug_fission: whether to use split DWARF debug info | |
files. This can reduce link time significantly, but is incompatible | |
with some utilities such as icecc and ccache. Requires gold and | |
gcc >= 4.8 or clang. | |
http://gcc.gnu.org/wiki/DebugFission | |
This is a placeholder value indicating that the code below should set | |
the default. This is necessary to delay the evaluation of the default | |
value expression until after its input values such as use_gold have | |
been set, e.g. by a toolchain_args() block. | |
use_dummy_lastchange | |
Current value (from the default) = false | |
From //build/util/lastchange.gni:9 | |
use_dwarf5 | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:165 | |
Enable DWARF v5. | |
use_egl | |
Current value (from the default) = true | |
From //ui/gl/features.gni:17 | |
use_evdev_gestures | |
Current value (from the default) = false | |
From //ui/events/ozone/evdev/BUILD.gn:15 | |
Support ChromeOS touchpad gestures with ozone. | |
use_external_fuzzing_engine | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:78 | |
Compile for fuzzing with an external engine (e.g., Grammarinator). | |
use_external_popup_menu | |
Current value (from the default) = false | |
From //content/common/features.gni:9 | |
Whether or not to use external popup menu. | |
use_exynos_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:18 | |
use_fake_binary_experiment | |
Current value (from the default) = false | |
From //base/allocator/allocator.gni:114 | |
Registers the binary for a fake binary A/B experiment. The binaries built | |
with this flag have no behavior difference, except for setting a synthetic | |
Finch. | |
use_full_pdb_paths | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:173 | |
Override this to put full paths to PDBs in Windows PE files. This helps | |
windbg and Windows Performance Analyzer with finding the PDBs in some local- | |
build scenarios. This is never needed for bots or official builds. Because | |
this puts the output directory in the DLLs/EXEs it breaks build determinism. | |
Bugs have been reported to the windbg/WPA teams and this workaround will be | |
removed when they are fixed. | |
use_gcm_from_platform | |
Current value (from the default) = false | |
From //components/gcm_driver/config.gni:8 | |
Use native GCM driver for all non-Android builds. On Android, the platform | |
includes GMS which provides the GCM client. | |
use_ghash | |
Current value (from the default) = true | |
From //build/config/compiler/BUILD.gn:119 | |
Turn this on to use ghash feature of lld for faster debug link on Windows. | |
http://blog.llvm.org/2018/01/improving-link-time-on-windows-with.html | |
use_gio | |
Current value (from the default) = true | |
From //build/config/features.gni:38 | |
use_glib | |
Current value (from the default) = true | |
From //build/config/ui.gni:36 | |
use_gnome_keyring | |
Current value (from the default) = true | |
From //components/os_crypt/features.gni:11 | |
Whether to use libgnome-keyring (deprecated by libsecret). | |
See http://crbug.com/466975 and http://crbug.com/355223. | |
use_gold | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:222 | |
Whether to use the gold linker from binutils instead of lld or bfd. | |
use_goma | |
Current value (from the default) = false | |
From //build/toolchain/goma.gni:9 | |
Set to true to enable distributed compilation using Goma. | |
use_goma_rust | |
Current value (from the default) = false | |
From //build/config/rust.gni:60 | |
Use goma for Rust builds. Experimental. The only known problem is | |
b/193072381, but then again, we don't expect a build speedup before much | |
more work is done. | |
use_goma_thin_lto | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:98 | |
If true, use Goma for ThinLTO code generation where applicable. | |
use_gtk | |
Current value (from the default) = true | |
From //build/config/linux/gtk/gtk.gni:9 | |
Whether or not we should use libgtk. | |
use_icf | |
Current value (from the default) = true | |
From //build/config/compiler/BUILD.gn:190 | |
Set to true to use icf, Identical Code Folding. | |
icf=all is broken in older golds, see | |
https://sourceware.org/bugzilla/show_bug.cgi?id=17704 | |
chromeos binutils has been patched with the fix, so always use icf there. | |
The bug only affects x86 and x64, so we can still use ICF when targeting | |
other architectures. | |
lld doesn't have the bug. | |
use_intel_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:19 | |
use_internal_autofill_patterns | |
Current value (from the default) = false | |
From //components/autofill/core/browser/BUILD.gn:30 | |
Normally, only branded builds use Google-internal sets of parsing patterns. | |
Setting the variable 'use_internal_autofill_patterns' in args.gn overrides | |
this default. | |
use_internal_isolated_origins | |
Current value (from the default) = false | |
From //components/site_isolation/BUILD.gn:18 | |
Normally, only Google Chrome Android and Fuchsia WebEngine builds will use | |
a Google-internal list of isolated origins defined below. | |
If other Fuchsia embedders are added, the associated logic may need to be | |
updated. See crbug.com/1179087. | |
You can set the variable 'use_internal_isolated_origins' to true to use this | |
Google-internal list of isolated origins even in a developer build. Setting | |
this variable explicitly to true will cause your build to fail if the | |
internal file is missing. | |
use_jacoco_coverage | |
Current value (from the default) = false | |
From //build/config/coverage/coverage.gni:27 | |
Enables JaCoCo Java code coverage. | |
use_java_goma | |
Current value (from the default) = false | |
From //build/toolchain/goma.gni:26 | |
TODO(crbug.com/726475): true if use_goma = true in the future. | |
use_kerberos | |
Current value (from the default) = true | |
From //net/features.gni:19 | |
Enable Kerberos authentication. It is disabled by default on iOS, Fuchsia | |
and Chromecast, at least for now. This feature needs configuration | |
(krb5.conf and so on). | |
TODO(fuchsia): Enable kerberos on Fuchsia when it's implemented there. | |
use_layout_plugin | |
Current value (from the default) = true | |
From //third_party/blink/renderer/core/BUILD.gn:89 | |
Set to true to enable the clang layout plugin that help you to follow the | |
layout-related restrictions during compilation. | |
use_libfuzzer | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:72 | |
Compile for fuzzing with LLVM LibFuzzer. | |
See http://www.chromium.org/developers/testing/libfuzzer | |
use_libgav1_parser | |
Current value (from the default) = true | |
From //third_party/libgav1/options.gni:14 | |
use_libinput | |
Current value (from the default) = false | |
From //build/config/chromeos/args.gni:37 | |
Determines if we're willing to link against libinput | |
use_libjpeg_turbo | |
Current value (from the default) = true | |
From //third_party/libjpeg.gni:11 | |
Uses libjpeg_turbo as the jpeg implementation. Has no effect if | |
use_system_libjpeg is set. | |
use_libpci | |
Current value (from the default) = true | |
From //third_party/angle/BUILD.gn:31 | |
Use the PCI lib to collect GPU information on Linux. | |
use_lld | |
Current value (from the default) = true | |
From //build/config/compiler/compiler.gni:41 | |
Set to true to use lld, the LLVM linker. | |
In late bring-up on macOS (see docs/mac_lld.md). | |
Tentatively used on iOS. | |
The default linker everywhere else. | |
use_locally_built_instrumented_libraries | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:47 | |
Use dynamic libraries instrumented by one of the sanitizers instead of the | |
standard system libraries. Set this flag to build the libraries from source. | |
use_low_quality_image_interpolation | |
Current value (from the default) = false | |
From //third_party/blink/renderer/config.gni:43 | |
If true, defaults image interpolation to low quality. | |
use_lto_in_rustc_linking | |
Current value (from the default) = false | |
From //build/config/rust.gni:55 | |
Use LTO when using rustc to link binaries. Experimental. Currently incompatible | |
with the options we use in our C++ toolchain to split LTO units. | |
This has no effect on the production of normal Chrome binaries, which are | |
linked by clang/lld rather than rustc. | |
https://crbug.com/1229419 | |
use_marvell_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:20 | |
use_mediatek_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:21 | |
use_meson_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:22 | |
use_message_port_core | |
Current value (from the default) = false | |
From //components/cast/message_port/BUILD.gn:13 | |
If true, forces cast_api_bindings::CreatePlatformMessagePortPair to use | |
cast_message_port::CreateMessagePortPair as its implementation. Otherwise, | |
uses one of the other types based on platform. | |
use_mpris | |
Current value (from the default) = true | |
From //components/system_media_controls/linux/buildflags/buildflags.gni:11 | |
Enables Chromium implementation of the MPRIS D-Bus interface for controlling | |
media playback. See ../README.md for details. | |
use_msm_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:23 | |
use_mte_checked_ptr | |
Current value (from the default) = false | |
From //base/allocator/allocator.gni:92 | |
use_nss_certs | |
Current value (from the default) = true | |
From //crypto/features.gni:9 | |
True if NSS is used for certificate handling. | |
use_official_enterprise_connectors_api_keys | |
Current value (from the default) = false | |
From //chrome/browser/BUILD.gn:66 | |
You can set the variable 'use_official_enterprise_connectors_api_keys' to | |
true to use the Google-internal file containing official API keys | |
for enterprise connector partners even in a developer build. Setting this | |
variable explicitly to true will cause your build to fail if the | |
internal file is missing. | |
Note that official builds always behave as if the variable | |
was explicitly set to true, i.e. they always use official keys, | |
and will fail to build if the internal file is missing. | |
use_official_google_api_keys | |
Current value (from the default) = "" | |
From //google_apis/BUILD.gn:28 | |
Set the variable 'use_official_google_api_keys' to true | |
to use the Google-internal file containing official API keys | |
even in a developer build. Setting this variable explicitly to | |
true will cause the build to fail if the internal file is missing. | |
Set the variable to false to not use the internal file, even for | |
Chrome-branded builds or when it exists in your checkout. | |
Leave it unset or set to "" to have the variable | |
implicitly set to true if you have | |
src/google_apis/internal/google_chrome_api_keys.h in your | |
checkout, and implicitly set to false if not. | |
Note that Chrome-branded builds always behave as if the variable | |
was explicitly set to true, i.e. they always use official keys, | |
and will fail to build if the internal file is missing. | |
use_ozone | |
Current value (from the default) = true | |
From //build/config/ozone.gni:12 | |
Indicates if Ozone is enabled. Ozone is a low-level library layer for Linux | |
that does not require X11. | |
use_pangocairo | |
Current value (from the default) = true | |
From //build/config/linux/pangocairo/pangocairo.gni:9 | |
use_partition_alloc | |
Current value (from the default) = true | |
From //base/allocator/allocator.gni:61 | |
Whether PartitionAlloc should be available for use or not. | |
true makes PartitionAlloc linked to the executable or shared library and | |
makes it available for use. It doesn't mean that the default allocator | |
is PartitionAlloc, which is governed by |use_allocator|. | |
This flag is currently set to false only on Cronet bots, because Cronet | |
doesn't use PartitionAlloc at all, and doesn't wish to incur the library | |
size increase (crbug.com/674570). | |
use_perfetto_client_library | |
Current value (from the default) = false | |
From //build_overrides/build.gni:28 | |
Switches the TRACE_EVENT instrumentation from base's TraceLog implementation | |
to //third_party/perfetto's client library. Not implemented yet, currently a | |
no-op to set up trybot infrastructure. | |
TODO(crbug/1006769): Switch to perfetto's client library. | |
use_platform_icu_alternatives | |
Current value (from the default) = false | |
From //url/features.gni:10 | |
Enables the use of ICU alternatives in lieu of ICU for the target toolchain. | |
The flag is used for Cronet to reduce the size of the Cronet binary. | |
use_pulseaudio | |
Current value (from the default) = true | |
From //media/media_options.gni:180 | |
use_qt | |
Current value (from the default) = false | |
From //ui/qt/qt.gni:7 | |
https://crbug.com/1317782 enable QT UI by default on Linux. | |
use_radeon_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:24 | |
use_real_dbus_clients | |
Current value (from the default) = false | |
From //chromeos/dbus/config/use_real_dbus_clients.gni:9 | |
Instantiate real D-Bus clients instead of fakes. | |
use_remoteexec | |
Current value (from the default) = false | |
From //build/toolchain/rbe.gni:14 | |
Set to true to enable remote compilation using reclient. | |
use_rockchip_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:25 | |
use_rts | |
Current value (from the default) = false | |
From //build/config/rts.gni:4 | |
For more info about RTS, please see | |
//docs/testing/regression-test-selection.md | |
use_rtti | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:80 | |
Build with C++ RTTI enabled. Chromium builds without RTTI by default, | |
but some sanitizers are known to require it, like CFI diagnostics | |
and UBsan variants. | |
use_runtime_vlog | |
Current value (from the default) = true | |
From //build/config/logging.gni:31 | |
Use runtime vlog everywhere except for ash-chrome. | |
When `use_runtime_vlog` is true, | |
command line switch `--vmodule=xxx` or `--v=x` could be used to | |
control vlog level at runtime. | |
when `use_runtime_volog` is false, | |
verbose log level is controlled by `ENABLE_VLOG_LEVEL` macro. VLOG(n) | |
is kept and generate output if `n` is less than or equal to the vlog | |
level defined by the macro. | |
Command line switch `--vmodule=xxx`, or `--v=x` would have no effect. | |
Runtime vlog is used everywhere except on ash-chrome. | |
Ash-chrome has a few vmodule patterns that need to be used indefinitely | |
to investigate problems from logs in feedback reports. These vmodule | |
patterns are using too much cpu cycles (see http://crbug/489441). Turning | |
off runtime vlog and using build time vlog would avoid paying that cpu tax | |
and have a nice side effect of a smaller production binary. | |
use_sanitizer_configs_without_instrumentation | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:105 | |
When enabled, only relevant sanitizer defines are set, but compilation | |
happens with no extra flags. This is useful when in component build | |
enabling sanitizers only in some of the components. | |
use_sanitizer_coverage | |
Current value (from the default) = false | |
From //build/config/sanitizers/sanitizers.gni:169 | |
use_static_angle | |
Current value (from the default) = false | |
From //ui/gl/features.gni:12 | |
Should ANGLE be linked statically? | |
use_swiftshader_with_subzero | |
Current value (from the default) = true | |
From //third_party/swiftshader/src/Reactor/reactor.gni:27 | |
Subzero produces much smaller binaries, so always use it when available, | |
except for MSan builds which only get Reactor code instrumented with LLVM. | |
use_synaptics_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:26 | |
use_sysroot | |
Current value (from the default) = true | |
From //build/config/sysroot.gni:24 | |
Controls default is_linux sysroot. If set to true, and sysroot | |
is empty, default sysroot is calculated. | |
use_system_crash_handler | |
Current value (from the default) = false | |
From //chromecast/chromecast.gni:134 | |
Set to true to forward crashes to the system's crash handler instead of | |
handling them internally. This disables the built-in crash handler. | |
use_system_freetype | |
Current value (from the default) = false | |
From //build/config/freetype/freetype.gni:13 | |
Blink needs a recent and properly build-configured FreeType version to | |
support OpenType variations, color emoji and avoid security bugs. By default | |
we ship and link such a version as part of Chrome. For distributions that | |
prefer to keep linking to the version the system, FreeType must be newer | |
than version 2.7.1 and have color bitmap support compiled in. WARNING: | |
System FreeType configurations other than as described WILL INTRODUCE TEXT | |
RENDERING AND SECURITY REGRESSIONS. | |
use_system_harfbuzz | |
Current value (from the default) = false | |
From //third_party/harfbuzz-ng/harfbuzz.gni:11 | |
Blink uses a cutting-edge version of Harfbuzz; most Linux distros do not | |
contain a new enough version of the code to work correctly. However, | |
ChromeOS chroots (i.e, real ChromeOS builds for devices) do contain a | |
new enough version of the library, and so this variable exists so that | |
ChromeOS can build against the system lib and keep binary sizes smaller. | |
use_system_lcms2 | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:60 | |
Don't build against bundled lcms2. | |
use_system_libdrm | |
Current value (from the default) = true | |
From //build/config/linux/libdrm/BUILD.gn:14 | |
Controls whether the build should use the version of libdrm library shipped | |
with the system. In release builds of desktop Linux and Chrome OS we use the | |
system version. Some Chromecast devices use this as well. | |
use_system_libjpeg | |
Current value (from the default) = false | |
From //third_party/libjpeg.gni:7 | |
Uses system libjpeg. If true, overrides use_libjpeg_turbo. | |
use_system_libopenjpeg2 | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:63 | |
Don't build against bundled libopenjpeg2. | |
use_system_libpng | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:66 | |
Don't build against bundled libpng. | |
use_system_libsync | |
Current value (from the default) = false | |
From //third_party/libsync/BUILD.gn:13 | |
Controls whether the build should use the version of libsync | |
library shipped with the system. In release builds of Chrome OS we | |
use the system version, but when building on dev workstations we | |
bundle it because Ubuntu doesn't ship a usable version. | |
use_system_libwayland | |
Current value (from the default) = true | |
From //third_party/wayland/features.gni:12 | |
Controls whether the build should use the version of Wayland | |
library shipped with the system or Chromium third_party. | |
use_system_minigbm | |
Current value (from the default) = true | |
From //third_party/minigbm/BUILD.gn:15 | |
Controls whether the build should use the version of minigbm library shipped | |
with the system. In release builds of desktop Linux and Chrome OS we use the | |
system version. | |
use_system_wayland_scanner | |
Current value (from the default) = false | |
From //third_party/wayland/features.gni:21 | |
This may be set by Chromium packagers who do not wish to use the bundled | |
wayland scanner. | |
use_system_zlib | |
Current value (from the default) = false | |
From //third_party/pdfium/pdfium.gni:57 | |
Don't build against bundled zlib. | |
use_tegra_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:27 | |
use_text_section_splitting | |
Current value (from the default) = false | |
From //build/config/compiler/BUILD.gn:149 | |
This argument is to control whether enabling text section splitting in the | |
final binary. When enabled, the separated text sections with prefix | |
'.text.hot', '.text.unlikely', '.text.startup' and '.text.exit' will not be | |
merged to '.text' section. This allows us to identify the hot code section | |
('.text.hot') in the binary which may be mlocked or mapped to huge page to | |
reduce TLB misses which gives performance improvement on cpu usage. | |
The gold linker by default has text section splitting enabled. | |
use_thin_lto | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:91 | |
use_udev | |
Current value (from the default) = true | |
From //build/config/features.gni:34 | |
libudev usage. This currently only affects the content layer. | |
use_unix_sockets | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:121 | |
Whether use unix sockets in Cast input/output stream. | |
use_unofficial_version_number | |
Current value (from the default) = true | |
From //components/version_info/BUILD.gn:10 | |
use_v4l2_codec | |
Current value (from the default) = false | |
From //media/gpu/args.gni:21 | |
Indicates if Video4Linux2 codec is used. This is used for all CrOS | |
platforms which have v4l2 hardware encoder / decoder. | |
use_v4l2_codec_aml | |
Current value (from the default) = false | |
From //media/gpu/args.gni:25 | |
Indicates if Video4Linux2 AML encoder is used. This is used for AML | |
platforms which have v4l2 hardware encoder | |
use_v4lplugin | |
Current value (from the default) = false | |
From //media/gpu/args.gni:17 | |
Indicates if V4L plugin is used. | |
use_v8_context_snapshot | |
Current value (from the default) = true | |
From //tools/v8_context_snapshot/v8_context_snapshot.gni:19 | |
use_vaapi | |
Current value (from the default) = true | |
From //media/gpu/args.gni:31 | |
Indicates if VA-API-based hardware acceleration is to be used. This | |
is typically the case on x86-based ChromeOS devices. | |
VA-API should also be compiled by default on x11-using linux devices | |
using x86/x64. | |
use_vaapi_image_codecs | |
Current value (from the default) = false | |
From //media/gpu/args.gni:68 | |
VA-API also allows decoding of images, but we don't want to use this | |
outside of chromeos, even if video decoding is enabled. | |
use_vaapi_x11 | |
Current value (from the default) = true | |
From //media/gpu/args.gni:11 | |
Indicates if X11 VA-API-based hardware acceleration is to be used. | |
See also the comment near the |use_vaapi| arg. | |
use_vc4_minigbm | |
Current value (from the default) = false | |
From //third_party/minigbm/BUILD.gn:28 | |
use_vendor_shlibs | |
Current value (from the default) = true | |
From //chromecast/chromecast.gni:152 | |
link vendor-supplied functionality as shared libraries. When true, | |
cast_shared_library targets are normal shared libraries. When false, | |
they become source_sets. | |
use_viz_debugger | |
Current value (from the default) = true | |
From //components/viz/common/debugger/viz_debugger.gni:8 | |
Indicates if the Viz Debugger is enabled. This is disabled by default on | |
official builds due to security and performance reasons. | |
use_vr_assets_component | |
Current value (from the default) = false | |
From //chrome/browser/vr/features.gni:12 | |
Whether to register, download, etc. the VR assets component. | |
use_wayland_gbm | |
Current value (from the default) = true | |
From //ui/ozone/platform/wayland/wayland.gni:11 | |
Checks if Wayland must be compiled with dmabuf/gbm feature, which allows a | |
multi-process hardware accelerated mode. | |
use_webaudio_ffmpeg | |
Current value (from the default) = false | |
From //third_party/blink/renderer/config.gni:46 | |
If true, ffmpeg will be used for computing FFTs for WebAudio | |
use_webaudio_pffft | |
Current value (from the default) = true | |
From //third_party/blink/renderer/config.gni:20 | |
If true, use PFFFT for WebAudio FFT support. Do not use for Mac because the | |
FFT library there is much faster. | |
use_wuffs_gif_parser | |
Current value (from the default) = true | |
From //third_party/wuffs/config.gni:6 | |
use_xkbcommon | |
Current value (from the default) = true | |
From //ui/base/ui_features.gni:10 | |
using_mismatched_sample_profile | |
Current value (from the default) = false | |
From //build/config/compiler/compiler.gni:105 | |
Whether we're using a sample profile collected on an architecture different | |
than the one we're compiling for. | |
It's currently not possible to collect AFDO profiles on anything but | |
x86{,_64}. | |
v8_advanced_bigint_algorithms | |
Current value (from the default) = true | |
From //v8/gni/v8.gni:105 | |
Enable advanced BigInt algorithms, costing about 10-30 KB binary size | |
depending on platform. Disabled on Android to save binary size. | |
v8_allocation_site_tracking | |
Current value (from the default) = true | |
From //v8/BUILD.gn:355 | |
Enable global allocation site tracking. | |
v8_android_log_stdout | |
Current value (from the default) = false | |
From //v8/BUILD.gn:31 | |
Print to stdout on Android. | |
v8_annotate_torque_ir | |
Current value (from the default) = false | |
From //v8/BUILD.gn:277 | |
Generate comments describing the Torque intermediate representation. | |
v8_builtins_profiling_log_file | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:190 | |
Provides the given V8 log file as an input to mksnapshot, where it can be | |
used for profile-guided optimization of builtins. | |
To do profile-guided optimizations of builtins: | |
1. Build with v8_enable_builtins_profiling = true | |
2. Run your chosen workload with the --turbo-profiling-log-builtins flag. | |
For Chrome, the invocation might look like this: | |
chrome --no-sandbox --disable-extensions | |
--js-flags="--turbo-profiling-log-builtins --logfile=path/to/v8.log" | |
"http://localhost/test-suite" | |
3. Run tools/get_hints.py to produce the branch hints, selecting min_count | |
and threshold_ratio as you wish. | |
4. Optionally repeat steps 2-3 for additional workloads, and use | |
tools/combine_hints.py to combine the hints produced in step 3 into a | |
single file. | |
5. Build again with v8_builtins_profiling_log_file set to the file created | |
in step 3 or 4. | |
v8_can_use_fpu_instructions | |
Current value (from the default) = true | |
From //v8/BUILD.gn:223 | |
Similar to vfp but on MIPS. | |
v8_check_header_includes | |
Current value (from the default) = false | |
From //v8/BUILD.gn:238 | |
Check that each header can be included in isolation (requires also | |
setting the "check_v8_header_includes" gclient variable to run a | |
specific hook). | |
v8_code_comments | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:107 | |
Allow runtime-enabled code comments (with --code-comments). Enabled by | |
default in debug builds. | |
Sets -dV8_CODE_COMMENTS | |
v8_code_coverage | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:14 | |
Set flags for tracking code coverage. Uses gcov with gcc and sanitizer | |
coverage with clang. | |
v8_context_snapshot_filename | |
Current value (from the default) = "v8_context_snapshot.bin" | |
From //tools/v8_context_snapshot/v8_context_snapshot.gni:44 | |
v8_control_flow_integrity | |
Current value (from the default) = false | |
From //v8/BUILD.gn:286 | |
Enable control-flow integrity features, such as pointer authentication for | |
ARM64. | |
v8_correctness_fuzzer | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:17 | |
Includes files needed for correctness fuzzing. | |
v8_current_cpu | |
Current value (from the default) = "x64" | |
From //build/config/v8_target_cpu.gni:60 | |
This argument is declared here so that it can be overridden in toolchains. | |
It should never be explicitly set by the user. | |
v8_custom_deps | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:34 | |
Dynamically set an additional dependency from v8/custom_deps. | |
v8_deprecation_warnings | |
Current value (from the default) = true | |
From //v8/BUILD.gn:56 | |
Enable compiler warnings when using V8_DEPRECATED apis. | |
v8_dict_property_const_tracking | |
Current value (from the default) = false | |
From //v8/BUILD.gn:339 | |
Experimental feature for tracking constness of properties in non-global | |
dictionaries. Enabling this also always keeps prototypes in dict mode, | |
meaning that they are not switched to fast mode. | |
Sets -DV8_DICT_PROPERTY_CONST_TRACKING | |
v8_disable_write_barriers | |
Current value (from the default) = false | |
From //v8/BUILD.gn:258 | |
Disable write barriers when GCs are non-incremental and | |
heap has single generation. | |
v8_embed_script | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:62 | |
Embeds the given script into the snapshot. | |
v8_embedder_string | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:65 | |
Allows the embedder to add a custom suffix to the version string. | |
v8_enable_31bit_smis_on_64bit_arch | |
Current value (from the default) = false | |
From //v8/BUILD.gn:126 | |
v8_enable_allocation_folding | |
Current value (from the default) = true | |
From //v8/BUILD.gn:349 | |
Enable allocation folding globally (sets -dV8_ALLOCATION_FOLDING). | |
When it's disabled, the --turbo-allocation-folding runtime flag will be ignored. | |
v8_enable_atomic_object_field_writes | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:147 | |
Sets -dV8_ATOMIC_OBJECT_FIELD_WRITES and turns all field write operations | |
into relaxed atomic operations. | |
v8_enable_backtrace | |
Current value (from the default) = "" | |
From //v8/gni/v8.gni:33 | |
Support for backtrace_symbols on linux. | |
v8_enable_builtins_profiling | |
Current value (from the default) = false | |
From //v8/BUILD.gn:165 | |
Runs mksnapshot with --turbo-profiling. After building in this | |
configuration, any subsequent run of d8 will output information about usage | |
of basic blocks in builtins. | |
v8_enable_builtins_profiling_verbose | |
Current value (from the default) = false | |
From //v8/BUILD.gn:171 | |
Runs mksnapshot with --turbo-profiling-verbose. After building in this | |
configuration, any subsequent run of d8 will output information about usage | |
of basic blocks in builtins, including the schedule and disassembly of all | |
used builtins. | |
v8_enable_cet_shadow_stack | |
Current value (from the default) = false | |
From //v8/BUILD.gn:365 | |
Change code emission and runtime features to be CET shadow-stack compliant | |
(incomplete and experimental). | |
v8_enable_concurrent_marking | |
Current value (from the default) = true | |
From //v8/BUILD.gn:151 | |
Controls the default value of v8_enable_concurrent_marking_state. See the | |
default setting code below. | |
v8_enable_conservative_stack_scanning | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:82 | |
Scan the call stack conservatively during garbage collection. | |
v8_enable_debug_code | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:112 | |
Allow runtime-enabled debug code (with --debug-code). Enabled by default in | |
debug builds. | |
Sets -dV8_ENABLE_DEBUG_CODE | |
v8_enable_debugging_features | |
Current value (from the default) = false | |
From //v8/BUILD.gn:38 | |
Turns on all V8 debug features. Enables running V8 in a pseudo debug mode | |
within a release Chrome. | |
v8_enable_disassembler | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:68 | |
Sets -dENABLE_DISASSEMBLER. | |
v8_enable_external_code_space | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:202 | |
Enable support for external code range relative to the pointer compression | |
cage. | |
Sets -dV8_EXTERNAL_CODE_SPACE | |
v8_enable_fast_mksnapshot | |
Current value (from the default) = false | |
From //v8/BUILD.gn:92 | |
Enable fast mksnapshot runs. | |
v8_enable_fast_torque | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:95 | |
Optimize code for Torque executable, even during a debug build. | |
v8_enable_future | |
Current value (from the default) = false | |
From //v8/BUILD.gn:41 | |
Sets -DV8_ENABLE_FUTURE. | |
v8_enable_gdbjit | |
Current value = false | |
From //.gn:36 | |
Overridden from the default = true | |
From //v8/BUILD.gn:231 | |
v8_enable_google_benchmark | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:90 | |
v8_enable_handle_zapping | |
Current value (from the default) = true | |
From //v8/BUILD.gn:86 | |
Sets -dENABLE_HANDLE_ZAPPING. | |
v8_enable_heap_snapshot_verify | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:352 | |
Enable runtime verification of heap snapshots produced for devtools. | |
v8_enable_hugepage | |
Current value (from the default) = false | |
From //v8/BUILD.gn:83 | |
Sets -dENABLE_HUGEPAGE | |
v8_enable_i18n_support | |
Current value (from the default) = true | |
From //v8/gni/v8.gni:41 | |
Enable ECMAScript Internationalization API. Enabling this feature will | |
add a dependency on the ICU library. | |
v8_enable_ignition_dispatch_counting | |
Current value (from the default) = false | |
From //v8/BUILD.gn:160 | |
Sets -dV8_IGNITION_DISPATCH_COUNTING. | |
Enables counting frequencies of bytecode dispatches. After building in this | |
configuration, subsequent runs of d8 can output frequencies for each pair | |
of (current, next) bytecode instructions executed if you specify | |
--trace-ignition-dispatches-output-file, or can generate a JS object with | |
those frequencies if you run with --expose-ignition-statistics and call the | |
extension function getIgnitionDispatchCounters(). | |
v8_enable_inner_pointer_resolution_mb | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:88 | |
Use the marking bitmap for inner pointer resolution. | |
v8_enable_inner_pointer_resolution_osb | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:85 | |
Use the object start bitmap for inner pointer resolution. | |
v8_enable_javascript_promise_hooks | |
Current value (from the default) = false | |
From //v8/BUILD.gn:345 | |
Allow for JS promise hooks (instead of just C++). | |
v8_enable_lazy_source_positions | |
Current value (from the default) = true | |
From //v8/BUILD.gn:245 | |
Enable lazy source positions by default. | |
v8_enable_lite_mode | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:64 | |
Lite mode disables a number of performance optimizations to reduce memory | |
at the cost of performance. | |
Sets -DV8_LITE_MODE. | |
v8_enable_maglev | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:206 | |
Enable the Maglev compiler. | |
Sets -dV8_ENABLE_MAGLEV | |
v8_enable_map_packing | |
Current value (from the default) = false | |
From //v8/BUILD.gn:342 | |
Enable map packing & unpacking (sets -dV8_MAP_PACKING). | |
v8_enable_object_print | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:129 | |
Sets -dOBJECT_PRINT. | |
v8_enable_pointer_compression | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:124 | |
Enable pointer compression (sets -dV8_COMPRESS_POINTERS). | |
v8_enable_pointer_compression_8gb | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:376 | |
Enables pointer compression for 8GB heaps. | |
Sets -DV8_COMPRESS_POINTERS_8GB. | |
v8_enable_pointer_compression_shared_cage | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:125 | |
v8_enable_precise_zone_stats | |
Current value (from the default) = false | |
From //v8/BUILD.gn:325 | |
Experimental feature for collecting per-class zone memory stats. | |
Requires use_rtti = true | |
v8_enable_regexp_interpreter_threaded_dispatch | |
Current value (from the default) = true | |
From //v8/BUILD.gn:270 | |
Use token threaded dispatch for the regular expression interpreter. | |
Use switch-based dispatch if this is false | |
v8_enable_runtime_call_stats | |
Current value (from the default) = true | |
From //v8/gni/v8.gni:76 | |
Enable runtime call stats. | |
v8_enable_sandbox | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:305 | |
Enable the experimental V8 sandbox. | |
Sets -DV8_ENABLE_SANDBOX. | |
v8_enable_sandbox_future | |
Current value (from the default) = false | |
From //v8/BUILD.gn:316 | |
Enable all available sandbox features. Implies v8_enable_sandbox. | |
v8_enable_sandboxed_external_pointers | |
Current value (from the default) = false | |
From //v8/BUILD.gn:309 | |
Enable sandboxing for all external pointers. Requires v8_enable_sandbox. | |
Sets -DV8_SANDBOXED_EXTERNAL_POINTERS. | |
v8_enable_sandboxed_pointers | |
Current value (from the default) = false | |
From //v8/BUILD.gn:313 | |
Enable sandboxed pointers. Requires v8_enable_sandbox. | |
Sets -DV8_SANDBOXED_POINTERS. | |
v8_enable_shared_ro_heap | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:242 | |
Enable sharing read-only space across isolates. | |
Sets -DV8_SHARED_RO_HEAP. | |
v8_enable_short_builtin_calls | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:197 | |
Enable short builtins call instruction sequences by un-embedding builtins. | |
Sets -dV8_SHORT_BUILTIN_CALLS | |
v8_enable_single_generation | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:266 | |
Redirect allocation in young generation so that there will be | |
only one single generation. | |
v8_enable_slow_dchecks | |
Current value (from the default) = false | |
From //v8/BUILD.gn:89 | |
Enable slow dchecks. | |
v8_enable_snapshot_code_comments | |
Current value (from the default) = false | |
From //v8/BUILD.gn:102 | |
Enable code comments for builtins in the snapshot (impacts performance). | |
This also enables v8_code_comments. | |
v8_enable_snapshot_compression | |
Current value (from the default) = false | |
From //v8/BUILD.gn:281 | |
v8_enable_snapshot_native_code_counters | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:118 | |
Enable native counters from the snapshot (impacts performance, sets | |
-dV8_SNAPSHOT_NATIVE_CODE_COUNTERS). | |
This option will generate extra code in the snapshot to increment counters, | |
as per the --native-code-counters flag. | |
v8_enable_swiss_name_dictionary | |
Current value (from the default) = false | |
From //v8/BUILD.gn:329 | |
Experimental feature that uses SwissNameDictionary instead of NameDictionary | |
as the backing store for all dictionary mode objects. | |
v8_enable_system_instrumentation | |
Current value (from the default) = false | |
From //v8/BUILD.gn:44 | |
Sets -DSYSTEM_INSTRUMENTATION. Enables OS-dependent event tracing | |
v8_enable_test_features | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:193 | |
Enables various testing features. | |
v8_enable_third_party_heap | |
Current value (from the default) = false | |
From //v8/BUILD.gn:248 | |
Enable third party HEAP library | |
v8_enable_trace_baseline_exec | |
Current value (from the default) = false | |
From //v8/BUILD.gn:140 | |
v8_enable_trace_feedback_updates | |
Current value (from the default) = false | |
From //v8/BUILD.gn:143 | |
Sets -dV8_TRACE_FEEDBACK_UPDATES. | |
v8_enable_trace_ignition | |
Current value (from the default) = false | |
From //v8/BUILD.gn:139 | |
v8_enable_trace_maps | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:132 | |
Sets -dV8_TRACE_MAPS. | |
v8_enable_trace_unoptimized | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:138 | |
Sets -dV8_TRACE_UNOPTIMIZED. | |
v8_enable_unconditional_write_barriers | |
Current value (from the default) = false | |
From //v8/BUILD.gn:262 | |
Ensure that write barriers are always used. | |
Useful for debugging purposes. | |
v8_enable_v8_checks | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:135 | |
Sets -dV8_ENABLE_CHECKS. | |
v8_enable_verify_csa | |
Current value (from the default) = false | |
From //v8/BUILD.gn:121 | |
Enable code-generation-time checking of types in the CodeStubAssembler. | |
v8_enable_verify_heap | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:50 | |
Sets -DVERIFY_HEAP. | |
v8_enable_verify_predictable | |
Current value (from the default) = false | |
From //v8/BUILD.gn:53 | |
Sets -DVERIFY_PREDICTABLE | |
v8_enable_vtunejit | |
Current value (from the default) = false | |
From //v8/BUILD.gn:77 | |
Sets -dENABLE_VTUNE_JIT_INTERFACE. | |
v8_enable_vtunetracemark | |
Current value (from the default) = false | |
From //v8/BUILD.gn:80 | |
Sets -dENABLE_VTUNE_TRACEMARK. | |
v8_enable_wasm_gdb_remote_debugging | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:59 | |
Enable WebAssembly debugging via GDB-remote protocol. | |
v8_enable_wasm_simd256_revec | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:73 | |
Enable 256-bit long vector re-vectorization pass in WASM compilation pipeline. | |
v8_enable_webassembly | |
Current value (from the default) = "" | |
From //v8/gni/v8.gni:70 | |
Include support for WebAssembly. If disabled, the 'WebAssembly' global | |
will not be available, and embedder APIs to generate WebAssembly modules | |
will fail. Also, asm.js will not be translated to WebAssembly and will be | |
executed as standard JavaScript instead. | |
v8_enable_zone_compression | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:301 | |
Enable V8 zone compression experimental feature. | |
Sets -DV8_COMPRESS_ZONES. | |
v8_etw_guid | |
Current value (from the default) = "" | |
From //v8/BUILD.gn:47 | |
Sets the GUID for the ETW provider | |
v8_expose_memory_corruption_api | |
Current value (from the default) = false | |
From //v8/BUILD.gn:321 | |
Expose the memory corruption API to JavaScript. Useful for testing the sandbox. | |
WARNING This will expose builtins that (by design) cause memory corruption. | |
Sets -DV8_EXPOSE_MEMORY_CORRUPTION_API | |
v8_expose_symbols | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:50 | |
Expose symbols for dynamic linking. | |
v8_fuchsia_use_vmex_resource | |
Current value (from the default) = false | |
From //v8/BUILD.gn:372 | |
Get VMEX priviledge at startup. | |
It allows to run V8 without "deprecated-ambient-replace-as-executable". | |
Sets -DV8_USE_VMEX_RESOURCE. | |
TODO(victorgomes): Remove this flag once Chormium no longer needs | |
the deprecated feature. | |
v8_fuzzilli | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:79 | |
Add fuzzilli fuzzer support. | |
v8_gcmole | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:27 | |
Indicate if gcmole was fetched as a hook to make it available on swarming. | |
v8_generate_external_defines_header | |
Current value (from the default) = false | |
From //v8/BUILD.gn:333 | |
If enabled then macro definitions that are used in externally visible | |
header files are placed in a separate header file v8-gn.h. | |
v8_has_valgrind | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:24 | |
Indicate if valgrind was fetched as a custom deps to make it available on | |
swarming. | |
v8_imminent_deprecation_warnings | |
Current value = false | |
From //.gn:37 | |
Overridden from the default = true | |
From //v8/BUILD.gn:59 | |
Enable compiler warnings when using V8_DEPRECATE_SOON apis. | |
v8_monolithic | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:47 | |
Enable monolithic static library for embedders. | |
v8_multi_arch_build | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:20 | |
Adds additional compile target for building multiple architectures at once. | |
v8_no_inline | |
Current value (from the default) = false | |
From //v8/BUILD.gn:217 | |
Switches off inlining in V8. | |
v8_optimized_debug | |
Current value (from the default) = true | |
From //v8/gni/v8.gni:30 | |
Turns on compiler optimizations in V8 in Debug build. | |
v8_os_page_size | |
Current value (from the default) = "0" | |
From //v8/BUILD.gn:220 | |
Override OS page size when generating snapshot | |
v8_postmortem_support | |
Current value (from the default) = false | |
From //v8/BUILD.gn:211 | |
With post mortem support enabled, metadata is embedded into libv8 that | |
describes various parameters of the VM for use by debuggers. See | |
tools/gen-postmortem-metadata.py for details. | |
v8_promise_internal_field_count | |
Current value (from the default) = 0 | |
From //v8/BUILD.gn:71 | |
Sets the number of internal fields on promise objects. | |
v8_scriptormodule_legacy_lifetime | |
Current value (from the default) = false | |
From //v8/BUILD.gn:361 | |
TODO(cbruni, v8:12302): Remove once API is migrated | |
Enable legacy mode for ScriptOrModule's lifetime. By default it's a | |
temporary object, if enabled it will be kept alive by the parent Script. | |
This is only used by nodejs. | |
v8_snapshot_toolchain | |
Current value (from the default) = "" | |
From //v8/gni/snapshot_toolchain.gni:34 | |
The v8 snapshot needs to be built by code that is compiled with a | |
toolchain that matches the bit-width of the target CPU, but runs on | |
the host. | |
v8_static_library | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:44 | |
Use static libraries instead of source_sets. | |
v8_symbol_level | |
Current value (from the default) = 0 | |
From //v8/gni/v8.gni:56 | |
Override global symbol level setting for v8. | |
v8_target_cpu | |
Current value (from the default) = "" | |
From //build/config/v8_target_cpu.gni:33 | |
This arg is used when we want to tell the JIT-generating v8 code | |
that we want to have it generate for an architecture that is different | |
than the architecture that v8 will actually run on; we then run the | |
code under an emulator. For example, we might run v8 on x86, but | |
generate arm code and run that under emulation. | |
This arg is defined here rather than in the v8 project because we want | |
some of the common architecture-specific args (like arm_float_abi or | |
mips_arch_variant) to be set to their defaults either if the current_cpu | |
applies *or* if the v8_current_cpu applies. | |
As described below, you can also specify the v8_target_cpu to use | |
indirectly by specifying a `custom_toolchain` that contains v8_$cpu in the | |
name after the normal toolchain. | |
For example, `gn gen --args="custom_toolchain=...:clang_x64_v8_arm64"` | |
is equivalent to setting --args=`v8_target_cpu="arm64"`. Setting | |
`custom_toolchain` is more verbose but makes the toolchain that is | |
(effectively) being used explicit. | |
v8_target_cpu can only be used to target one architecture in a build, | |
so if you wish to build multiple copies of v8 that are targeting | |
different architectures, you will need to do something more | |
complicated involving multiple toolchains along the lines of | |
custom_toolchain, above. | |
v8_third_party_heap_files | |
Current value (from the default) = [] | |
From //v8/BUILD.gn:254 | |
Source code used by third party heap | |
v8_third_party_heap_libs | |
Current value (from the default) = [] | |
From //v8/BUILD.gn:251 | |
Libaries used by third party heap | |
v8_typed_array_max_size_in_heap | |
Current value (from the default) = 64 | |
From //v8/BUILD.gn:229 | |
Controls the threshold for on-heap/off-heap Typed Arrays. | |
v8_use_external_startup_data | |
Current value (from the default) = "" | |
From //v8/gni/v8.gni:37 | |
Use external files for startup data blobs: | |
the JS builtins sources and the start snapshot. | |
v8_use_mips_abi_hardfloat | |
Current value (from the default) = true | |
From //v8/BUILD.gn:226 | |
Similar to the ARM hard float ABI but on MIPS. | |
v8_use_perfetto | |
Current value (from the default) = false | |
From //v8/gni/v8.gni:53 | |
Implement tracing using Perfetto (https://perfetto.dev). | |
v8_use_siphash | |
Current value (from the default) = false | |
From //v8/BUILD.gn:214 | |
Use Siphash as added protection against hash flooding attacks. | |
v8_verify_torque_generation_invariance | |
Current value (from the default) = false | |
From //v8/BUILD.gn:274 | |
Enable additional targets necessary for verification of torque | |
file generation | |
v8_win64_unwinding_info | |
Current value (from the default) = true | |
From //v8/BUILD.gn:98 | |
Enable the registration of unwinding info for Windows x64 and ARM64. | |
vma_vulkan_headers_dir | |
Current value (from the default) = "//third_party/vulkan-deps/vulkan-headers/src" | |
From //third_party/vulkan_memory_allocator/BUILD.gn:8 | |
weblayer_in_split | |
Current value (from the default) = true | |
From //weblayer/variables.gni:12 | |
Whether WebLayer will be included as a DFM. | |
webview_includes_weblayer | |
Current value (from the default) = true | |
From //weblayer/variables.gni:9 | |
Include the //weblayer code in WebView implementation APKs. | |
widevine_root | |
Current value (from the default) = "." | |
From //third_party/widevine/cdm/widevine.gni:62 | |
Relative root directory to //third_party/widevine/cdm for CDM files. | |
Can be overridden if the CDM files are located in other places. | |
win_console_app | |
Current value (from the default) = false | |
From //build/config/win/console_app.gni:12 | |
If true, builds as a console app (rather than a windowed app), which allows | |
logging to be printed to the user. This will cause a terminal window to pop | |
up when the executable is not run from the command line, so should only be | |
used for development. Only has an effect on Windows builds. | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#get chromium build options | |
# https://www.chromium.org/developers/gn-build-configuration/ | |
WS=$(mktemp -d) | |
cd $WS | |
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git | |
export PATH="$PATH:$WS/depot_tools" | |
mkdir $WS/chromium && cd $WS/chromium | |
fetch --nohooks chromium | |
cd src | |
gclient runhooks | |
gn gen --args='is_debug=false is_component_ffmpeg=true proprietary_codecs=true ffmpeg_branding="Chrome"' out/Default | |
gn args out/Default --list | |
#gn args out/Default --list=is_component_build |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment