diff --git a/infra/cgpt b/infra/cgpt old mode 100644 new mode 100755 index 22af3c4d..ce85563c Binary files a/infra/cgpt and b/infra/cgpt differ diff --git a/infra/libpepflashplayer.so b/infra/libpepflashplayer.so old mode 100644 new mode 100755 diff --git a/other/Mac/mac_args.list b/other/Mac/mac_args.list index 57557645..a7ca459e 100644 --- a/other/Mac/mac_args.list +++ b/other/Mac/mac_args.list @@ -1,4 +1,17 @@ -## LIST OF POSSIBLE MAC GN ARGUMENTS WITH THORIUM FLAGS INCLUDED +ERROR Not a build directory. +This command requires an existing build directory. I interpreted your input +"out/thorium" as: + /Users/midzer/chromium/src/out/thorium/ +which doesn't seem to contain a previously-generated build. +WARNING at build arg file (use "gn args " to edit):70:24: Build argument has no effect. +enable_media_overlay = true + ^--- +The variable "enable_media_overlay" was set as a build argument +but never appeared in a declare_args() block in any buildfile. + +To view all possible args, run "gn args --list " + +The build continued as if that argument was unspecified. action_pool_depth Current value (from the default) = -1 @@ -8,7 +21,7 @@ action_pool_depth added_rust_stdlib_libs Current value (from the default) = [] - From //build/config/rust.gni:44 + From //build/config/rust.gni:54 Any extra std rlibs in your Rust toolchain, relative to the standard Rust toolchain. Typically used with 'use_unverified_rust_toolchain' = true @@ -53,7 +66,7 @@ also_build_lacros_chrome_for_architecture alternate_cdm_storage_id_key Current value (from the default) = "" - From //media/media_options.gni:221 + From //media/media_options.gni:224 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 @@ -76,11 +89,11 @@ android_full_debug angle_64bit_current_cpu Current value (from the default) = true - From //third_party/angle/gni/angle.gni:82 + From //third_party/angle/gni/angle.gni:109 angle_assert_always_on Current value (from the default) = false - From //third_party/angle/gni/angle.gni:77 + From //third_party/angle/gni/angle.gni:104 angle_build_all Current value (from the default) = false @@ -95,15 +108,19 @@ angle_build_capture_replay_tests Determines if we build the capture_replay_tests. Off by default. +angle_build_mesa + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:282 + angle_build_tests Current value (from the default) = true - From //third_party/angle/gni/angle.gni:256 + From //third_party/angle/gni/angle.gni:296 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:238 + From //third_party/angle/gni/angle.gni:276 angle_capture_replay_composite_file_id Current value (from the default) = 1 @@ -117,13 +134,13 @@ angle_capture_replay_test_trace_dir angle_debug_layers_enabled Current value (from the default) = false - From //third_party/angle/gni/angle.gni:97 + From //third_party/angle/gni/angle.gni:124 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:135 + From //third_party/angle/gni/angle.gni:162 By default, ANGLE is using a thread pool for parallel compilation. Activating the delegate worker results in posting the tasks using the @@ -151,11 +168,11 @@ angle_enable_annotator_run_time_checks angle_enable_apple_translator_workarounds Current value (from the default) = true - From //third_party/angle/gni/angle.gni:250 + From //third_party/angle/gni/angle.gni:290 angle_enable_cgl Current value (from the default) = true - From //third_party/angle/gni/angle.gni:247 + From //third_party/angle/gni/angle.gni:287 TODO(jdarpinian): Support enabling CGL and EAGL at the same time using the soft linking code. Also support disabling both for Metal-only builds. @@ -167,7 +184,7 @@ angle_enable_cl angle_enable_cl_passthrough Current value (from the default) = false - From //third_party/angle/gni/angle.gni:167 + From //third_party/angle/gni/angle.gni:194 Enables the OpenCL pass-through back end @@ -179,133 +196,159 @@ angle_enable_commit_id angle_enable_custom_vulkan_cmd_buffers Current value (from the default) = true - From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:15 + From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:17 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 + From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:26 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 + From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:30 angle_enable_d3d11 Current value (from the default) = false - From //third_party/angle/gni/angle.gni:141 + From //third_party/angle/gni/angle.gni:168 angle_enable_d3d11_compositor_native_window Current value (from the default) = false - From //third_party/angle/gni/angle.gni:216 + From //third_party/angle/gni/angle.gni:254 angle_enable_d3d9 Current value (from the default) = false - From //third_party/angle/gni/angle.gni:140 + From //third_party/angle/gni/angle.gni:167 angle_enable_desktop_glsl - Current value (from the default) = true - From //third_party/angle/gni/angle.gni:189 + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:226 Translator frontend support: angle_enable_eagl Current value (from the default) = false - From //third_party/angle/gni/angle.gni:222 + From //third_party/angle/gni/angle.gni:260 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:193 + From //third_party/angle/gni/angle.gni:230 angle_enable_gl Current value (from the default) = true - From //third_party/angle/gni/angle.gni:143 + From //third_party/angle/gni/angle.gni:170 -angle_enable_gl_desktop +angle_enable_gl_desktop_backend Current value (from the default) = true - From //third_party/angle/gni/angle.gni:161 + From //third_party/angle/gni/angle.gni:188 + +angle_enable_gl_desktop_frontend + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:29 + + Enable Desktop GL frontend support. angle_enable_gl_null Current value (from the default) = true - From //third_party/angle/src/libANGLE/renderer/gl/BUILD.gn:16 + From //third_party/angle/src/libANGLE/renderer/gl/gl_backend.gni:8 angle_enable_glsl Current value (from the default) = true - From //third_party/angle/gni/angle.gni:194 + From //third_party/angle/gni/angle.gni:231 angle_enable_hlsl Current value (from the default) = false - From //third_party/angle/gni/angle.gni:192 + From //third_party/angle/gni/angle.gni:229 Translator backend support: +angle_enable_memory_alloc_logging + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:242 + + Memory allocation logging support. This feature is for debugging only. + Disabled by default. + angle_enable_metal Current value (from the default) = true - From //third_party/angle/gni/angle.gni:164 + From //third_party/angle/gni/angle.gni:191 http://anglebug.com/2634 angle_enable_msl_through_spirv Current value (from the default) = true - From //third_party/angle/gni/angle.gni:127 + From //third_party/angle/gni/angle.gni:154 By default, include the SPIR-V based MSL translator (in addition to the direct translator) angle_enable_null Current value (from the default) = false - From //third_party/angle/gni/angle.gni:160 + From //third_party/angle/gni/angle.gni:187 Disable null backend to save space for official build. angle_enable_overlay Current value (from the default) = false - From //third_party/angle/gni/angle.gni:242 + From //third_party/angle/gni/angle.gni:280 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:219 + From //third_party/angle/gni/angle.gni:257 Disable performance counter output by default angle_enable_renderdoc Current value (from the default) = false - From //third_party/angle/gni/angle.gni:260 + From //third_party/angle/gni/angle.gni:300 -angle_enable_spirv_gen_through_glslang - Current value (from the default) = true - From //third_party/angle/gni/angle.gni:210 +angle_enable_share_context_lock + Current value (from the default) = false + From //third_party/angle/BUILD.gn:69 angle_enable_swiftshader Current value (from the default) = true - From //third_party/angle/gni/angle.gni:186 + From //third_party/angle/gni/angle.gni:223 angle_enable_trace Current value (from the default) = false - From //third_party/angle/gni/angle.gni:195 + From //third_party/angle/gni/angle.gni:232 angle_enable_trace_android_logcat Current value (from the default) = false - From //third_party/angle/gni/angle.gni:196 + From //third_party/angle/gni/angle.gni:233 angle_enable_trace_events Current value (from the default) = false - From //third_party/angle/gni/angle.gni:197 + From //third_party/angle/gni/angle.gni:234 + +angle_enable_unwind_backtrace_support + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:238 + + Unwind backtrace support. This feature is currently only implemented + on Android for debugging purposes. Disabled by default. angle_enable_vulkan Current value (from the default) = true - From //third_party/angle/gni/angle.gni:148 + From //third_party/angle/gni/angle.gni:175 angle_enable_vulkan_gpu_trace_events Current value (from the default) = false - From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:18 + From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:20 Enable Vulkan GPU trace event capability +angle_enable_vulkan_shared_ring_buffer_cmd_alloc + Current value (from the default) = false + From //third_party/angle/src/libANGLE/renderer/vulkan/BUILD.gn:33 + + Enable shared ring buffer command buffer allocator + angle_enable_vulkan_system_info Current value (from the default) = false From //third_party/angle/BUILD.gn:35 @@ -314,7 +357,13 @@ angle_enable_vulkan_system_info angle_enable_vulkan_validation_layers Current value (from the default) = false - From //third_party/angle/gni/angle.gni:203 + From //third_party/angle/gni/angle.gni:248 + +angle_expose_glx_entry_points + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:40 + + Expose GLX entry points by default when using Desktop GL on Linux. angle_expose_non_conformant_extensions_and_versions Current value (from the default) = false @@ -322,6 +371,15 @@ angle_expose_non_conformant_extensions_and_versions Enables non-conformant extensions and features +angle_expose_wgl_entry_points + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:37 + + Expose WGL entry points, which is necessary for running windows desktop GL applications against ANGLE. + TODO(http://anglebug.com/7628): This condition should be `angle_enable_gl_desktop_frontend && is_win` + This is disabled by default on Windows because it was causing some test failures. Once the WGL frontend + has more functionality implemented, we can re-enable this. + angle_extract_native_libs Current value (from the default) = false From //third_party/angle/gni/angle.gni:11 @@ -338,31 +396,37 @@ angle_glesv2_extension Current value (from the default) = "" From //third_party/angle/BUILD.gn:63 +angle_has_astc_encoder + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:199 + + ASTC emulation is only built on standalone non-android builds + angle_has_frame_capture Current value (from the default) = true - From //third_party/angle/gni/angle.gni:124 + From //third_party/angle/gni/angle.gni:151 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:253 + From //third_party/angle/gni/angle.gni:293 angle_has_rapidjson Current value (from the default) = true - From //third_party/angle/gni/angle.gni:92 + From //third_party/angle/gni/angle.gni:119 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:111 + From //third_party/angle/gni/angle.gni:138 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:117 + From //third_party/angle/gni/angle.gni:144 angle_link_glx Current value (from the default) = false @@ -370,50 +434,52 @@ angle_link_glx 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) = false - From //third_party/angle/gni/angle.gni:108 + From //third_party/angle/gni/angle.gni:135 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:138 + From //third_party/angle/gni/angle.gni:165 True if we are building inside an ANGLE checkout. +angle_test_enable_system_egl + Current value (from the default) = false + From //third_party/angle/gni/angle.gni:203 + 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:43 - -angle_use_spirv_gen_through_glslang - Current value (from the default) = false - From //third_party/angle/gni/angle.gni:170 - - Use glslang to generate SPIR-V + From //third_party/angle/gni/angle.gni:62 angle_use_vulkan_display Current value (from the default) = false - From //third_party/angle/gni/angle.gni:48 + From //third_party/angle/gni/angle.gni:67 angle_use_vulkan_null_display Current value (from the default) = false - From //third_party/angle/gni/angle.gni:157 + From //third_party/angle/gni/angle.gni:184 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) = false - From //third_party/angle/gni/angle.gni:47 + From //third_party/angle/gni/angle.gni:66 angle_use_x11 Current value (from the default) = false - From //third_party/angle/gni/angle.gni:44 + From //third_party/angle/gni/angle.gni:64 angle_vulkan_display_mode Current value (from the default) = "simple" @@ -425,29 +491,29 @@ 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:230 + From //third_party/angle/gni/angle.gni:268 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:232 + From //third_party/angle/gni/angle.gni:270 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:234 + From //third_party/angle/gni/angle.gni:272 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:236 + From //third_party/angle/gni/angle.gni:274 angle_wayland_dir Current value (from the default) = "//third_party/angle/third_party/wayland" - From //third_party/angle/gni/angle.gni:227 + From //third_party/angle/gni/angle.gni:265 Directory where to find wayland source files @@ -460,41 +526,107 @@ angle_with_capture_by_default apm_debug_dump Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:117 + From //third_party/webrtc/webrtc.gni:121 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 + From //build/config/sanitizers/sanitizers.gni:105 When true, seed corpora archives are built. +arm_arch + Current value = "armv8.5-a" + From //out/thorium/args.gn:12 + Overridden from the default = "armv8.5-a" + From //build/config/arm.gni:144 + + The ARM64 architecture. This will be a string like "armv8-a" or "armv8.5-a. + An empty string means to use the default for the arm_version. + arm_control_flow_integrity Current value (from the default) = "none" - From //build/config/arm.gni:141 + From //build/config/arm.gni:133 - target_cpu != "arm64" covers some cases (e.g. the ChromeOS x64 MSAN - build) where the target platform is x64, but V8 is configured to use - the arm64 simulator. Pointer authentication doesn't work properly - in this mode (yet). + Enables the new Armv8 branch protection features. Valid strings are: + - "pac": Enables Pointer Authentication Code (PAC, featured in Armv8.3) + - "standard": Enables both PAC and Branch Target Identification (Armv8.5). + - "none": No branch protection. -audio_input_sample_rate - Current value (from the default) = 16000 - From //chromecast/chromecast.gni:118 +arm_float_abi + Current value (from the default) = "hard" + From //build/config/arm.gni:140 - Recording happens at this sample rate. Must be 16000, 48000 or 96000 Hz. + arm64 supports only "hard". + +arm_fpu + Current value = "neon" + From //out/thorium/args.gn:13 + Overridden from the default = "neon" + From //build/config/arm.gni:153 + + The ARM64 floating point hardware. This will be a string like "neon" or + "vfpv3-d16". An empty string means to use the default for the arm_version. + +arm_optionally_use_neon + Current value = false + From //out/thorium/args.gn:16 + Overridden from the default = false + From //build/config/arm.gni:159 + + Whether to enable optional NEON code paths. + +arm_tune + Current value = "generic-armv8.5-a" + From //out/thorium/args.gn:14 + Overridden from the default = "generic-armv8.5-a" + From //build/config/arm.gni:149 + + The ARM variant-specific tuning mode. This will be a string like "armv6" + or "cortex-a15". An empty string means to use the default for the + arm_version. + +arm_use_neon + Current value = true + From //out/thorium/args.gn:15 + Overridden from the default = "true" + From //build/config/arm.gni:156 + + Whether to use the neon FPU instruction set or not. + +arm_use_thumb + Current value = true + From //out/thorium/args.gn:17 + Overridden from the default = true + From //build/config/arm.gni:163 + + Thumb is a reduced instruction set available on some ARM processors that + has increased code density. + +arm_version + Current value = 8 + From //out/thorium/args.gn:11 + Overridden from the default = 8 + From //build/config/arm.gni:137 + + Version of the ARM processor when compiling on ARM. Ignored on non-ARM + platforms. auto_profile_path Current value (from the default) = "" - From //build/config/compiler/BUILD.gn:86 + From //build/config/compiler/BUILD.gn:89 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. +backup_ref_ptr_poison_oob_ptr + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:132 + blink_animation_use_time_delta Current value (from the default) = false From //third_party/blink/renderer/core/animation/BUILD.gn:11 @@ -533,7 +665,7 @@ blink_gc_plugin_option_warn_unneeded_finalizer blink_symbol_level Current value = 0 - From //out/thorium/args.gn:22 + From //out/thorium/args.gn:44 Overridden from the default = -1 From //third_party/blink/renderer/config.gni:40 @@ -552,31 +684,39 @@ blink_symbol_level branding_file_path Current value (from the default) = "//chrome/app/theme/chromium/BRANDING" - From //build/config/chrome_build.gni:24 + From //build/config/chrome_build.gni:67 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 + From //build/config/chrome_build.gni:60 + +branding_path_product + Current value (from the default) = "chromium" + From //build/config/chrome_build.gni:61 build_angle_deqp_tests Current value (from the default) = false - From //third_party/angle/src/tests/BUILD.gn:12 + From //third_party/angle/gni/angle.gni:26 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 + From //third_party/angle/src/tests/BUILD.gn:11 build_angle_perftests Current value (from the default) = true - From //third_party/angle/src/tests/BUILD.gn:16 + From //third_party/angle/src/tests/BUILD.gn:14 build_angle_trace_perf_tests Current value (from the default) = false - From //third_party/angle/src/tests/BUILD.gn:14 + From //third_party/angle/src/tests/BUILD.gn:12 + +build_angle_trace_tests + Current value (from the default) = false + From //third_party/angle/src/tests/BUILD.gn:18 build_contextual_search Current value (from the default) = false @@ -584,7 +724,7 @@ build_contextual_search build_dawn_tests Current value (from the default) = true - From //ui/gl/features.gni:26 + From //ui/gl/features.gni:27 Should Dawn test binaries (unittests, end2end_tests, perf_tests) be built? Independent of use_dawn, which controls whether Dawn is used in Chromium. @@ -607,7 +747,15 @@ build_tflite_with_xnnpack From //third_party/tflite/features.gni:10 This enables building TFLite with XNNPACK. Currently only available for - Linux x64. + Linux or Windows on x64. + +build_webnn_with_xnnpack + Current value (from the default) = false + From //third_party/blink/renderer/modules/ml/webnn/features.gni:10 + + This enables building WebNN with XNNPACK. Currently only available for + Linux or Windows on x64 that aligns with build_tflite_with_xnnpack. + See third_party/tflite/features.gni build_with_internal_optimization_guide Current value (from the default) = false @@ -617,7 +765,7 @@ build_with_internal_optimization_guide build_with_mozilla Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:144 + From //third_party/webrtc/webrtc.gni:148 Enable to use the Mozilla internal settings. @@ -625,26 +773,6 @@ 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) = true - 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) = true - 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_pool_depth Current value (from the default) = -1 From //build/toolchain/apple/BUILD.gn:11 @@ -655,9 +783,9 @@ bundle_pool_depth bundle_widevine_cdm Current value = false - From //out/thorium/args.gn:39 + From //out/thorium/args.gn:64 Overridden from the default = false - From //third_party/widevine/cdm/widevine.gni:58 + From //third_party/widevine/cdm/widevine.gni:57 Widevine CDM is bundled as part of Google Chrome builds. @@ -668,69 +796,49 @@ cast_allow_developer_certificate 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_enable_logging_by_default + Current value (from the default) = false + From //chrome/common/features.gni:32 + + Enables the build to have logging enabled by default. + This is intended for use only in developer builds. + chrome_pgo_phase Current value = 2 - From //out/thorium/args.gn:60 + From //out/thorium/args.gn:90 Overridden from the default = 2 - From //build/config/compiler/pgo/pgo.gni:28 + From //build/config/compiler/pgo/pgo.gni:29 + +chrome_root_store_policy_supported + Current value (from the default) = true + From //chrome/common/features.gni:40 + + 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) = true - 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. + From //net/features.gni:51 chrome_wide_echo_cancellation_supported Current value (from the default) = true - From //media/media_options.gni:309 - - The audio service must be sandboxed for us to do audio processing there. - Currently it is so only on Win and Mac. - -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. + From //media/media_options.gni:316 chromeos_afdo_platform Current value (from the default) = "atom" @@ -745,7 +853,7 @@ chromeos_is_browser_only Current value (from the default) = false From //build/config/chromeos/ui_mode.gni:19 - Deprecated, use is_lacros. + Deprecated, use is_chromeos_lacros. This controls UI configuration for Chrome. If this flag is set, we assume Chrome runs on Chrome OS devices, using @@ -754,8 +862,8 @@ chromeos_is_browser_only 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" + is_chromeos_lacros = chromeos_product == "browser" + is_chromeos_ash = chromeos_product == "ash" clang_base_path Current value (from the default) = "//third_party/llvm-build/Release+Asserts" @@ -763,13 +871,14 @@ clang_base_path clang_diagnostic_dir Current value (from the default) = "../../tools/clang/crashreports" - From //build/config/compiler/compiler.gni:124 + From //build/config/compiler/compiler.gni:129 clang_emit_debug_info_for_profiling Current value (from the default) = false - From //build/config/compiler/BUILD.gn:112 + From //build/config/compiler/BUILD.gn:113 Emit debug information for profiling wile building with clang. + Only enable this for ChromeOS official builds for AFDO. clang_sample_profile_path Current value (from the default) = "" @@ -787,18 +896,20 @@ clang_use_default_sample_profile From //build/config/compiler/BUILD.gn:102 clang_version - Current value (from the default) = "15.0.0" - From //build/toolchain/toolchain.gni:36 + Current value (from the default) = "16" + From //build/toolchain/toolchain.gni:45 + + TODO(crbug.com/1410101): Remove in next Clang roll. com_init_check_hook_disabled Current value (from the default) = false - From //base/BUILD.gn:63 + From //base/BUILD.gn:62 Set to true to disable COM init check hooks. compiler_timing Current value (from the default) = false - From //build/config/compiler/BUILD.gn:115 + From //build/config/compiler/BUILD.gn:116 Turn this on to have the compiler output extra timing information. @@ -837,15 +948,15 @@ concurrent_links content_shell_major_version Current value (from the default) = "999" - From //content/shell/BUILD.gn:38 + From //content/shell/BUILD.gn:42 content_shell_product_name - Current value (from the default) = "Content Shell" - From //content/shell/BUILD.gn:36 + Current value (from the default) = "Thorium Shell" + From //content/shell/BUILD.gn:40 content_shell_version Current value (from the default) = "999.77.34.5" - From //content/shell/BUILD.gn:37 + From //content/shell/BUILD.gn:41 coverage_instrumentation_input_file Current value (from the default) = "" @@ -861,41 +972,57 @@ coverage_instrumentation_input_file cppgc_allow_allocations_in_prefinalizers Current value (from the default) = false - From //v8/BUILD.gn:297 + From //v8/BUILD.gn:302 Enable allocations during prefinalizer invocations. +cppgc_enable_2gb_cage + Current value (from the default) = false + From //v8/gni/v8.gni:120 + + Enable 2gb cage for fast compression/decompression. Currently disabled + due to an increased number of OOMs. + cppgc_enable_caged_heap Current value (from the default) = true - From //v8/BUILD.gn:290 + From //v8/BUILD.gn:295 cppgc_enable_object_names Current value (from the default) = false - From //v8/gni/v8.gni:89 + From //v8/gni/v8.gni:104 Enable object names in cppgc for debug purposes. cppgc_enable_pointer_compression Current value (from the default) = false - From //v8/gni/v8.gni:95 + From //v8/gni/v8.gni:116 Enable pointer compression in cppgc. +cppgc_enable_slim_write_barrier + Current value (from the default) = true + From //v8/gni/v8.gni:113 + + Enables a slim write barrier that only performs a single check in the fast + path and delegates all further checks to a slow path call. This is fast + in a setting with few slow-path checks, i.e., with disabled young generation + GC. + cppgc_enable_verify_heap Current value (from the default) = "" - From //v8/BUILD.gn:294 + From //v8/BUILD.gn:299 Enables additional heap verification phases and checks. cppgc_enable_young_generation Current value (from the default) = false - From //v8/gni/v8.gni:92 + From //v8/gni/v8.gni:107 Enable young generation in cppgc. cppgc_is_standalone Current value (from the default) = false - From //v8/gni/v8.gni:86 + From //v8/gni/v8.gni:101 crashpad_dependencies Current value = "chromium" @@ -950,13 +1077,13 @@ custom_vulkan_loader_library_name dawn_always_assert Current value (from the default) = false - From //third_party/dawn/scripts/dawn_features.gni:44 + From //third_party/dawn/scripts/dawn_features.gni:50 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 + From //third_party/dawn/scripts/dawn_features.gni:55 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 @@ -964,67 +1091,81 @@ dawn_complete_static_libs dawn_enable_d3d12 Current value (from the default) = false - From //third_party/dawn/scripts/dawn_features.gni:52 + From //third_party/dawn/scripts/dawn_features.gni:58 Enables the compilation of Dawn's D3D12 backend dawn_enable_desktop_gl Current value (from the default) = false - From //third_party/dawn/scripts/dawn_features.gni:63 + From //third_party/dawn/scripts/dawn_features.gni:69 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 + From //third_party/dawn/scripts/dawn_features.gni:84 dawn_enable_metal Current value (from the default) = true - From //third_party/dawn/scripts/dawn_features.gni:55 + From //third_party/dawn/scripts/dawn_features.gni:61 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 + From //third_party/dawn/scripts/dawn_features.gni:65 Enables the compilation of Dawn's Null backend (required for unittests, obviously non-conformant) dawn_enable_opengles Current value (from the default) = false - From //third_party/dawn/scripts/dawn_features.gni:69 + From //third_party/dawn/scripts/dawn_features.gni:75 + +dawn_enable_spirv_validation + Current value (from the default) = true + From //third_party/dawn/scripts/dawn_features.gni:102 + + Disable SPIR-V validation on Android because it adds a significant amount + to the binary size, and Tint's output should be well-formed. dawn_enable_vulkan Current value (from the default) = true - From //third_party/dawn/scripts/dawn_features.gni:73 + From //third_party/dawn/scripts/dawn_features.gni:79 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 + From //third_party/dawn/scripts/dawn_features.gni:98 dawn_enable_vulkan_validation_layers Current value (from the default) = true - From //third_party/dawn/scripts/dawn_features.gni:87 + From //third_party/dawn/scripts/dawn_features.gni:93 dawn_use_angle Current value (from the default) = true - From //third_party/dawn/scripts/dawn_features.gni:35 + From //third_party/dawn/scripts/dawn_features.gni:40 + + TODO(dawn:1545): Re-enable dawn_use_angle on Android. In non-component + builds, this is adding a dependency on ANGLE's libEGL.so and + libGLESv2.so, apparently without regard for the use_static_angle=true + GN variable. Chromium's linker on Android disallows production of more + than one shared object per target (?). dawn_use_swiftshader Current value (from the default) = true - From //third_party/dawn/scripts/dawn_features.gni:39 + From //third_party/dawn/scripts/dawn_features.gni:45 Enables SwiftShader as the fallback adapter. Requires dawn_swiftshader_dir to be set to take effect. + TODO(dawn:1536): Enable SwiftShader for Android. dcheck_always_on Current value = false - From //out/thorium/args.gn:10 + From //out/thorium/args.gn:22 Overridden from the default = false From //build/config/dcheck_always_on.gni:25 @@ -1036,21 +1177,6 @@ dcheck_is_configurable 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 @@ -1129,13 +1255,13 @@ dfmify_feed_v2_modern disable_brotli_filter Current value (from the default) = false - From //net/features.gni:22 + From //net/features.gni:23 Do not disable brotli filter by default. disable_fieldtrial_testing_config Current value = true - From //out/thorium/args.gn:14 + From //out/thorium/args.gn:26 Overridden from the default = false From //components/variations/service/BUILD.gn:14 @@ -1147,7 +1273,7 @@ disable_fieldtrial_testing_config disable_file_support Current value (from the default) = false - From //net/features.gni:9 + From //net/features.gni:10 Disables support for file URLs. File URL support requires use of icu. @@ -1159,33 +1285,31 @@ disable_histogram_support disable_libfuzzer Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:86 + From //build/config/sanitizers/sanitizers.gni:83 Helper variable for testing builds with disabled libfuzzer. Not for client use. -disable_secure_flac_and_opus_decoding +enable_accessibility_service Current value (from the default) = false - From //chromecast/chromecast.gni:97 + From //services/accessibility/buildflags.gni:11 - Set to true to disable secure flac/opus support in EME, when using - cast CMA media backend and supporting Widevine or Playready. + Used to enable the Accessibility Service. Override this in + gn args on supported platforms (see below). + +enable_accessibility_service_internal + Current value (from the default) = false + From //services/accessibility/buildflags.gni:20 enable_arcore Current value (from the default) = false - From //device/vr/buildflags/buildflags.gni:38 + From //device/vr/buildflags/buildflags.gni:40 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 @@ -1195,36 +1319,30 @@ enable_assistant_integration_tests 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:111 + From //media/media_options.gni:105 + + If overriding this to false, possibly via its component values, + `enable_libaom` should likely also be overriddent to false. enable_background_contents Current value (from the default) = true - From //chrome/common/features.gni:38 + From //chrome/common/features.gni:43 Enables support for background apps. enable_background_mode Current value (from the default) = true - From //chrome/common/features.gni:39 + From //chrome/common/features.gni:44 enable_backup_ref_ptr_slow_checks Current value (from the default) = false - From //base/allocator/allocator.gni:107 + From //base/allocator/partition_allocator/partition_alloc.gni:117 + +enable_backup_ref_ptr_support + Current value (from the default) = true + From //base/allocator/partition_allocator/partition_alloc.gni:69 enable_base_tracing Current value (from the default) = true @@ -1238,27 +1356,35 @@ enable_base_tracing enable_basic_print_dialog Current value (from the default) = true - From //chrome/common/features.gni:43 + From //printing/buildflags/buildflags.gni:29 - Enable the printing system dialog for platforms that support printing + Enables 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 + From //printing/buildflags/buildflags.gni:20 - Enables basic printing support and UI. + TODO(awscreen) Safety net to avoid revert for a flag rename which affects + many locations. Remove this once `enable_printing` has landed. enable_blink_bindings_tracing Current value (from the default) = false - From //third_party/blink/renderer/platform/BUILD.gn:193 + From //third_party/blink/renderer/platform/BUILD.gn:219 Enable TRACE_EVENT instrumentation for Blink bindings. Disabled by default as it increases binary size. +enable_bound_session_credentials + Current value (from the default) = false + From //chrome/common/features.gni:78 + + Compile time flag for bound session Credentials. + Warning: This must not be enabled in official builds. + enable_browser_speech_service Current value (from the default) = true - From //chrome/services/speech/buildflags/buildflags.gni:20 + From //chrome/services/speech/buildflags/buildflags.gni:24 Whether the speech service is implemented in the browser as a hosted service possibly running in a utility process. @@ -1271,14 +1397,14 @@ enable_browser_speech_service enable_call_graph_profile_sort Current value (from the default) = true - From //build/config/compiler/BUILD.gn:162 + From //build/config/compiler/BUILD.gn:158 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 + From //third_party/pdfium/pdfium.gni:59 Enable callgrind for performance profiling @@ -1286,52 +1412,48 @@ enable_captive_portal_detection Current value (from the default) = true From //components/captive_portal/core/features.gni:9 -enable_cast_audio_manager_mixer +enable_cardboard Current value (from the default) = false - From //chromecast/chromecast.gni:102 + From //device/vr/buildflags/buildflags.gni:14 enable_cast_audio_renderer Current value (from the default) = false - From //build/config/chromecast_build.gni:38 + From //build/config/chromecast_build.gni:26 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 + From //build/config/chromecast_build.gni:44 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:66 + From //build/config/chromecast_build.gni:53 enable_cdm_host_verification - Current value (from the default) = false - From //media/media_options.gni:210 + Current value = false + From //out/thorium/args.gn:66 + Overridden from the default = false + From //media/media_options.gni:213 + + Enables host verification for CDMs. + Windows and Mac. enable_cdm_storage_id Current value (from the default) = false - From //media/media_options.gni:214 + From //media/media_options.gni:217 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) = false - From //build/config/compiler/compiler.gni:131 + From //build/config/compiler/compiler.gni:136 Mark binaries as compatible with Shadow Stack of Control-flow Enforcement Technology (CET). If Windows version and hardware supports the feature and @@ -1341,51 +1463,22 @@ enable_cet_shadow_stack enable_chrome_notifications Current value (from the default) = true - From //chrome/common/features.gni:46 + From //chrome/common/features.gni:47 Enables usage of notifications via Chrome's MessageCenter. -enable_chromecast_extensions - Current value (from the default) = true - From //chromecast/chromecast.gni:187 - -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:49 + From //chrome/common/features.gni:50 Disable Click to Call on Fuchsia. -enable_color_manager - Current value (from the default) = false - From //components/exo/buildflags.gni:11 +enable_component_updater + Current value (from the default) = true + From //chrome/common/features.gni:54 - 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. + Whether to enable the component updater. Code is in + //components/component_updater. enable_cros_libassistant Current value (from the default) = false @@ -1395,7 +1488,7 @@ enable_cros_libassistant enable_cros_media_app Current value = false - From //out/thorium/args.gn:29 + From //out/thorium/args.gn:52 Overridden from the default = false From //ash/webui/media_app_ui/media_app_ui.gni:7 @@ -1404,15 +1497,28 @@ enable_cros_media_app enable_dangling_raw_ptr_checks Current value (from the default) = false - From //base/allocator/allocator.gni:108 + From //base/allocator/partition_allocator/partition_alloc.gni:120 + +enable_dangling_raw_ptr_perf_experiment + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:130 + + Enables the dangling raw_ptr checks feature for the performance experiment. + Not every dangling pointers have been fixed or annotated yet. To avoid + accounting for the cost of calling the PA's embedder's callbacks when a + dangling pointer has been detected, this simulates the raw_ptr to be + allowed to dangle. + + This flag is temporary, and isn't used by PA embedders, so it doesn't need + to go through build_overrides enable_dav1d_decoder Current value (from the default) = true - From //media/media_options.gni:87 + From //media/media_options.gni:86 enable_discovery - Current value = false - From //out/thorium/args.gn:28 + Current value = true + From //out/thorium/args.gn:51 Overridden from the default = false From //chrome/browser/sharing/buildflags.gni:6 @@ -1441,20 +1547,19 @@ enable_dsyms enable_expensive_dchecks Current value (from the default) = false - From //build/config/dcheck_always_on.gni:30 - - Set to false to disable EXPENSIVE_DCHECK()s. + From //build/config/dcheck_always_on.gni:33 enable_extensions Current value (from the default) = true - From //extensions/buildflags/buildflags.gni:6 + From //extensions/buildflags/buildflags.gni:8 -enable_external_mojo_services - Current value (from the default) = false - From //chromecast/chromecast.gni:109 +enable_extractors + Current value (from the default) = true + From //chrome/services/file_util/public/features.gni:11 - Set to true to enable external Mojo services to communicate with services - within cast_shell. + Whether the file_util service supports .TAR.XZ and .TAR file extraction. + Currently only used by imageWriterPrivate extension API, so only enabled + when Extensions are enabled. enable_fake_assistant_microphone Current value (from the default) = false @@ -1477,9 +1582,9 @@ enable_feed_v2_modern enable_ffmpeg_video_decoders Current value = true - From //out/thorium/args.gn:32 + From //out/thorium/args.gn:56 Overridden from the default = true - From //media/media_options.gni:195 + From //media/media_options.gni:198 On Android, FFMpeg is built without video decoders by default. This flag gives the option to override that decision in case there are no @@ -1505,7 +1610,7 @@ enable_google_benchmarks enable_gpu_client_logging Current value (from the default) = false - From //gpu/command_buffer/client/BUILD.gn:13 + From //gpu/command_buffer/client/BUILD.gn:14 Enable GPU client logging without DCHECK being on. @@ -1522,51 +1627,63 @@ enable_gvr_services enable_gwp_asan Current value (from the default) = true - From //components/gwp_asan/buildflags/buildflags.gni:25 + From //components/gwp_asan/buildflags/buildflags.gni:26 Convenience definition enable_gwp_asan_malloc Current value (from the default) = true - From //components/gwp_asan/buildflags/buildflags.gni:19 + From //components/gwp_asan/buildflags/buildflags.gni:20 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 + From //components/gwp_asan/buildflags/buildflags.gni:21 enable_hangout_services_extension Current value = true - From //out/thorium/args.gn:43 + From //out/thorium/args.gn:71 Overridden from the default = false - From //chrome/common/features.gni:53 + From //chrome/common/features.gni:58 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 = true - From //out/thorium/args.gn:53 + From //out/thorium/args.gn:80 Overridden from the default = true - From //media/media_options.gni:103 + From //media/media_options.gni:98 + + Enable inclusion of the HEVC/H265 parser and also enable HEVC/H265 decoding + with hardware acceleration assist. Enabled by default for fuzzer builds, + ChromeOS builds with protected content support, Windows, Mac, and Android. + +enable_hidpi + Current value (from the default) = true + From //ui/base/ui_features.gni:32 enable_hls_demuxer - Current value (from the default) = false - From //media/media_options.gni:97 + Current value = true + From //out/thorium/args.gn:49 + Overridden from the default = true + From //media/media_options.gni:93 Enable HLS manifest parser and demuxer. enable_hls_sample_aes Current value = true - From //out/thorium/args.gn:26 - Overridden from the default = false - From //media/media_options.gni:80 + From //out/thorium/args.gn:48 + Overridden from the default = true + From //media/media_options.gni:79 + + Enable HLS with SAMPLE-AES decryption. enable_ink Current value = false - From //out/thorium/args.gn:27 + From //out/thorium/args.gn:50 Overridden from the default = false From //pdf/features.gni:18 @@ -1592,9 +1709,9 @@ enable_ipc_logging enable_iterator_debugging Current value = false - From //out/thorium/args.gn:13 + From //out/thorium/args.gn:25 Overridden from the default = false - From //build/config/c++/c++.gni:41 + From //build/config/c++/c++.gni:38 When set, enables libc++ debug mode with iterator debugging. @@ -1608,14 +1725,14 @@ enable_iterator_debugging enable_js_protobuf Current value (from the default) = true - From //third_party/protobuf/proto_library.gni:145 + From //third_party/protobuf/proto_library.gni:141 Allows subprojects to omit javascript dependencies (e.g.) closure_compiler and google-closure-library. enable_js_type_check Current value (from the default) = false - From //third_party/closure_compiler/compile_js.gni:11 + From //third_party/closure_compiler/compile_js.gni:12 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 @@ -1641,6 +1758,17 @@ enable_kythe_annotations Enables Kythe annotations necessary to build cross references. +enable_lens_desktop + Current value (from the default) = true + From //components/lens/features.gni:15 + + Includes Lens features in the build. toolkit_views is used to ensure Lens + features are only included on Desktop devices running Chromium + +enable_lens_desktop_google_branded_features + Current value (from the default) = false + From //components/lens/features.gni:25 + enable_libaom Current value (from the default) = true From //third_party/libaom/options.gni:7 @@ -1653,26 +1781,24 @@ enable_libaom_decoder 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:203 + Current value = true + From //out/thorium/args.gn:62 + Overridden from the default = true + From //media/media_options.gni:206 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). + Used for all desktop platforms. enable_linux_installer Current value (from the default) = false - From //chrome/installer/BUILD.gn:11 + From //chrome/installer/installers.gni:12 enable_location_source Current value (from the default) = true - From //base/BUILD.gn:52 + From //base/BUILD.gn:54 Indicates if the Location object contains the source code information (file, function, line). False means only the program counter (and currently @@ -1684,11 +1810,11 @@ enable_log_error_not_reached enable_logging_override Current value (from the default) = false - From //media/media_options.gni:85 + From //media/media_options.gni:84 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. + On Cast devices, these are logged as INFO. + When enabled on Fuchsia, these are logged as VLOGs. enable_maldoca Current value (from the default) = false @@ -1698,31 +1824,30 @@ enable_maldoca enable_mdns Current value (from the default) = true - From //net/features.gni:25 + From //net/features.gni:26 Multicast DNS. +enable_media_control_logging_override + Current value (from the default) = false + From //components/media_control/renderer/BUILD.gn:9 + enable_media_drm_storage Current value = true - From //out/thorium/args.gn:41 - Overridden from the default = false - From //media/media_options.gni:94 + From //out/thorium/args.gn:69 + Overridden from the default = true + From //media/media_options.gni:90 + + 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 = true - From //out/thorium/args.gn:42 - Overridden from the default = false - From //chromecast/chromecast.gni:130 - - Set to true to enable media overlay for volume bar, etc. + From //third_party/widevine/cdm/widevine.gni:50 enable_media_remoting Current value (from the default) = true - From //media/media_options.gni:297 + From //media/media_options.gni:300 This switch defines whether the Media Remoting implementation will be built. When enabled, media is allowed to be renderer and played back on remote @@ -1730,7 +1855,7 @@ enable_media_remoting enable_media_remoting_rpc Current value (from the default) = true - From //media/media_options.gni:303 + From //media/media_options.gni:306 Media Remoting RPC is disabled on Android since it's unused but increases the native binary size by ~70Kb. @@ -1741,7 +1866,7 @@ enable_message_center enable_modular_updater Current value (from the default) = false - From //build/config/chromecast_build.gni:33 + From //build/config/chromecast_build.gni:21 Set true to enable modular_updater. @@ -1751,22 +1876,18 @@ enable_mojo_tracing enable_mojom_closure_compile Current value (from the default) = false - 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. + From //mojo/public/tools/bindings/mojom.gni:46 enable_mojom_fuzzer Current value (from the default) = false - From //mojo/public/tools/bindings/mojom.gni:51 + From //mojo/public/tools/bindings/mojom.gni:50 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 + From //mojo/public/tools/bindings/mojom.gni:40 Controls message ID scrambling behavior. If |true|, message IDs are scrambled (i.e. randomized based on the contents of //chrome/VERSION) on @@ -1775,7 +1896,7 @@ enable_mojom_message_id_scrambling enable_mojom_typemapping Current value (from the default) = true - From //mojo/public/tools/bindings/mojom.gni:33 + From //mojo/public/tools/bindings/mojom.gni:34 Indicates whether typemapping should be supported in this build configuration. This may be disabled when building external projects which @@ -1788,13 +1909,17 @@ enable_mojom_typemapping enable_mse_mpeg2ts_stream_parser Current value = true - From //out/thorium/args.gn:57 - Overridden from the default = false - From //media/media_options.gni:64 + From //out/thorium/args.gn:86 + Overridden from the default = true + From //media/media_options.gni:61 + +enable_mte_checked_ptr_support + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:71 enable_mutex_priority_inheritance Current value (from the default) = false - From //base/BUILD.gn:68 + From //base/BUILD.gn:67 Set to true to enable mutex priority inheritance. See the comments in LockImpl::PriorityInheritanceAvailable() in lock_impl_posix.cc for the @@ -1802,9 +1927,9 @@ enable_mutex_priority_inheritance enable_nacl Current value = false - From //out/thorium/args.gn:19 + From //out/thorium/args.gn:32 Overridden from the default = false - From //components/nacl/features.gni:14 + From //components/nacl/features.gni:28 enable_nocompile_tests Current value (from the default) = true @@ -1826,9 +1951,19 @@ enable_offline_pages_harness This enables test API for locally-built harness which is used for quality evaluations. Requires setting this variable manually at local environment. +enable_oop_basic_print_dialog + Current value (from the default) = false + From //printing/buildflags/buildflags.gni:59 + + Enables the printing system dialog being invoked from out-of-process for + platforms that support printing, have a system dialog, and which can invoke + that system print dialog from a process other than the browser process. + TODO(crbug.com/809738) Determine if Linux Wayland can be made to have a + system dialog be modal against an application window in the browser process. + enable_oop_printing Current value (from the default) = true - From //printing/buildflags/buildflags.gni:35 + From //printing/buildflags/buildflags.gni:43 Enables out-of-process printing. While this definition matches `enable_print_preview`, do not base this definition upon that. This @@ -1837,7 +1972,7 @@ enable_oop_printing enable_opengl_apitrace Current value (from the default) = false - From //build/config/ozone.gni:35 + From //build/config/ozone.gni:34 Enable explicit apitrace (https://apitrace.github.io) loading. This requires apitrace library with additional bindings. @@ -1856,7 +1991,7 @@ enable_openscreen_protocol enable_openxr Current value (from the default) = false - From //device/vr/buildflags/buildflags.gni:18 + From //device/vr/buildflags/buildflags.gni:20 To build with OpenXR support, the OpenXR Loader needs to be pulled to third_party/openxr. @@ -1878,11 +2013,11 @@ enable_pdf enable_perfetto_benchmarks Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:194 + From //third_party/perfetto/gn/perfetto.gni:195 enable_perfetto_fuzzers Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:197 + From //third_party/perfetto/gn/perfetto.gni:198 enable_perfetto_heapprofd Current value (from the default) = false @@ -1890,7 +2025,7 @@ enable_perfetto_heapprofd enable_perfetto_integration_tests Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:192 + From //third_party/perfetto/gn/perfetto.gni:193 enable_perfetto_ipc Current value (from the default) = true @@ -1898,47 +2033,60 @@ enable_perfetto_ipc enable_perfetto_llvm_demangle Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:299 + From //third_party/perfetto/gn/perfetto.gni:309 enable_perfetto_platform_services Current value (from the default) = false From //third_party/perfetto/gn/perfetto.gni:141 +enable_perfetto_site + Current value (from the default) = false + From //third_party/perfetto/gn/perfetto.gni:326 + + Allows to build the perfetto.dev website. + WARNING: if this flag is enabled, the build performs globbing at generation + time. Incremental builds that add/remove files will not be supported without + rerunning gn. + enable_perfetto_stderr_crash_dump Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:234 + From //third_party/perfetto/gn/perfetto.gni:235 + +enable_perfetto_system_consumer + Current value (from the default) = true + From //third_party/perfetto/gn/perfetto.gni:251 enable_perfetto_tools Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:186 + 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:172 + 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:286 + From //third_party/perfetto/gn/perfetto.gni:296 enable_perfetto_trace_processor_json Current value (from the default) = true - From //third_party/perfetto/gn/perfetto.gni:281 + From //third_party/perfetto/gn/perfetto.gni:291 enable_perfetto_trace_processor_linenoise Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:275 + From //third_party/perfetto/gn/perfetto.gni:285 enable_perfetto_trace_processor_percentile Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:271 + From //third_party/perfetto/gn/perfetto.gni:280 enable_perfetto_trace_processor_sqlite Current value (from the default) = true - From //third_party/perfetto/gn/perfetto.gni:266 + From //third_party/perfetto/gn/perfetto.gni:275 enable_perfetto_traceconv Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:305 + From //third_party/perfetto/gn/perfetto.gni:315 enable_perfetto_traced_perf Current value (from the default) = false @@ -1946,7 +2094,7 @@ enable_perfetto_traced_perf enable_perfetto_traced_probes Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:258 + From //third_party/perfetto/gn/perfetto.gni:267 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 @@ -1956,40 +2104,38 @@ enable_perfetto_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:309 + From //third_party/perfetto/gn/perfetto.gni:319 enable_perfetto_unittests Current value (from the default) = true - From //third_party/perfetto/gn/perfetto.gni:188 + 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:203 + From //third_party/perfetto/gn/perfetto.gni:204 enable_perfetto_watchdog Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:181 + 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:242 + From //third_party/perfetto/gn/perfetto.gni:243 enable_perfetto_zlib Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:292 + From //third_party/perfetto/gn/perfetto.gni:302 + +enable_pkeys + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:236 enable_platform_ac3_eac3_audio Current value = true - From //out/thorium/args.gn:54 - Overridden from the default = false + From //out/thorium/args.gn:81 + Overridden from the default = true From //media/media_options.gni:53 Enables AC3/EAC3 audio demuxing. This is enabled only on Chromecast, since @@ -1998,55 +2144,95 @@ enable_platform_ac3_eac3_audio enable_platform_dolby_vision Current value = true - From //out/thorium/args.gn:55 - Overridden from the default = false - From //media/media_options.gni:73 + From //out/thorium/args.gn:82 + Overridden from the default = true + From //media/media_options.gni:69 - 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. + Enable Dolby Vision demuxing. Enabled by default for Chromecast and Windows. + Actual decoding must be provided by the platform. Since most Dolby Vision + profiles use HEVC, `enable_platform_hevc` is required to enable this. 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 + Current value = true + From //out/thorium/args.gn:85 + Overridden from the default = true 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_encrypted_dolby_vision + Current value = true + From //out/thorium/args.gn:83 + Overridden from the default = true + From //media/media_options.gni:76 + + Enable platform support of encrypted Dolby Vision. The actual support + depends on platform capability and is controlled by the run time feature + kPlatformEncryptedDolbyVision. Clear Dolby Vision is not supported by + default, unless overwritten by the run time feature + kAllowClearDolbyVisionInMseWhenPlatformEncryptedDvEnabled. + enable_platform_hevc Current value = true - From //out/thorium/args.gn:52 + From //out/thorium/args.gn:79 Overridden from the default = true - From //media/media_options.gni:119 + From //media/media_options.gni:112 + + Enable HEVC/H265 demuxing. Actual decoding must be provided by the + platform. + TODO(b/194429120): Enable this for Lacros builds. + TODO(crbug.com/1336055): Revisit the default value for this setting as it + applies to video-capable devices. enable_platform_mpeg_h_audio Current value = true - From //out/thorium/args.gn:56 - Overridden from the default = false + From //out/thorium/args.gn:84 + Overridden from the default = true From //media/media_options.gni:55 -enable_playready - Current value (from the default) = false - From //chromecast/chromecast.gni:152 - - Use Playready CDMs for internal non-desktop builds. - enable_plugins Current value (from the default) = true - From //ppapi/buildflags/buildflags.gni:10 + From //ppapi/buildflags/buildflags.gni:14 + + 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. + + In particular, the PDF viewer (enable_pdf) requires plugin support, but it + does not require Pepper support (enable_ppapi). + +enable_pointer_compression_support + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:53 + + Introduces pointer compression support in PA. + + This is effective only for memory allocated from PartitionAlloc, so it is + recommended to enable PA-E above, but isn't strictly necessary. Embedders + can create and use PA partitions explicitly. + +enable_ppapi + Current value (from the default) = true + From //ppapi/buildflags/buildflags.gni:19 + + Enables Pepper API (PPAPI) plugin support. enable_precompiled_headers Current value = false - From //out/thorium/args.gn:23 + From //out/thorium/args.gn:45 Overridden 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 + From //printing/buildflags/buildflags.gni:47 + + Enable snapshotting a page when printing for its content to be analyzed for + sensitive content by enterprise users. enable_print_media_l10n Current value (from the default) = true @@ -2058,17 +2244,23 @@ enable_print_media_l10n enable_print_preview Current value (from the default) = true - From //printing/buildflags/buildflags.gni:21 + From //printing/buildflags/buildflags.gni:25 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_printing + Current value (from the default) = true + From //printing/buildflags/buildflags.gni:14 + + Enables printing support. + enable_profiling Current value = false - From //out/thorium/args.gn:16 + From //out/thorium/args.gn:29 Overridden from the default = false - From //build/config/compiler/compiler.gni:69 + From //build/config/compiler/compiler.gni:70 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. @@ -2080,6 +2272,13 @@ enable_pseudolocales 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_puffin_patches + Current value (from the default) = false + From //components/update_client/buildflags.gni:8 + + Whether to enable the Puffin PuffPatch feature which is currently still + in development. + enable_qr_print Current value (from the default) = false From //components/qr_code_generator/BUILD.gn:7 @@ -2106,52 +2305,75 @@ 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 + Current value = false + From //out/thorium/args.gn:27 + Overridden from the default = true + From //net/features.gni:29 Reporting not used on iOS. enable_resource_allowlist_generation Current value = false - From //out/thorium/args.gn:15 + From //out/thorium/args.gn:28 Overridden from the default = false From //build/toolchain/gcc_toolchain.gni:28 +enable_rlz + Current value (from the default) = false + From //rlz/buildflags/buildflags.gni:13 + enable_rust Current value (from the default) = false - From //build/config/rust.gni:17 + From //build/config/rust.gni:18 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_rust_json + Current value (from the default) = true + From //build/config/rust.gni:23 + + Individual Rust components. + + The base::JSONReader implementation. + enable_screen_ai_service Current value (from the default) = true - From //components/services/screen_ai/buildflags/features.gni:11 + From //components/services/screen_ai/buildflags/features.gni:10 + + Screen AI service is only supported on desktop platforms. enable_segment_heap Current value (from the default) = false From //build/config/win/manifest.gni:46 +enable_server_based_recognition + Current value (from the default) = false + From //chrome/services/speech/buildflags/buildflags.gni:28 + + Whether the server based speech recognition recognizer is available. + Currently only available in official builds for ash ChromeOS. + enable_service_discovery Current value (from the default) = true - From //chrome/common/features.gni:55 + From //chrome/common/features.gni:60 enable_session_service Current value (from the default) = true - From //chrome/common/features.gni:59 + From //chrome/common/features.gni:64 Enables use of the session service, which is enabled by default. Android stores them separately on the Java side. +enable_shadow_metadata + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:138 + + Shadow metadata is still under development and only supports Linux + for now. + enable_skia_dawn_gtests Current value (from the default) = false From //skia/features.gni:13 @@ -2160,22 +2382,21 @@ enable_skia_dawn_gtests 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_soda +enable_soda_integration_tests Current value (from the default) = false - From //components/soda/buildflags.gni:7 + From //components/soda/buildflags.gni:9 Used to enable the Speech On-Device API (SODA) in unit and browser tests. + This affects production code on some platforms and should not be enabled in + official builds. enable_speech_service Current value (from the default) = true - From //chrome/services/speech/buildflags/buildflags.gni:10 + From //chrome/services/speech/buildflags/buildflags.gni:12 Whether the browser provides a speech recognition service (//media/mojo/mojom/speech_recognition_service.mojom) to the renderer. + TODO(crbug.com/1378804) Enable on Fuchsia. enable_stack_trace_line_numbers Current value (from the default) = false @@ -2183,7 +2404,7 @@ enable_stack_trace_line_numbers enable_stripping Current value = true - From //out/thorium/args.gn:7 + From //out/thorium/args.gn:21 Overridden from the default = true From //build/config/apple/symbols.gni:24 @@ -2195,14 +2416,14 @@ enable_stripping enable_supervised_users Current value (from the default) = false - From //chrome/common/features.gni:63 + From //components/supervised_user/buildflags.gni:8 Enables supervision for Family Link users. Supervision is only supported on Chrome OS and Android. enable_swiftshader Current value (from the default) = true - From //ui/gl/features.gni:30 + From //ui/gl/features.gni:36 enable_swiftshader_vulkan Current value (from the default) = true @@ -2214,46 +2435,43 @@ enable_swiftshader_vulkan enable_system_notifications Current value (from the default) = true - From //chrome/common/features.gni:67 + From //chrome/common/features.gni:68 enable_tagged_pdf Current value (from the default) = true - From //printing/buildflags/buildflags.gni:45 + From //printing/buildflags/buildflags.gni:52 Enables exporting to tagged PDF. enable_trace_logging + Current value (from the default) = true + From //third_party/openscreen/src/util/BUILD.gn:12 + + Enables trace logging in build. This is true by default, but may be disabled + for a slight performance increase. + +enable_update_notifications Current value (from the default) = false - From //third_party/openscreen/src/util/BUILD.gn:11 + From //chrome/browser/buildflags.gni:13 - 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. + Detect updates and notify the user for Google Chrome across all platforms. + Chromium does not use an auto-updater. -enable_typescript_bindings +enable_updater Current value (from the default) = false - From //mojo/public/tools/bindings/mojom.gni:47 + From //chrome/browser/buildflags.gni:9 - Enables generating Typescript bindings and compiling them to JS bindings. + By default, only branded builds integrate with automatic updates. -enable_video_capture_service +enable_validating_command_decoder 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. + From //ui/gl/features.gni:30 enable_vr Current value = true - From //out/thorium/args.gn:50 + From //out/thorium/args.gn:77 Overridden from the default = false - From //device/vr/buildflags/buildflags.gni:26 + From //device/vr/buildflags/buildflags.gni:28 enable_vulkan Current value (from the default) = true @@ -2261,51 +2479,54 @@ enable_vulkan enable_wayland_server Current value (from the default) = false - From //chrome/common/features.gni:70 + From //chrome/common/features.gni:71 Indicates if Wayland display server support is enabled. enable_websockets Current value (from the default) = true - From //net/features.gni:13 + From //net/features.gni:14 WebSockets and socket stream code are not used on iOS and are optional in cronet. -enable_webui_tab_strip +enable_webui_certificate_viewer + Current value (from the default) = true + From //chrome/common/features.gni:74 + + 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 = false + From //out/thorium/args.gn:34 + Overridden from the default = false From //ui/webui/webui_features.gni:14 Enable the WebUI version of the browser's tab strip. enable_widevine Current value = true - From //out/thorium/args.gn:38 - Overridden from the default = false + From //out/thorium/args.gn:63 + Overridden from the default = true From //third_party/widevine/cdm/widevine.gni:15 - Enables Widevine key system support. Enabled by default in Google Chrome, - on Android and Fuchsia platforms. + Enables Widevine key system support. Enabled by default in Google Chrome and + on Android. For Fuchsia, see crbug.com/1354347. 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) = false - 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 = true - From //out/thorium/args.gn:11 + From //out/thorium/args.gn:23 Overridden from the default = true - From //build/config/compiler/compiler.gni:120 + From //build/config/compiler/compiler.gni:125 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 @@ -2326,18 +2547,25 @@ extended_tracing_enabled Enable more trace events. Disabled by default due to binary size impact, but highly recommended for local development. +extra_sysroot_libs + Current value (from the default) = [] + From //build/config/rust.gni:62 + + Non-rlib libs provided in the toolchain sysroot. Usually this is empty, but + e.g. the Android Rust Toolchain provides a libunwind.a that rustc expects. + fatal_linker_warnings Current value (from the default) = true - From //build/config/compiler/BUILD.gn:75 + From //build/config/compiler/BUILD.gn:78 Enable fatal linker warnings. Building Chromium with certain versions of binutils can cause linker warning. ffmpeg_branding Current value = "Chrome" - From //out/thorium/args.gn:31 - Overridden from the default = "Chromium" - From //third_party/ffmpeg/ffmpeg_options.gni:44 + From //out/thorium/args.gn:54 + Overridden from the default = "Chrome" + From //third_party/ffmpeg/ffmpeg_options.gni:42 Controls whether we build the Chromium or Google Chrome version of FFmpeg. The Google Chrome version contains additional codecs. Typical values are @@ -2345,7 +2573,7 @@ ffmpeg_branding ffmpeg_use_unsafe_atomics Current value (from the default) = false - From //third_party/ffmpeg/ffmpeg_options.gni:62 + From //third_party/ffmpeg/ffmpeg_options.gni:60 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. @@ -2359,7 +2587,7 @@ ffmpeg_use_unsafe_atomics forbid_non_component_debug_builds Current value (from the default) = true - From //build/config/compiler/compiler.gni:107 + From //build/config/compiler/compiler.gni:112 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 @@ -2369,11 +2597,19 @@ 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 +force_enable_fieldtrial_testing_config + Current value (from the default) = false + From //components/variations/service/BUILD.gn:18 - Whether or not the FROM_HERE macro uses base::Location::Current(). + Set to true to make a build that force enables activation of field trial + tests specified in testing/variations/fieldtrial_testing_config.json. + +force_enable_raw_ptr_exclusion + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:75 + + RAW_PTR_EXCLUSION macro is disabled on official builds because it increased + binary size. This flag can be used to enable it for official builds too. gcc_target_rpath Current value (from the default) = "" @@ -2389,7 +2625,7 @@ gcc_target_rpath generate_fuzzer_owners Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:166 + From //build/config/sanitizers/sanitizers.gni:162 Generates an owners file for each fuzzer test. TODO(crbug.com/1194183): Remove this arg when finding OWNERS is faster. @@ -2400,6 +2636,13 @@ generate_linker_map Used for binary size analysis. +glue_core_pools + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:46 + + Puts the regular and BRP pools right next to each other, so that we can + check "belongs to one of the two pools" with a single bitmask operation. + gold_path Current value (from the default) = "" From //build/config/compiler/BUILD.gn:71 @@ -2414,10 +2657,10 @@ goma_dir Absolute directory containing the gomacc binary. google_api_key - Current value = "AIzaSyCkfPOPZXDKNn8hhgu3JrA62wIgC93d44k" + Current value = "AIzaSyBOti4mM-6x9WDnZIjIeyEU21OpBXqWBgw" From //out/thorium/args.gn:3 Overridden from the default = "" - From //google_apis/BUILD.gn:48 + From //google_apis/BUILD.gn:42 Set these to bake the specified API keys and OAuth client IDs/secrets into your build. @@ -2428,24 +2671,23 @@ google_api_key require server-side APIs may fail to work if no keys are provided. - Note that if you are building an official build or if - use_official_google_api_keys has been set to trie (explicitly or - implicitly), these values will be ignored and the official + Note that 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 = "811574891467.apps.googleusercontent.com" + Current value = "77185425430.apps.googleusercontent.com" From //out/thorium/args.gn:4 Overridden from the default = "" - From //google_apis/BUILD.gn:51 + From //google_apis/BUILD.gn:45 See google_api_key. google_default_client_secret - Current value = "kdloedMFGdGla2P1zacGjAQh" + Current value = "OTJgUOQcT7lO7GsGZq2G4IlT" From //out/thorium/args.gn:5 Overridden from the default = "" - From //google_apis/BUILD.gn:54 + From //google_apis/BUILD.gn:48 See google_api_key. @@ -2482,12 +2724,18 @@ has_platform_accessibility_support 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 +headless_enable_commands + Current value (from the default) = true + From //headless/headless.gni:11 - 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. + Enable support for --screenshot, --print-to-pdf and --dump-dom commands + Note: this option is not available if |headless_use_embedded_resources|. + +headless_mode_policy_supported + Current value (from the default) = true + From //headless/headless.gni:20 + + Platforms where headless mode is supported. headless_use_embedded_resources Current value (from the default) = false @@ -2497,13 +2745,13 @@ headless_use_embedded_resources headless_use_policy Current value (from the default) = true - From //headless/headless.gni:13 + From //headless/headless.gni:17 Use Policy component to manage preferences. headless_use_prefs Current value (from the default) = true - From //headless/headless.gni:10 + From //headless/headless.gni:14 Use Prefs component to access Local State and other preferences. @@ -2532,41 +2780,31 @@ host_toolchain 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(). +host_toolchain_no_sanitizers + Current value (from the default) = "//build/toolchain/mac:clang_arm64" + From //build/config/rust.gni:82 + 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. + From //third_party/icu/config.gni:22 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. + From //third_party/icu/config.gni:29 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. + From //third_party/icu/config.gni:9 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. + From //third_party/icu/config.gni:16 ignore_missing_widevine_signing_cert Current value = true - From //out/thorium/args.gn:40 - Overridden from the default = false - From //third_party/widevine/cdm/widevine.gni:81 + From //out/thorium/args.gn:68 + Overridden from the default = true + From //third_party/widevine/cdm/widevine.gni:79 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. @@ -2587,9 +2825,18 @@ include_ash_ambient_animation_resources May be overridden locally to false for testing purposes if desired. +include_branded_entitlements + Current value (from the default) = false + From //chrome/BUILD.gn:66 + + On macOS, `is_chrome_branded` builds that have been signed locally will not + launch because certain entitlements are tied to the official Google code + signing identity. If `include_branded_entitlements` is set to false, these + entitlements will be skipped. + include_transport_security_state_preload_list Current value (from the default) = true - From //net/features.gni:36 + From //net/features.gni:37 Includes the transport security state preload list. This list includes mechanisms (e.g. HSTS, HPKP) to enforce trusted connections to a significant @@ -2600,13 +2847,13 @@ include_transport_security_state_preload_list include_vr_data Current value (from the default) = false - From //device/vr/buildflags/buildflags.gni:30 + From //device/vr/buildflags/buildflags.gni:32 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 + From //build/config/compiler/BUILD.gn:141 Initialize all local variables with a pattern. This flag will fill uninitialized floating-point types (and 32-bit pointers) with 0xFF and the @@ -2614,8 +2861,15 @@ init_stack_vars 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. + TODO(crbug.com/1131993): This regresses binary size by ~1MB on Android and + needs to be evaluated before enabling it there as well. + +init_stack_vars_zero + Current value (from the default) = false + From //build/config/compiler/BUILD.gn:145 + + Zero init has favorable performance/size tradeoffs for Chrome OS + but was not evaluated for other platforms. internal_gles2_conform_tests Current value (from the default) = false @@ -2639,24 +2893,12 @@ ios_deployment_target ios_stack_profiler_enabled Current value (from the default) = true - From //base/BUILD.gn:73 + From //base/BUILD.gn:72 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 @@ -2665,35 +2907,31 @@ is_asan is_cast_android Current value (from the default) = false - From //build/config/chromecast_build.gni:57 + From //build/config/chromecast_build.gni:34 Set this to true to build for Android-based Cast devices. - Set this to false to use the defaults for the target OS/platform. + Set this to false to use the defaults for Android. is_cast_audio_only Current value (from the default) = false - From //build/config/chromecast_build.gni:26 + From //build/config/chromecast_build.gni:14 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:53 + From //build/config/chromecast_build.gni:30 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. - - TODO(crbug.com/1314528): Change default to false + Set this to false to use the defaults for Linux. is_cfi - Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:53 + Current value = true + From //out/thorium/args.gn:40 + Overridden from the default = false + From //build/config/sanitizers/sanitizers.gni:50 Compile with Control Flow Integrity to protect virtual calls and casts. See http://clang.llvm.org/docs/ControlFlowIntegrity.html @@ -2702,7 +2940,7 @@ is_cfi is_cfm Current value (from the default) = false - From //chromeos/components/chromebox_for_meetings/buildflags/buildflags.gni:7 + From //build/config/chromebox_for_meetings/buildflags.gni:7 True if compiling for Chromebox for Meeting devices. @@ -2718,15 +2956,23 @@ is_chrome_branded true means official Google Chrome branding (requires extra Google-internal resources). -is_chromecast +is_chrome_for_testing Current value (from the default) = false - From //build/config/chromecast_build.gni:16 + From //build/config/chrome_build.gni:15 - DEPRECATED. This flag will be removed in the future; see https://crbug.com/1219802. + Whether to enable the Chrome for Testing (CfT) flavor. This arg is not + compatible with `is_chrome_branded`. - 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. + Design document: https://goo.gle/chrome-for-testing + +is_chrome_for_testing_branded + Current value (from the default) = false + From //build/config/chrome_build.gni:21 + + Whether to use internal Chrome for Testing (CfT). + Requires `src-internal/` and `is_chrome_for_testing = true`. + + When true, use Google-internal icons, otherwise fall back to Chromium icons. is_chromeos_device Current value (from the default) = false @@ -2749,16 +2995,18 @@ is_chromeos_with_hw_details (see https://crrev.com/c/3123455). is_clang - Current value (from the default) = true + Current value = true + From //out/thorium/args.gn:35 + Overridden from the default = true From //build/config/BUILDCONFIG.gn:139 Set to true when compiling with the Clang compiler. is_component_build Current value = false - From //out/thorium/args.gn:17 + From //out/thorium/args.gn:30 Overridden from the default = false - From //build/config/BUILDCONFIG.gn:168 + From //build/config/BUILDCONFIG.gn:173 Component build. Setting to true compiles targets declared as "components" as shared libraries loaded dynamically. This speeds up development time. @@ -2769,9 +3017,9 @@ is_component_build is_component_ffmpeg Current value = false - From //out/thorium/args.gn:33 + From //out/thorium/args.gn:57 Overridden from the default = false - From //third_party/ffmpeg/ffmpeg_options.gni:51 + From //third_party/ffmpeg/ffmpeg_options.gni:49 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 @@ -2781,7 +3029,7 @@ is_component_ffmpeg is_cronet_build Current value (from the default) = false - From //build/config/ios/config.gni:16 + From //build/config/cronet/config.gni:9 Control whether cronet is built (this is usually set by the script components/cronet/tools/cr_cronet.py as cronet requires specific @@ -2796,9 +3044,9 @@ is_ct_supported is_debug Current value = false - From //out/thorium/args.gn:9 + From //out/thorium/args.gn:20 Overridden from the default = false - From //build/config/BUILDCONFIG.gn:158 + From //build/config/BUILDCONFIG.gn:163 Debug build. Enabling official builds automatically sets is_debug to false. @@ -2806,6 +3054,13 @@ is_ggp Current value (from the default) = false From //third_party/angle/gni/angle.gni:8 +is_high_end_android + Current value (from the default) = false + From //build/config/chrome_build.gni:25 + + Set to true to enable settings for high end Android devices, typically + enhancing speed at the expense of resources such as binary sizes and memory. + is_hwasan Current value (from the default) = false From //build/config/sanitizers/sanitizers.gni:19 @@ -2840,7 +3095,7 @@ is_nacl_saigo is_official_build Current value = true - From //out/thorium/args.gn:8 + From //out/thorium/args.gn:19 Overridden from the default = false From //build/config/BUILDCONFIG.gn:136 @@ -2856,7 +3111,7 @@ is_official_build 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 + Current value (from the default) = true From //v8/gni/release_branch_toggle.gni:6 is_p2p_enabled @@ -2889,6 +3144,14 @@ is_reven Refers to the separate branding required for the reven build. +is_robolectric + Current value (from the default) = false + From //build/config/BUILDCONFIG.gn:156 + + Do not set this directly. + It should be set only by //build/toolchains/android:robolectric_x64. + True when compiling native code for use with robolectric_binary(). + is_skylab Current value (from the default) = false From //build/config/chromeos/args.gni:29 @@ -2914,28 +3177,22 @@ is_ubsan_no_recover 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 + From //build/config/sanitizers/sanitizers.gni:79 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 + From //build/config/sanitizers/sanitizers.gni:115 Compile for Undefined Behaviour Sanitizer's vptr checks. is_unsafe_developer_build Current value (from the default) = false - From //base/BUILD.gn:60 + From //base/BUILD.gn:59 Unsafe developer build. Has developer-friendly features that may weaken or disable security measures like sandboxing or ASLR. @@ -2943,17 +3200,17 @@ is_unsafe_developer_build is_win_arm64 Current value (from the default) = false - From //third_party/angle/gni/angle.gni:121 + From //third_party/angle/gni/angle.gni:148 Currently Windows on Arm doesn't support OpenGL or Vulkan. jsoncpp_no_deprecated_declarations - Current value (from the default) = true + Current value (from the default) = false 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 + TODO(crbug.com/983223): Set this to false on all platforms, then remove it. ldso_path Current value (from the default) = "" @@ -2961,7 +3218,7 @@ ldso_path libcxx_is_shared Current value (from the default) = false - From //build/config/c++/c++.gni:55 + From //build/config/c++/c++.gni:52 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 @@ -2972,14 +3229,14 @@ libcxx_is_shared libcxx_natvis_include Current value (from the default) = true - From //build/config/c++/c++.gni:30 + From //build/config/c++/c++.gni:27 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) = "b1269813eaf5b8ac78e35e45a0f7cc320bd3e7d6" + Current value (from the default) = "1127c78cf90cf253be614a1e1d3645da57edbeb4" From //buildtools/deps_revisions.gni:8 Used to cause full rebuilds on libc++ rolls. This should be kept in sync @@ -3049,7 +3306,7 @@ llvm_force_head_revision mac_allow_system_xcode_for_official_builds_for_testing Current value (from the default) = false - From //build/config/mac/mac_sdk.gni:46 + From //build/config/mac/mac_sdk.gni:51 Production builds should use hermetic Xcode. If you want to do production builds with system Xcode to test new SDKs, set this. @@ -3086,8 +3343,16 @@ mac_sdk_name The SDK name as accepted by `xcodebuild`. +mac_sdk_official_build_version + Current value (from the default) = "21E226" + From //build/config/mac/mac_sdk.gni:46 + + The SDK build version used when making official builds. This is a single + exact version found at "System/Library/CoreServices/SystemVersion.plist" + inside the SDK. + mac_sdk_official_version - Current value (from the default) = "12.3" + Current value (from the default) = "13.0" From //build/config/mac/mac_sdk.gni:41 The SDK version used when making official builds. This is a single exact @@ -3102,10 +3367,6 @@ mac_sdk_path If empty, the path to the lowest version greater than or equal to `mac_sdk_min` is used. -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 @@ -3113,15 +3374,9 @@ mbi_mode 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 = true - From //out/thorium/args.gn:24 + From //out/thorium/args.gn:46 Overridden from the default = true From //media/media_options.gni:28 @@ -3131,7 +3386,7 @@ media_use_ffmpeg media_use_libvpx Current value = true - From //out/thorium/args.gn:25 + From //out/thorium/args.gn:47 Overridden from the default = true From //media/media_options.gni:32 @@ -3151,16 +3406,9 @@ mips_use_mmi 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:290 + From //media/media_options.gni:293 The process that the mojo MediaService runs in. By default, all services registered in |mojo_media_services| are hosted in the MediaService, with the @@ -3175,7 +3423,7 @@ mojo_media_host mojo_media_services Current value (from the default) = ["audio_decoder", "audio_encoder", "video_decoder", "cdm"] - From //media/media_options.gni:278 + From //media/media_options.gni:281 A list of mojo media services that should be used in the media pipeline. Valid entries in the list are: @@ -3188,14 +3436,14 @@ mojo_media_services mojom_message_id_salt_path Current value (from the default) = "//chrome/VERSION" - From //mojo/public/tools/bindings/mojom.gni:116 + From //mojo/public/tools/bindings/mojom.gni:120 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:213 + Current value (from the default) = true + 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 @@ -3207,21 +3455,28 @@ monolithic_binaries msan_track_origins Current value (from the default) = 2 - From //build/config/sanitizers/sanitizers.gni:43 + From //build/config/sanitizers/sanitizers.gni:40 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_cxx17 + Current value (from the default) = false + From //build_overrides/build.gni:43 + + Allows third-party repositories to use C++17 for MSVC builds + TODO(crbug.com/1380553) Remove once ANGLE's MSVC C++20 build passes + msvc_use_sse2 Current value (from the default) = true - From //third_party/pdfium/pdfium.gni:69 + From //third_party/pdfium/pdfium.gni:74 Enable SSE2 for MSVC builds. Ignored if it's not a MSVC build. ndk_api_level_at_least_26 Current value (from the default) = false - From //third_party/angle/gni/angle.gni:100 + From //third_party/angle/gni/angle.gni:127 needs_gomacc_path_arg Current value (from the default) = false @@ -3233,21 +3488,18 @@ needs_gomacc_path_arg optimize_for_fuzzing Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:90 + From //build/config/sanitizers/sanitizers.gni:87 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:135 - - If true, optimize for size. - Default to favoring speed over size for platforms not listed below. + From //build/config/compiler/compiler.gni:43 optimize_webui Current value = true - From //out/thorium/args.gn:20 + From //out/thorium/args.gn:33 Overridden from the default = true From //ui/webui/webui_features.gni:11 @@ -3261,70 +3513,70 @@ optional_trace_events_enabled ozone_auto_platforms Current value (from the default) = false - From //build/config/ozone.gni:22 + 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:19 + 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) = "" - From //build/config/ozone.gni:41 + From //build/config/ozone.gni:40 The platform that will used at runtime by default. This can be overridden with the command line flag --ozone-platform=. ozone_platform_cast Current value (from the default) = false - From //build/config/ozone.gni:44 + From //build/config/ozone.gni:43 Compile the 'cast' platform. ozone_platform_drm Current value (from the default) = false - From //build/config/ozone.gni:47 + From //build/config/ozone.gni:46 Compile the 'drm' platform. ozone_platform_flatland Current value (from the default) = false - From //build/config/ozone.gni:56 + From //build/config/ozone.gni:55 Compile the 'flatland' platform. ozone_platform_gbm Current value (from the default) = -1 - From //build/config/ozone.gni:26 + 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) = false - From //build/config/ozone.gni:50 + From //build/config/ozone.gni:49 Compile the 'headless' platform. ozone_platform_scenic Current value (from the default) = false - From //build/config/ozone.gni:53 + From //build/config/ozone.gni:52 Compile the 'scenic' platform. ozone_platform_wayland Current value (from the default) = false - From //build/config/ozone.gni:62 + From //build/config/ozone.gni:61 Compile the 'wayland' platform. ozone_platform_x11 Current value (from the default) = false - From //build/config/ozone.gni:59 + From //build/config/ozone.gni:58 Compile the 'x11' platform. @@ -3383,29 +3635,37 @@ pdf_enable_xfa_tiff pdf_is_complete_lib Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:51 + From //third_party/pdfium/pdfium.gni:56 Build a complete static library pdf_is_standalone Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:48 + From //third_party/pdfium/pdfium.gni:53 Build PDFium standalone -pdf_use_skia +pdf_use_cxx20 Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:41 + From //third_party/pdfium/pdfium.gni:42 - Build PDFium against Skia (experimental) rather than AGG. Use Skia to draw - everything. + Build PDFium using C++20 if set to true. Otherwise builds with C++17. + There is no "pdf_use_cxx20_override" variable because this is only used in + standalone PDFium, and not when PDFium is embedded in our projects. -pdf_use_skia_paths - Current value (from the default) = false +pdf_use_partition_alloc + Current value (from the default) = true From //third_party/pdfium/pdfium.gni:45 - Build PDFium against Skia (experimental) rather than AGG. Use Skia to draw - paths. + Build PDFium with PartitionAlloc as the memory allocator. + +pdf_use_skia + Current value (from the default) = true + From //third_party/pdfium/pdfium.gni:50 + + Build PDFium to use Skia (experimental) for all PDFium graphics. + If enabled, coexists in build with AGG graphics and the default + renderer is selectable at runtime. perfetto_build_with_android Current value (from the default) = false @@ -3418,11 +3678,11 @@ perfetto_build_with_android perfetto_enable_git_rev_version_header Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:248 + From //third_party/perfetto/gn/perfetto.gni:257 perfetto_force_dcheck Current value (from the default) = "" - From //third_party/perfetto/gn/perfetto.gni:228 + From //third_party/perfetto/gn/perfetto.gni:229 Whether DCHECKs should be enabled or not. Values: "on" | "off" | "". By default ("") DCHECKs are enabled only: @@ -3435,7 +3695,7 @@ perfetto_force_dcheck perfetto_force_dlog Current value (from the default) = "off" - From //third_party/perfetto/gn/perfetto.gni:218 + 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 @@ -3443,24 +3703,31 @@ perfetto_force_dlog perfetto_use_system_protobuf Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:317 + From //third_party/perfetto/gn/perfetto.gni:333 Used by CrOS system builds. Uses the system version of protobuf from /usr/include instead of the hermetic one. +perfetto_use_system_sqlite + Current value (from the default) = false + From //third_party/perfetto/gn/perfetto.gni:337 + + Used by CrOS system builds. Uses the system version of sqlite + 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:319 + From //third_party/perfetto/gn/perfetto.gni:339 perfetto_verbose_logs_enabled Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:262 + From //third_party/perfetto/gn/perfetto.gni:271 pgo_data_path - Current value = "/Users/midzer/chromium/src/chrome/build/pgo_profiles/chrome-mac-main-1655466571-7d65938c5b97e550699896fed8a00e761848f383.profdata" - From //out/thorium/args.gn:61 + Current value = "/Users/midzer/chromium/src/chrome/build/pgo_profiles/chrome-mac-5563-1678034145-2b0924b1d3352ad373c3872468c5d7de6e6311fd.profdata" + From //out/thorium/args.gn:91 Overridden from the default = "" - From //build/config/compiler/pgo/pgo.gni:32 + From //build/config/compiler/pgo/pgo.gni:33 When using chrome_pgo_phase = 2, read profile data from this path. @@ -3476,7 +3743,7 @@ pkg_config proprietary_codecs Current value = true - From //out/thorium/args.gn:30 + From //out/thorium/args.gn:53 Overridden from the default = false From //build/config/features.gni:31 @@ -3492,23 +3759,12 @@ proprietary_codecs builds to explicitly specify this. put_ref_count_in_previous_slot - Current value (from the default) = false - From //base/allocator/allocator.gni:106 - - 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. + Current value (from the default) = true + From //base/allocator/partition_allocator/partition_alloc.gni:114 rbe_cc_cfg_file - Current value (from the default) = "" - From //build/toolchain/rbe.gni:23 - - Set to the path of the RBE reclient configuration file. + Current value (from the default) = "../../buildtools/reclient_cfgs/chromium-browser-clang/rewrapper_mac.cfg" + From //build/toolchain/rbe.gni:39 rbe_cfg_dir Current value (from the default) = "../../buildtools/reclient_cfgs" @@ -3518,16 +3774,17 @@ rbe_cfg_dir rbe_cros_cc_wrapper Current value (from the default) = "../../buildtools/reclient/rewrapper" - From //build/toolchain/rbe.gni:26 + From //build/toolchain/rbe.gni:48 Set to the path of the RBE recleint wrapper for ChromeOS. -remoting_use_wayland - Current value (from the default) = false - From //remoting/build/config/remoting_features.gni:8 +rbe_link_cfg_file + Current value (from the default) = "" + From //build/toolchain/rbe.gni:40 - Determines whether or not remoting should use wayland implementation - to talk to remote host. +rbe_py_cfg_file + Current value (from the default) = "../../buildtools/reclient_cfgs/python/rewrapper_mac.cfg" + From //build/toolchain/rbe.gni:38 remoting_webrtc_verbose_logging Current value (from the default) = false @@ -3543,14 +3800,14 @@ remoting_webrtc_verbose_logging removed_rust_stdlib_libs Current value (from the default) = [] - From //build/config/rust.gni:48 + From //build/config/rust.gni:58 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 + From //BUILD.gn:60 A list of extra dependencies to add to the root target. This allows a checkout to add additional targets without explicitly changing any checked- @@ -3558,7 +3815,7 @@ root_extra_deps rtc_audio_device_plays_sinus_tone Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:191 + From //third_party/webrtc/webrtc.gni:195 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 @@ -3567,59 +3824,59 @@ rtc_audio_device_plays_sinus_tone rtc_build_dcsctp Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:307 + From //third_party/webrtc/webrtc.gni:316 Enable the dcsctp backend for DataChannels and related unittests rtc_build_examples Current value = false - From //out/thorium/args.gn:48 + From //out/thorium/args.gn:75 Overridden from the default = true - From //third_party/webrtc/webrtc.gni:126 + From //third_party/webrtc/webrtc.gni:130 Set this to false to skip building examples. rtc_build_json Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:247 + From //third_party/webrtc/webrtc.gni:256 Disable these to not build components which can be externally provided. rtc_build_libevent Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:258 + From //third_party/webrtc/webrtc.gni:267 rtc_build_libsrtp Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:248 + From //third_party/webrtc/webrtc.gni:257 rtc_build_libvpx Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:249 + From //third_party/webrtc/webrtc.gni:258 rtc_build_opus Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:251 + From //third_party/webrtc/webrtc.gni:260 rtc_build_ssl Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:252 + From //third_party/webrtc/webrtc.gni:261 rtc_build_tools Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:129 + From //third_party/webrtc/webrtc.gni:133 Set this to false to skip building tools. rtc_build_with_neon Current value = true - From //out/thorium/args.gn:47 + From //out/thorium/args.gn:74 Overridden from the default = true - From //third_party/webrtc/webrtc.gni:165 + From //third_party/webrtc/webrtc.gni:169 rtc_builtin_ssl_root_certificates Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:88 + From //third_party/webrtc/webrtc.gni:92 Setting this to false will require the API user to pass in their own SSLCertificateVerifier to verify the certificates presented from a @@ -3627,32 +3884,32 @@ rtc_builtin_ssl_root_certificates rtc_disable_check_msg Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:295 + From //third_party/webrtc/webrtc.gni:304 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 + From //third_party/webrtc/webrtc.gni:297 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 + From //third_party/webrtc/webrtc.gni:307 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 + From //third_party/webrtc/webrtc.gni:300 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 + From //third_party/webrtc/webrtc.gni:55 Setting this to true, will make RTC_DLOG() expand to log statements instead of being removed by the preprocessor. @@ -3660,41 +3917,41 @@ rtc_dlog_always_on rtc_enable_android_aaudio Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:148 + From //third_party/webrtc/webrtc.gni:152 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 + From //third_party/webrtc/webrtc.gni:283 rtc_enable_bwe_test_logging Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:123 + From //third_party/webrtc/webrtc.gni:127 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 + From //third_party/webrtc/webrtc.gni:117 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 + From //third_party/webrtc/webrtc.gni:319 Enable gRPC used for negotiation in multiprocess tests rtc_enable_libevent Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:257 + From //third_party/webrtc/webrtc.gni:266 rtc_enable_objc_symbol_export Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:58 + From //third_party/webrtc/webrtc.gni:62 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 @@ -3704,26 +3961,26 @@ rtc_enable_objc_symbol_export rtc_enable_protobuf Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:241 + From //third_party/webrtc/webrtc.gni:250 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 + From //third_party/webrtc/webrtc.gni:253 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 + From //third_party/webrtc/webrtc.gni:48 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 + From //third_party/webrtc/webrtc.gni:230 When set to true, a capturer implementation that uses the Windows.Graphics.Capture APIs will be available for use. This introduces a @@ -3731,13 +3988,13 @@ rtc_enable_win_wgc rtc_exclude_audio_processing_module Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:120 + From //third_party/webrtc/webrtc.gni:124 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 + From //third_party/webrtc/webrtc.gni:72 When WebRTC is built as part of Chromium it should exclude the default implementation of field_trial unless it is building for NACL or @@ -3745,7 +4002,7 @@ rtc_exclude_field_trial_default rtc_exclude_metrics_default Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:77 + From //third_party/webrtc/webrtc.gni:81 Setting this to true will define WEBRTC_EXCLUDE_METRICS_DEFAULT which will tell the pre-processor to remove the default definition of symbols @@ -3754,7 +4011,7 @@ rtc_exclude_metrics_default rtc_exclude_system_time Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:83 + From //third_party/webrtc/webrtc.gni:87 Setting this to true will define WEBRTC_EXCLUDE_SYSTEM_TIME which will tell the pre-processor to remove the default definition of the @@ -3763,14 +4020,14 @@ rtc_exclude_system_time rtc_exclude_transient_suppressor Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:302 + From //third_party/webrtc/webrtc.gni:311 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 + From //third_party/webrtc/webrtc.gni:211 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} @@ -3779,7 +4036,7 @@ rtc_include_builtin_audio_codecs rtc_include_builtin_video_codecs Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:213 + From //third_party/webrtc/webrtc.gni:217 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} @@ -3788,85 +4045,85 @@ rtc_include_builtin_video_codecs rtc_include_dav1d_in_internal_decoder_factory Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:229 + From //third_party/webrtc/webrtc.gni:233 Includes the dav1d decoder in the internal decoder factory when set to true. rtc_include_ilbc Current value = true - From //out/thorium/args.gn:46 + From //out/thorium/args.gn:73 Overridden from the default = true - From //third_party/webrtc/webrtc.gni:91 + From //third_party/webrtc/webrtc.gni:95 Include the iLBC audio codec? rtc_include_internal_audio_device Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:269 + From //third_party/webrtc/webrtc.gni:278 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 + From //third_party/webrtc/webrtc.gni:98 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 + From //third_party/webrtc/webrtc.gni:274 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 + From //third_party/webrtc/webrtc.gni:290 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 + From //third_party/webrtc/webrtc.gni:205 rtc_jsoncpp_root Current value (from the default) = "//third_party/jsoncpp/source/include" - From //third_party/webrtc/webrtc.gni:105 + From //third_party/webrtc/webrtc.gni:109 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 + From //third_party/webrtc/webrtc.gni:259 rtc_link_pipewire Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:141 + From //third_party/webrtc/webrtc.gni:145 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 + From //third_party/webrtc/webrtc.gni:102 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 + From //third_party/webrtc/webrtc.gni:105 Enable this to let the Opus audio codec change complexity on the fly. rtc_prefer_fixed_point Current value (from the default) = true - From //third_party/webrtc/webrtc.gni:160 + From //third_party/webrtc/webrtc.gni:164 rtc_sanitize_coverage Current value (from the default) = "" - From //third_party/webrtc/webrtc.gni:155 + From //third_party/webrtc/webrtc.gni:159 Set to "func", "block", "edge" for coverage generation. At unit test runtime set UBSAN_OPTIONS="coverage=1". @@ -3876,33 +4133,41 @@ rtc_sanitize_coverage rtc_ssl_root Current value (from the default) = "" - From //third_party/webrtc/webrtc.gni:109 + From //third_party/webrtc/webrtc.gni:113 Used to specify an external OpenSSL include path when not compiling the library that comes with WebRTC (i.e. rtc_build_ssl == 0). +rtc_strict_field_trials + Current value (from the default) = false + From //third_party/webrtc/webrtc.gni:238 + + When set to true, a run-time check will make sure that all field trial keys + have been registered in accordance with the field trial policy. The check + will only run with builds that have RTC_DCHECKs enabled. + rtc_use_absl_mutex Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:181 + From //third_party/webrtc/webrtc.gni:185 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 + From //third_party/webrtc/webrtc.gni:189 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 = true - From //out/thorium/args.gn:44 + From //out/thorium/args.gn:72 Overridden from the default = true - From //third_party/webrtc/webrtc.gni:178 + From //third_party/webrtc/webrtc.gni:182 rtc_use_pipewire Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:138 + From //third_party/webrtc/webrtc.gni:142 Set this to use PipeWire on the Wayland display server. By default it's only enabled on desktop Linux (excludes ChromeOS) and @@ -3911,20 +4176,20 @@ rtc_use_pipewire rtc_use_x11 Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:132 + From //third_party/webrtc/webrtc.gni:136 Set this to false to skip building code that requires X11. rtc_use_x11_extensions Current value (from the default) = false - From //third_party/webrtc/webrtc.gni:285 + From //third_party/webrtc/webrtc.gni:294 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 + From //third_party/webrtc/webrtc.gni:225 When set to true and in a standalone build, it will undefine UNICODE and _UNICODE (which are always defined globally by the Chromium Windows @@ -3935,11 +4200,11 @@ rtc_win_undef_unicode runtime_call_stats_count_everything Current value (from the default) = false - From //third_party/blink/renderer/platform/BUILD.gn:189 + From //third_party/blink/renderer/platform/BUILD.gn:215 rust_sysroot_absolute Current value (from the default) = "" - From //build/config/rust.gni:40 + From //build/config/rust.gni:46 Chromium currently has a Rust toolchain for Android and Linux, but if you wish to experiment on more platforms you can use this @@ -3948,9 +4213,16 @@ rust_sysroot_absolute containing a 'bin' directory and others. Commonly /.rustup/toolchains/nightly-- +rust_toolchain_supports_nacl + Current value (from the default) = false + From //build/config/rust.gni:50 + + If you're using a Rust toolchain as specified by rust_sysroot_absolute, + you can specify whether it supports nacl here. + rustc_can_link Current value (from the default) = true - From //build/config/rust.gni:73 + From //build/config/rust.gni:80 Rust code may end up being linked into a final executable by: * rustc (which calls lld) @@ -3966,7 +4238,7 @@ rustc_can_link rustc_version Current value (from the default) = "" - From //build/config/rust.gni:32 + From //build/config/rust.gni:38 The version string returned by rustc -V, if using an alternative toolchain. @@ -3976,7 +4248,7 @@ safe_browsing_mode sample_profile_is_accurate Current value (from the default) = false - From //build/config/compiler/compiler.gni:145 + From //build/config/compiler/compiler.gni:150 Whether we should consider the profile we're using to be accurate. Accurate profiles have the benefit of (potentially substantial) binary size @@ -3985,7 +4257,7 @@ sample_profile_is_accurate sanitizer_coverage_flags Current value (from the default) = "" - From //build/config/sanitizers/sanitizers.gni:100 + From //build/config/sanitizers/sanitizers.gni:97 Value for -fsanitize-coverage flag. Setting this causes use_sanitizer_coverage to be enabled. @@ -3996,20 +4268,31 @@ sanitizer_coverage_flags Default value when unset and use_sanitizer_coverage=true: trace-pc-guard,indirect-calls +save_reproducers_on_lld_crash + Current value (from the default) = false + From //build/config/compiler/BUILD.gn:177 + + If true, linker crashes will be rerun with `--reproduce` which causes + a reproducer file to be saved. + seed_corpus_dir Current value (from the default) = "//out/thorium/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 + From //build/config/compiler/BUILD.gn:173 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 + From //third_party/skia/modules/skshaper/skshaper.gni:34 + +skia_enable_skshaper_tests + Current value (from the default) = true + From //third_party/skia/modules/skshaper/skshaper.gni:37 skia_use_dawn Current value (from the default) = false @@ -4023,17 +4306,17 @@ skia_use_gl skip_buildtools_check Current value (from the default) = false - From //third_party/perfetto/gn/perfetto.gni:313 + From //third_party/perfetto/gn/perfetto.gni:329 Skip buildtools dependency checks (needed for ChromeOS). strip_absolute_paths_from_debug_symbols Current value (from the default) = false - From //build/config/compiler/compiler.gni:248 + From //build/config/compiler/compiler.gni:274 strip_debug_info Current value (from the default) = false - From //build/config/compiler/compiler.gni:65 + From //build/config/compiler/compiler.gni:66 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 @@ -4043,19 +4326,37 @@ subpixel_font_rendering_disabled Current value (from the default) = false From //gpu/ipc/service/BUILD.gn:13 +support_external_google_api_key + Current value (from the default) = false + From //google_apis/BUILD.gn:79 + supports_llvm Current value (from the default) = true From //third_party/swiftshader/src/Reactor/reactor.gni:17 +supports_os_accessibility_service + Current value (from the default) = false + From //services/accessibility/buildflags.gni:26 + + Used to determine if the Accessibility Service should run + assistive technology features, or if the service is running + in a browser embedded in an OS that already has those features. + supports_subzero Current value (from the default) = false From //third_party/swiftshader/src/Reactor/reactor.gni:13 Subzero doesn't support ARM64, MIPS64, PPC64, and RISCV64 (only x86 and ARMv7a). +swift_toolchain_path + Current value (from the default) = -1 + From //build/toolchain/apple/toolchain.gni:39 + + If unspecified, will use the toolchain downloaded via deps. + swift_whole_module_optimization Current value (from the default) = -1 - From //build/toolchain/apple/toolchain.gni:27 + From //build/toolchain/apple/toolchain.gni:36 This controls whether whole module optimization is enabled when building Swift modules. If enabled, the compiler will compile the module as one @@ -4079,9 +4380,9 @@ swiftshader_startup_dialog symbol_level Current value = 0 - From //out/thorium/args.gn:18 + From //out/thorium/args.gn:31 Overridden from the default = -1 - From //build/config/compiler/compiler.gni:60 + From //build/config/compiler/compiler.gni:61 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. @@ -4100,7 +4401,7 @@ sync_user_agent_product sysroot Current value (from the default) = "" - From //build/config/sysroot.gni:20 + From //build/config/sysroot.gni:18 The path of the sysroot for the current toolchain. If empty, default sysroot is used. @@ -4128,7 +4429,7 @@ system_libdir target_cpu Current value = "arm64" - From //out/thorium/args.gn:63 + From //out/thorium/args.gn:9 Overridden from the default = "" (Internally set; try `gn help target_cpu`.) @@ -4144,33 +4445,33 @@ target_environment target_os Current value = "mac" - From //out/thorium/args.gn:62 + From //out/thorium/args.gn:8 Overridden from the default = "" (Internally set; try `gn help target_os`.) target_rpath Current value (from the default) = "" - From //build/config/chromecast_build.gni:30 + From //build/config/chromecast_build.gni:18 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 + From //build/config/sysroot.gni:11 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 + From //build/config/sysroot.gni:14 The path to directory containing linux sysroot images. tests_have_location_tags Current value (from the default) = true - From //testing/test.gni:23 + From //testing/test.gni:22 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 @@ -4179,9 +4480,9 @@ tests_have_location_tags thin_lto_enable_optimizations Current value = true - From //out/thorium/args.gn:59 + From //out/thorium/args.gn:89 Overridden from the default = true - From //build/config/compiler/BUILD.gn:129 + From //build/config/compiler/BUILD.gn:130 tint_build_glsl_writer Current value (from the default) = true @@ -4195,6 +4496,18 @@ 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 + +toolchain_disables_sanitizers + Current value (from the default) = false + From //build/toolchain/toolchain.gni:26 + + Whether this toolchain should avoid building any sanitizer support + because it's a host toolchain where we aim to make shared objects that may + be loaded by prebuilt binaries without sanitizer support. + toolkit_views Current value (from the default) = true From //build/config/ui.gni:33 @@ -4202,8 +4515,10 @@ toolkit_views 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:50 + Current value = false + From //out/thorium/args.gn:36 + Overridden from the default = true + From //build/config/compiler/compiler.gni:51 Default to warnings as errors for default workflow, where we catch warnings with known toolchains. Allow overriding this e.g. for Chromium @@ -4212,49 +4527,32 @@ treat_warnings_as_errors trial_comparison_cert_verifier_supported Current value (from the default) = true - From //net/features.gni:40 - - Platforms where the cert verifier comparison trial is supported. - See https://crbug.com/649026. + From //net/features.gni:42 use_afl Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:75 + From //build/config/sanitizers/sanitizers.gni:72 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 + From //base/allocator/allocator.gni:14 Causes all the allocations to be routed via allocator_shim.cc. use_alsa Current value (from the default) = false - From //media/media_options.gni:162 + From //media/media_options.gni:165 Enables runtime selection of ALSA library for audio. use_android_unwinder_v2 Current value (from the default) = true - From //build/config/compiler/compiler.gni:33 + From //build/config/compiler/compiler.gni:144 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:44 @@ -4264,11 +4562,13 @@ use_arc_protected_media use_asan_backup_ref_ptr Current value (from the default) = false - From //base/allocator/allocator.gni:118 + From //base/allocator/partition_allocator/partition_alloc.gni:93 - 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_asan_unowned_ptr + Current value (from the default) = false + From //base/allocator/partition_allocator/partition_alloc.gni:96 + + Use probe-on-destruct unowned ptr detection with ASAN. use_aura Current value (from the default) = false @@ -4277,13 +4577,6 @@ use_aura 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) = false - From //base/allocator/allocator.gni:89 - - Set use_backup_ref_ptr true to use BackupRefPtr (BRP) as the implementation - of raw_ptr, and enable PartitionAlloc support for it. - use_blink_extensions_chromeos Current value (from the default) = false From //third_party/blink/renderer/config.gni:49 @@ -4296,7 +4589,7 @@ use_bluez use_cfi_cast Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:115 + From //build/config/sanitizers/sanitizers.gni:112 Enable checks for bad casts: derived cast and unrelated cast. TODO(krasin): remove this, when we're ready to add these checks by default. @@ -4304,25 +4597,21 @@ use_cfi_cast use_cfi_diag Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:64 + From //build/config/sanitizers/sanitizers.gni:61 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 + From //build/config/sanitizers/sanitizers.gni:58 use_cfi_recover Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:68 + From //build/config/sanitizers/sanitizers.gni:65 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:193 - use_chromeos_protected_av1 Current value (from the default) = false From //media/gpu/args.gni:49 @@ -4343,7 +4632,7 @@ use_chromeos_protected_media use_chromium_rust_toolchain Current value (from the default) = false - From //build/config/rust.gni:29 + From //build/config/rust.gni:35 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. @@ -4366,11 +4655,11 @@ use_clang_profiling use_clang_profiling_inside_sandbox Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:180 + From //build/config/sanitizers/sanitizers.gni:176 use_command_buffer Current value (from the default) = false - From //device/vr/buildflags/buildflags.gni:14 + From //device/vr/buildflags/buildflags.gni:16 use_cras Current value (from the default) = false @@ -4386,22 +4675,28 @@ use_crash_key_stubs use_cups Current value (from the default) = true - From //printing/buildflags/buildflags.gni:27 + From //printing/buildflags/buildflags.gni:35 use_cups_ipp Current value (from the default) = true - From //printing/buildflags/buildflags.gni:51 + From //printing/buildflags/buildflags.gni:65 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 + From //build/config/c++/c++.gni:13 + + Use in-tree libc++ (buildtools/third_party/libc++ and + buildtools/third_party/libc++abi) instead of the system C++ library for C++ + standard library support. + Don't check in changes that set this to false for more platforms; doing so + is not supported. use_custom_libcxx_for_host Current value (from the default) = false - From //build/config/c++/c++.gni:25 + From //build/config/c++/c++.gni:22 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 @@ -4410,11 +4705,12 @@ use_custom_libcxx_for_host expected usage is to set use_custom_libcxx=false and use_custom_libcxx_for_host=true in the passed in buildargs. -use_cxx11 +use_cxx17 Current value (from the default) = false - From //build/config/compiler/BUILD.gn:89 + From //build/config/compiler/BUILD.gn:181 - Allow projects that wish to stay on C++11 to override Chromium's default. + Allow projects that wish to stay on C++17 to override Chromium's default. + TODO(crbug.com/1402249): evaluate removing this end of 2023 use_dawn Current value (from the default) = true @@ -4429,7 +4725,7 @@ use_dbus use_debug_fission Current value (from the default) = "default" - From //build/config/compiler/compiler.gni:81 + From //build/config/compiler/compiler.gni:82 use_debug_fission: whether to use split DWARF debug info files. This can reduce link time significantly, but is incompatible @@ -4448,7 +4744,7 @@ use_dummy_lastchange use_dwarf5 Current value (from the default) = false - From //build/config/compiler/BUILD.gn:165 + From //build/config/compiler/BUILD.gn:161 Enable DWARF v5. @@ -4458,7 +4754,7 @@ use_egl use_external_fuzzing_engine Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:78 + From //build/config/sanitizers/sanitizers.gni:75 Compile for fuzzing with an external engine (e.g., Grammarinator). @@ -4468,17 +4764,13 @@ use_external_popup_menu Whether or not to use external popup menu. -use_fake_binary_experiment +use_freeslot_bitmap Current value (from the default) = false - From //base/allocator/allocator.gni:113 - - 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. + From //base/allocator/partition_allocator/partition_alloc.gni:42 use_full_pdb_paths Current value (from the default) = false - From //build/config/compiler/BUILD.gn:173 + From //build/config/compiler/BUILD.gn:169 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- @@ -4496,7 +4788,7 @@ use_gcm_from_platform use_ghash Current value (from the default) = true - From //build/config/compiler/BUILD.gn:119 + From //build/config/compiler/BUILD.gn:120 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 @@ -4518,7 +4810,7 @@ use_gnome_keyring use_gold Current value (from the default) = false - From //build/config/compiler/compiler.gni:219 + From //build/config/compiler/compiler.gni:245 Whether to use the gold linker from binutils instead of lld or bfd. @@ -4530,7 +4822,7 @@ use_goma use_goma_rust Current value (from the default) = false - From //build/config/rust.gni:60 + From //build/config/rust.gni:67 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 @@ -4538,7 +4830,7 @@ use_goma_rust use_goma_thin_lto Current value (from the default) = false - From //build/config/compiler/compiler.gni:95 + From //build/config/compiler/compiler.gni:100 If true, use Goma for ThinLTO code generation where applicable. @@ -4549,8 +4841,10 @@ use_gtk Whether or not we should use libgtk. use_icf - Current value (from the default) = true - From //build/config/compiler/BUILD.gn:190 + Current value = true + From //out/thorium/args.gn:39 + Overridden from the default = true + From //build/config/compiler/BUILD.gn:194 Set to true to use icf, Identical Code Folding. @@ -4562,6 +4856,13 @@ use_icf lld doesn't have the bug. +use_inner_html_parser_fast_path + Current value (from the default) = true + From //third_party/blink/renderer/config.gni:53 + + TODO(https://crbug.com/1407201): temporarily disabled on platforms that + are concerned about binary size. Figure out way to use everywhere. + use_internal_autofill_patterns Current value (from the default) = false From //components/autofill/core/browser/BUILD.gn:30 @@ -4575,8 +4876,8 @@ 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. + Normally, only Google Chrome Android and some 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. @@ -4599,7 +4900,7 @@ use_java_goma use_kerberos Current value (from the default) = true - From //net/features.gni:19 + From //net/features.gni:20 Enable Kerberos authentication. It is disabled by default on iOS, Fuchsia and Chromecast, at least for now. This feature needs configuration @@ -4608,21 +4909,21 @@ use_kerberos use_layout_plugin Current value (from the default) = true - From //third_party/blink/renderer/core/BUILD.gn:86 + From //third_party/blink/renderer/core/BUILD.gn:91 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 + From //build/config/sanitizers/sanitizers.gni:69 Compile for fuzzing with LLVM LibFuzzer. See http://www.chromium.org/developers/testing/libfuzzer use_libgav1_parser Current value (from the default) = false - From //third_party/libgav1/options.gni:14 + From //third_party/libgav1/options.gni:10 use_libinput Current value (from the default) = false @@ -4645,19 +4946,18 @@ use_libpci use_lld Current value = true - From //out/thorium/args.gn:21 + From //out/thorium/args.gn:38 Overridden from the default = true - From //build/config/compiler/compiler.gni:42 + From //build/config/compiler/compiler.gni:38 Set to true to use lld, the LLVM linker. In late bring-up on macOS (see docs/mac_lld.md). - Tentatively used on iOS, except in cronet builds (cronet still supports - 32-bit builds, which lld doesn't support). + 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 + From //build/config/sanitizers/sanitizers.gni:44 Use dynamic libraries instrumented by one of the sanitizers instead of the standard system libraries. Set this flag to build the libraries from source. @@ -4668,16 +4968,6 @@ use_low_quality_image_interpolation 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_message_port_core Current value (from the default) = false From //components/cast/message_port/BUILD.gn:13 @@ -4686,6 +4976,14 @@ use_message_port_core cast_message_port::CreateMessagePortPair as its implementation. Otherwise, uses one of the other types based on platform. +use_ml_inliner + Current value (from the default) = false + From //build/config/compiler/compiler.gni:141 + + Set to true to enable using the ML inliner in LLVM. This currently only + enables the ML inliner when targeting Android. + Currently the ML inliner is only supported on linux hosts + use_mpris Current value (from the default) = false From //components/system_media_controls/linux/buildflags/buildflags.gni:11 @@ -4693,10 +4991,6 @@ use_mpris Enables Chromium implementation of the MPRIS D-Bus interface for controlling media playback. See ../README.md for details. -use_mte_checked_ptr - Current value (from the default) = false - From //base/allocator/allocator.gni:91 - use_nss_certs Current value (from the default) = false From //crypto/features.gni:9 @@ -4705,7 +4999,7 @@ use_nss_certs use_official_enterprise_connectors_api_keys Current value (from the default) = false - From //chrome/browser/BUILD.gn:66 + From //chrome/browser/BUILD.gn:68 You can set the variable 'use_official_enterprise_connectors_api_keys' to true to use the Google-internal file containing official API keys @@ -4719,33 +5013,30 @@ use_official_enterprise_connectors_api_keys use_official_google_api_keys Current value (from the default) = "" - From //google_apis/BUILD.gn:33 + From //google_apis/BUILD.gn:28 - You can set the variable 'use_official_google_api_keys' to true + Set the variable 'use_official_google_api_keys' to true to use the Google-internal file containing official API keys - for Google Chrome even in a developer build. Setting this - variable explicitly to true will cause your build to fail if the - internal file is missing. + even in a developer build. Setting this variable explicitly to + true will cause the build to fail if the internal file is missing. - The variable is documented here, but not handled in this file; - see //google_apis/determine_use_official_keys.gypi for the - implementation. + Set the variable to false to not use the internal file, even for + Chrome-branded builds or when it exists in your checkout. - Set the variable to false to not use the internal file, even 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 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. + Leave it set to "" to have the variable implicitly set to true for + Chrome-branded builds or if + //src/google_apis/internal/google_chrome_api_keys.h is present and false + otherwise. + This does not apply to iOS builds, which use different mechanisms and always + evaluate to use_official_google_api_keys=false. + See https://crbug.com/1183709. use_ozone Current value (from the default) = false - From //build/config/ozone.gni:13 + 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) = false @@ -4753,16 +5044,29 @@ use_pangocairo use_partition_alloc Current value (from the default) = true - From //base/allocator/allocator.gni:61 + From //base/allocator/partition_allocator/partition_alloc.gni:32 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|. + is PartitionAlloc, which is governed by |use_partition_alloc_as_malloc|. - 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). + N.B. generally, embedders should look at this GN arg and at the + corresponding buildflag to determine whether to interact with PA + source at all (pulling the component in via GN, including headers, + etc.). There is nothing stopping a lazy embedder from ignoring this + and unconditionally using PA, but such a setup is inadvisable. + + In Chromium, this is set true, except: + + 1. On Cronet bots, because Cronet doesn't use PartitionAlloc at all, + and doesn't wish to incur the library size increase (crbug.com/674570). + 2. On NaCl (through this declaration), where PartitionAlloc doesn't + build at all. + +use_partition_alloc_as_malloc + Current value (from the default) = true + From //base/allocator/partition_allocator/partition_alloc.gni:38 use_perfetto_client_library Current value (from the default) = false @@ -4780,23 +5084,21 @@ use_platform_icu_alternatives 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_polly + Current value (from the default) = false + From //build/config/compiler/BUILD.gn:74 + + Whether to enable LLVM's Polly optimizations. See https://polly.llvm.org/ + use_pulseaudio Current value (from the default) = false - From //media/media_options.gni:159 + From //media/media_options.gni:162 Enables runtime selection of PulseAudio library. 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_rbe - Current value (from the default) = false - From //build/toolchain/rbe.gni:17 - - Set to true to enable remote compilation using reclient (deprecated). + From //ui/qt/qt.gni:8 use_real_dbus_clients Current value (from the default) = false @@ -4804,12 +5106,26 @@ use_real_dbus_clients Instantiate real D-Bus clients instead of fakes. +use_relative_vtables_abi + Current value (from the default) = false + From //build/config/compiler/compiler.gni:155 + + Use offsets rather than pointers in vtables in order to reduce the number of + relocations. This is safe to enable only when all C++ code is built with the + flag set to the same value. + use_remoteexec Current value (from the default) = false From //build/toolchain/rbe.gni:14 Set to true to enable remote compilation using reclient. +use_remoteexec_links + Current value (from the default) = false + From //build/toolchain/rbe.gni:17 + + Set to true to enable remote linking using reclient. + use_rts Current value (from the default) = false From //build/config/rts.gni:4 @@ -4819,7 +5135,7 @@ use_rts use_rtti Current value (from the default) = false - From //build/config/compiler/BUILD.gn:80 + From //build/config/compiler/BUILD.gn:83 Build with C++ RTTI enabled. Chromium builds without RTTI by default, but some sanitizers are known to require it, like CFI diagnostics @@ -4848,7 +5164,7 @@ use_runtime_vlog use_sanitizer_configs_without_instrumentation Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:105 + From //build/config/sanitizers/sanitizers.gni:102 When enabled, only relevant sanitizer defines are set, but compilation happens with no extra flags. This is useful when in component build @@ -4856,7 +5172,7 @@ use_sanitizer_configs_without_instrumentation use_sanitizer_coverage Current value (from the default) = false - From //build/config/sanitizers/sanitizers.gni:169 + From //build/config/sanitizers/sanitizers.gni:165 use_static_angle Current value (from the default) = false @@ -4873,18 +5189,11 @@ use_swiftshader_with_subzero use_sysroot Current value (from the default) = true - From //build/config/sysroot.gni:24 + From //build/config/sysroot.gni:22 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 @@ -4909,7 +5218,7 @@ use_system_harfbuzz use_system_lcms2 Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:60 + From //third_party/pdfium/pdfium.gni:65 Don't build against bundled lcms2. @@ -4921,21 +5230,21 @@ use_system_libjpeg use_system_libopenjpeg2 Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:63 + From //third_party/pdfium/pdfium.gni:68 Don't build against bundled libopenjpeg2. use_system_libpng Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:66 + From //third_party/pdfium/pdfium.gni:71 Don't build against bundled libpng. use_system_xcode Current value = true - From //out/thorium/args.gn:6 + From //out/thorium/args.gn:18 Overridden from the default = "" - From //build_overrides/build.gni:67 + From //build_overrides/build.gni:71 Use the system install of Xcode for tools like ibtool, libtool, etc. This does not affect the compiler. When this variable is false, targets @@ -4945,13 +5254,15 @@ use_system_xcode use_system_zlib Current value (from the default) = false - From //third_party/pdfium/pdfium.gni:57 + From //third_party/pdfium/pdfium.gni:62 Don't build against bundled zlib. use_text_section_splitting - Current value (from the default) = false - From //build/config/compiler/BUILD.gn:149 + Current value = true + From //out/thorium/args.gn:87 + Overridden from the default = false + From //build/config/compiler/BUILD.gn:154 This argument is to control whether enabling text section splitting in the final binary. When enabled, the separated text sections with prefix @@ -4963,9 +5274,9 @@ use_text_section_splitting use_thin_lto Current value = true - From //out/thorium/args.gn:58 + From //out/thorium/args.gn:88 Overridden from the default = true - From //build/config/compiler/compiler.gni:89 + From //build/config/compiler/compiler.gni:93 use_udev Current value (from the default) = false @@ -4973,12 +5284,6 @@ use_udev libudev usage. This currently only affects the content layer. -use_unix_sockets - Current value (from the default) = false - 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 @@ -4987,9 +5292,6 @@ use_v4l2_codec Current value (from the default) = false From //media/gpu/args.gni:22 - 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:26 @@ -4999,12 +5301,14 @@ use_v4l2_codec_aml use_v4lplugin Current value (from the default) = false - From //media/gpu/args.gni:18 + From //media/gpu/args.gni:17 Indicates if V4L plugin is used. use_v8_context_snapshot - Current value (from the default) = true + Current value = true + From //out/thorium/args.gn:43 + Overridden from the default = true From //tools/v8_context_snapshot/v8_context_snapshot.gni:19 use_vaapi @@ -5025,7 +5329,10 @@ use_vaapi_image_codecs use_vaapi_x11 Current value (from the default) = false - From //media/gpu/args.gni:12 + 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_viz_debugger Current value (from the default) = false @@ -5036,7 +5343,7 @@ use_viz_debugger use_vr_assets_component Current value = true - From //out/thorium/args.gn:51 + From //out/thorium/args.gn:78 Overridden from the default = false From //chrome/browser/vr/features.gni:12 @@ -5044,7 +5351,7 @@ use_vr_assets_component use_webaudio_ffmpeg Current value = false - From //out/thorium/args.gn:34 + From //out/thorium/args.gn:58 Overridden from the default = false From //third_party/blink/renderer/config.gni:46 @@ -5052,7 +5359,7 @@ use_webaudio_ffmpeg use_webaudio_pffft Current value = false - From //out/thorium/args.gn:35 + From //out/thorium/args.gn:59 Overridden from the default = false From //third_party/blink/renderer/config.gni:20 @@ -5069,7 +5376,7 @@ use_xkbcommon using_mismatched_sample_profile Current value (from the default) = true - From //build/config/compiler/compiler.gni:102 + From //build/config/compiler/compiler.gni:107 Whether we're using a sample profile collected on an architecture different than the one we're compiling for. @@ -5079,14 +5386,14 @@ using_mismatched_sample_profile v8_advanced_bigint_algorithms Current value (from the default) = true - From //v8/gni/v8.gni:99 + From //v8/gni/v8.gni:124 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 + From //v8/BUILD.gn:349 Enable global allocation site tracking. @@ -5098,41 +5405,41 @@ v8_android_log_stdout v8_annotate_torque_ir Current value (from the default) = false - From //v8/BUILD.gn:277 + From //v8/BUILD.gn:279 Generate comments describing the Torque intermediate representation. v8_builtins_profiling_log_file - Current value (from the default) = "" - From //v8/BUILD.gn:190 + Current value (from the default) = "default" + From //v8/BUILD.gn:196 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. + 2. Run your chosen workload with the --turbo-profiling-output 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" + --js-flags="--turbo-profiling-output=v8.builtins.pgo" "http://localhost/test-suite" - 3. Run tools/get_hints.py to produce the branch hints, selecting min_count - and threshold_ratio as you wish. + 3. Run tools/builtins-pgo/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. + tools/builtins-pgo/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 + From //v8/BUILD.gn:225 Similar to vfp but on MIPS. v8_check_header_includes Current value (from the default) = false - From //v8/BUILD.gn:238 + From //v8/BUILD.gn:240 Check that each header can be included in isolation (requires also setting the "check_v8_header_includes" gclient variable to run a @@ -5140,7 +5447,7 @@ v8_check_header_includes v8_code_comments Current value (from the default) = "" - From //v8/BUILD.gn:107 + From //v8/BUILD.gn:110 Allow runtime-enabled code comments (with --code-comments). Enabled by default in debug builds. @@ -5159,10 +5466,7 @@ v8_context_snapshot_filename 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. + From //v8/BUILD.gn:290 v8_correctness_fuzzer Current value (from the default) = false @@ -5172,7 +5476,7 @@ v8_correctness_fuzzer v8_current_cpu Current value (from the default) = "arm64" - From //build/config/v8_target_cpu.gni:60 + From //build/config/v8_target_cpu.gni:63 This argument is declared here so that it can be overridden in toolchains. It should never be explicitly set by the user. @@ -5185,13 +5489,13 @@ v8_custom_deps v8_deprecation_warnings Current value (from the default) = true - From //v8/BUILD.gn:56 + From //v8/BUILD.gn:59 Enable compiler warnings when using V8_DEPRECATED apis. v8_dict_property_const_tracking Current value (from the default) = false - From //v8/BUILD.gn:339 + From //v8/BUILD.gn:333 Experimental feature for tracking constness of properties in non-global dictionaries. Enabling this also always keeps prototypes in dict mode, @@ -5200,37 +5504,37 @@ v8_dict_property_const_tracking v8_disable_write_barriers Current value (from the default) = false - From //v8/BUILD.gn:258 + From //v8/BUILD.gn:260 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 + From //v8/BUILD.gn:65 Embeds the given script into the snapshot. v8_embedder_string Current value (from the default) = "" - From //v8/BUILD.gn:65 + From //v8/BUILD.gn:68 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 + From //v8/BUILD.gn:132 v8_enable_allocation_folding Current value (from the default) = true - From //v8/BUILD.gn:349 + From //v8/BUILD.gn:343 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 + From //v8/BUILD.gn:153 Sets -dV8_ATOMIC_OBJECT_FIELD_WRITES and turns all field write operations into relaxed atomic operations. @@ -5243,7 +5547,7 @@ v8_enable_backtrace v8_enable_builtins_profiling Current value (from the default) = false - From //v8/BUILD.gn:165 + From //v8/BUILD.gn:171 Runs mksnapshot with --turbo-profiling. After building in this configuration, any subsequent run of d8 will output information about usage @@ -5251,7 +5555,7 @@ v8_enable_builtins_profiling v8_enable_builtins_profiling_verbose Current value (from the default) = false - From //v8/BUILD.gn:171 + From //v8/BUILD.gn:177 Runs mksnapshot with --turbo-profiling-verbose. After building in this configuration, any subsequent run of d8 will output information about usage @@ -5260,27 +5564,27 @@ v8_enable_builtins_profiling_verbose v8_enable_cet_shadow_stack Current value (from the default) = false - From //v8/BUILD.gn:365 + From //v8/BUILD.gn:359 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 + From //v8/BUILD.gn:157 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 + From //v8/gni/v8.gni:91 Scan the call stack conservatively during garbage collection. v8_enable_debug_code Current value (from the default) = "" - From //v8/BUILD.gn:112 + From //v8/BUILD.gn:115 Allow runtime-enabled debug code (with --debug-code). Enabled by default in debug builds. @@ -5295,13 +5599,19 @@ v8_enable_debugging_features v8_enable_disassembler Current value (from the default) = "" - From //v8/BUILD.gn:68 + From //v8/BUILD.gn:71 Sets -dENABLE_DISASSEMBLER. +v8_enable_etw_stack_walking + Current value (from the default) = false + From //v8/BUILD.gn:47 + + Sets -DV8_ENABLE_ETW_STACK_WALKING. Enables ETW Stack Walking + v8_enable_external_code_space Current value (from the default) = "" - From //v8/BUILD.gn:202 + From //v8/BUILD.gn:208 Enable support for external code range relative to the pointer compression cage. @@ -5309,13 +5619,15 @@ v8_enable_external_code_space v8_enable_fast_mksnapshot Current value (from the default) = false - From //v8/BUILD.gn:92 + From //v8/BUILD.gn:95 Enable fast mksnapshot runs. v8_enable_fast_torque - Current value (from the default) = "" - From //v8/BUILD.gn:95 + Current value = true + From //out/thorium/args.gn:42 + Overridden from the default = "" + From //v8/BUILD.gn:98 Optimize code for Torque executable, even during a debug build. @@ -5329,27 +5641,27 @@ v8_enable_gdbjit Current value = false From //.gn:36 Overridden from the default = false - From //v8/BUILD.gn:231 + From //v8/BUILD.gn:233 v8_enable_google_benchmark Current value (from the default) = false - From //v8/gni/v8.gni:84 + From //v8/gni/v8.gni:99 v8_enable_handle_zapping - Current value (from the default) = true - From //v8/BUILD.gn:86 + Current value (from the default) = false + From //v8/BUILD.gn:89 Sets -dENABLE_HANDLE_ZAPPING. v8_enable_heap_snapshot_verify Current value (from the default) = "" - From //v8/BUILD.gn:352 + From //v8/BUILD.gn:346 Enable runtime verification of heap snapshots produced for devtools. v8_enable_hugepage Current value (from the default) = false - From //v8/BUILD.gn:83 + From //v8/BUILD.gn:86 Sets -dENABLE_HUGEPAGE @@ -5362,7 +5674,7 @@ v8_enable_i18n_support v8_enable_ignition_dispatch_counting Current value (from the default) = false - From //v8/BUILD.gn:160 + From //v8/BUILD.gn:166 Sets -dV8_IGNITION_DISPATCH_COUNTING. Enables counting frequencies of bytecode dispatches. After building in this @@ -5372,15 +5684,27 @@ v8_enable_ignition_dispatch_counting 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:97 + + 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:94 + + 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 + From //v8/BUILD.gn:339 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 + From //v8/BUILD.gn:247 Enable lazy source positions by default. @@ -5394,130 +5718,123 @@ v8_enable_lite_mode v8_enable_maglev Current value (from the default) = "" - From //v8/BUILD.gn:206 + From //v8/gni/v8.gni:72 Enable the Maglev compiler. Sets -dV8_ENABLE_MAGLEV v8_enable_map_packing Current value (from the default) = false - From //v8/BUILD.gn:342 + From //v8/BUILD.gn:336 Enable map packing & unpacking (sets -dV8_MAP_PACKING). v8_enable_object_print Current value (from the default) = "" - From //v8/BUILD.gn:129 + From //v8/BUILD.gn:135 Sets -dOBJECT_PRINT. v8_enable_pointer_compression Current value (from the default) = "" - From //v8/BUILD.gn:124 + From //v8/BUILD.gn:130 Enable pointer compression (sets -dV8_COMPRESS_POINTERS). +v8_enable_pointer_compression_8gb + Current value (from the default) = "" + From //v8/BUILD.gn:370 + + 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 + From //v8/BUILD.gn:131 v8_enable_precise_zone_stats Current value (from the default) = false - From //v8/BUILD.gn:325 + From //v8/BUILD.gn:319 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 + From //v8/BUILD.gn:272 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 + Current value (from the default) = false + From //v8/gni/v8.gni:85 Enable runtime call stats. v8_enable_sandbox Current value (from the default) = "" - From //v8/BUILD.gn:305 + From //v8/BUILD.gn:310 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 external pointer sandboxing. 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 + From //v8/BUILD.gn:244 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 + From //v8/BUILD.gn:203 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 + From //v8/BUILD.gn:268 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 + From //v8/BUILD.gn:92 Enable slow dchecks. v8_enable_snapshot_code_comments Current value (from the default) = false - From //v8/BUILD.gn:102 + From //v8/BUILD.gn:105 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 + From //v8/BUILD.gn:283 v8_enable_snapshot_native_code_counters Current value (from the default) = "" - From //v8/BUILD.gn:118 + From //v8/BUILD.gn:121 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_static_roots + Current value (from the default) = "" + From //v8/BUILD.gn:124 + + Use pre-generated static root pointer values from static-roots.h. + v8_enable_swiss_name_dictionary Current value (from the default) = false - From //v8/BUILD.gn:329 + From //v8/BUILD.gn:323 Experimental feature that uses SwissNameDictionary instead of NameDictionary as the backing store for all dictionary mode objects. @@ -5526,86 +5843,93 @@ v8_enable_system_instrumentation Current value (from the default) = true From //v8/BUILD.gn:44 - Sets -DSYSTEM_INSTRUMENTATION. Enables OS-dependent event tracing + Sets -DENABLE_SYSTEM_INSTRUMENTATION. Enables OS-dependent event tracing v8_enable_test_features Current value (from the default) = "" - From //v8/BUILD.gn:193 + From //v8/BUILD.gn:199 Enables various testing features. v8_enable_third_party_heap Current value (from the default) = false - From //v8/BUILD.gn:248 + From //v8/BUILD.gn:250 Enable third party HEAP library v8_enable_trace_baseline_exec Current value (from the default) = false - From //v8/BUILD.gn:140 + From //v8/BUILD.gn:146 v8_enable_trace_feedback_updates Current value (from the default) = false - From //v8/BUILD.gn:143 + From //v8/BUILD.gn:149 Sets -dV8_TRACE_FEEDBACK_UPDATES. v8_enable_trace_ignition Current value (from the default) = false - From //v8/BUILD.gn:139 + From //v8/BUILD.gn:145 v8_enable_trace_maps Current value (from the default) = "" - From //v8/BUILD.gn:132 + From //v8/BUILD.gn:138 Sets -dV8_TRACE_MAPS. v8_enable_trace_unoptimized Current value (from the default) = "" - From //v8/BUILD.gn:138 + From //v8/BUILD.gn:144 Sets -dV8_TRACE_UNOPTIMIZED. +v8_enable_turbofan + Current value (from the default) = "" + From //v8/gni/v8.gni:68 + + Enable the Turbofan compiler. + Sets -dV8_ENABLE_TURBOFAN. + v8_enable_unconditional_write_barriers Current value (from the default) = false - From //v8/BUILD.gn:262 + From //v8/BUILD.gn:264 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 + From //v8/BUILD.gn:141 Sets -dV8_ENABLE_CHECKS. v8_enable_verify_csa Current value (from the default) = false - From //v8/BUILD.gn:121 + From //v8/BUILD.gn:127 Enable code-generation-time checking of types in the CodeStubAssembler. v8_enable_verify_heap Current value (from the default) = "" - From //v8/BUILD.gn:50 + From //v8/BUILD.gn:53 Sets -DVERIFY_HEAP. v8_enable_verify_predictable Current value (from the default) = false - From //v8/BUILD.gn:53 + From //v8/BUILD.gn:56 Sets -DVERIFY_PREDICTABLE v8_enable_vtunejit Current value (from the default) = false - From //v8/BUILD.gn:77 + From //v8/BUILD.gn:80 Sets -dENABLE_VTUNE_JIT_INTERFACE. v8_enable_vtunetracemark Current value (from the default) = false - From //v8/BUILD.gn:80 + From //v8/BUILD.gn:83 Sets -dENABLE_VTUNE_TRACEMARK. @@ -5617,35 +5941,36 @@ v8_enable_wasm_gdb_remote_debugging v8_enable_wasm_simd256_revec Current value (from the default) = false - From //v8/gni/v8.gni:73 + From //v8/gni/v8.gni:82 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 + From //v8/gni/v8.gni:79 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. + Sets -dV8_ENABLE_WEBASSEMBLY. v8_enable_zone_compression Current value (from the default) = "" - From //v8/BUILD.gn:301 + From //v8/BUILD.gn:306 Enable V8 zone compression experimental feature. Sets -DV8_COMPRESS_ZONES. v8_etw_guid Current value (from the default) = "" - From //v8/BUILD.gn:47 + From //v8/BUILD.gn:50 Sets the GUID for the ETW provider v8_expose_memory_corruption_api Current value (from the default) = false - From //v8/BUILD.gn:321 + From //v8/BUILD.gn:315 Expose the memory corruption API to JavaScript. Useful for testing the sandbox. WARNING This will expose builtins that (by design) cause memory corruption. @@ -5659,7 +5984,7 @@ v8_expose_symbols v8_fuchsia_use_vmex_resource Current value (from the default) = false - From //v8/BUILD.gn:372 + From //v8/BUILD.gn:366 Get VMEX priviledge at startup. It allows to run V8 without "deprecated-ambient-replace-as-executable". @@ -5669,7 +5994,7 @@ v8_fuchsia_use_vmex_resource v8_fuzzilli Current value (from the default) = false - From //v8/gni/v8.gni:79 + From //v8/gni/v8.gni:88 Add fuzzilli fuzzer support. @@ -5681,7 +6006,7 @@ v8_gcmole v8_generate_external_defines_header Current value (from the default) = false - From //v8/BUILD.gn:333 + From //v8/BUILD.gn:327 If enabled then macro definitions that are used in externally visible header files are placed in a separate header file v8-gn.h. @@ -5697,7 +6022,7 @@ v8_imminent_deprecation_warnings Current value = false From //.gn:37 Overridden from the default = true - From //v8/BUILD.gn:59 + From //v8/BUILD.gn:62 Enable compiler warnings when using V8_DEPRECATE_SOON apis. @@ -5715,7 +6040,7 @@ v8_multi_arch_build v8_no_inline Current value (from the default) = false - From //v8/BUILD.gn:217 + From //v8/BUILD.gn:219 Switches off inlining in V8. @@ -5727,13 +6052,13 @@ v8_optimized_debug v8_os_page_size Current value (from the default) = "0" - From //v8/BUILD.gn:220 + From //v8/BUILD.gn:222 Override OS page size when generating snapshot v8_postmortem_support Current value (from the default) = false - From //v8/BUILD.gn:211 + From //v8/BUILD.gn:213 With post mortem support enabled, metadata is embedded into libv8 that describes various parameters of the VM for use by debuggers. See @@ -5741,13 +6066,13 @@ v8_postmortem_support v8_promise_internal_field_count Current value (from the default) = 0 - From //v8/BUILD.gn:71 + From //v8/BUILD.gn:74 Sets the number of internal fields on promise objects. v8_scriptormodule_legacy_lifetime Current value (from the default) = false - From //v8/BUILD.gn:361 + From //v8/BUILD.gn:355 TODO(cbruni, v8:12302): Remove once API is migrated Enable legacy mode for ScriptOrModule's lifetime. By default it's a @@ -5769,13 +6094,17 @@ v8_static_library Use static libraries instead of source_sets. v8_symbol_level - Current value (from the default) = 0 + Current value = 0 + From //out/thorium/args.gn:41 + Overridden 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) = "" + Current value = "arm64" + From //out/thorium/args.gn:10 + Overridden 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 @@ -5806,19 +6135,19 @@ v8_target_cpu v8_third_party_heap_files Current value (from the default) = [] - From //v8/BUILD.gn:254 + From //v8/BUILD.gn:256 Source code used by third party heap v8_third_party_heap_libs Current value (from the default) = [] - From //v8/BUILD.gn:251 + From //v8/BUILD.gn:253 Libaries used by third party heap v8_typed_array_max_size_in_heap Current value (from the default) = 64 - From //v8/BUILD.gn:229 + From //v8/BUILD.gn:231 Controls the threshold for on-heap/off-heap Typed Arrays. @@ -5829,9 +6158,15 @@ v8_use_external_startup_data Use external files for startup data blobs: the JS builtins sources and the start snapshot. +v8_use_libm_trig_functions + Current value (from the default) = true + From //v8/gni/v8.gni:127 + + TODO: macros for determining endian type are clang specific. + v8_use_mips_abi_hardfloat Current value (from the default) = true - From //v8/BUILD.gn:226 + From //v8/BUILD.gn:228 Similar to the ARM hard float ABI but on MIPS. @@ -5843,20 +6178,33 @@ v8_use_perfetto v8_use_siphash Current value (from the default) = false - From //v8/BUILD.gn:214 + From //v8/BUILD.gn:216 Use Siphash as added protection against hash flooding attacks. +v8_use_zlib + Current value (from the default) = true + From //v8/BUILD.gn:374 + + Compile V8 using zlib as dependency. + Sets -DV8_USE_ZLIB + +v8_value_deserializer_hard_fail + Current value (from the default) = false + From //v8/BUILD.gn:377 + + Make ValueDeserializer crash if the data to deserialize is invalid. + v8_verify_torque_generation_invariance Current value (from the default) = false - From //v8/BUILD.gn:274 + From //v8/BUILD.gn:276 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 + From //v8/BUILD.gn:101 Enable the registration of unwinding info for Windows x64 and ARM64. @@ -5866,7 +6214,7 @@ vma_vulkan_headers_dir widevine_root Current value (from the default) = "." - From //third_party/widevine/cdm/widevine.gni:62 + From //third_party/widevine/cdm/widevine.gni:61 Relative root directory to //third_party/widevine/cdm for CDM files. Can be overridden if the CDM files are located in other places.