From e203954b33d80072a7c8d256ffdc69fa42262765 Mon Sep 17 00:00:00 2001 From: rickyz Date: Thu, 30 Apr 2015 18:45:00 -0700 Subject: [PATCH] Revert of Add a GN flag for the Windows multi-dll build. (patchset #3 id:40001 of https://codereview.chromium.org/1120803003/) Reason for revert: May have caused some link errors on windows: https://build.chromium.org/p/chromium.win/builders/Win%20x64%20GN/builds/814 Original issue's description: > Add a GN flag for the Windows multi-dll build. > > The first pass of moving the other Chrome-specific build flags out of the root build config file and into the new one. This requires both ffmpeg and Blink changes to finish landing. > > R=scottmg@chromium.org > TBR=ddorwin@chromium.org (widevine) > > Committed: https://crrev.com/edff53a35780ba2f515c7e8d4f7131c91151e1a3 > Cr-Commit-Position: refs/heads/master@{#327854} TBR=scottmg@chromium.org,brettw@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1117063004 Cr-Commit-Position: refs/heads/master@{#327861} --- build/config/BUILD.gn | 1 - build/config/BUILDCONFIG.gn | 2 - build/config/chrome_build.gni | 21 --------- build/config/compiler/BUILD.gn | 1 - build/config/features.gni | 1 - build/config/mac/mac_sdk.gni | 2 - build/config/sysroot.gni | 2 - build/secondary/tools/grit/grit_rule.gni | 1 - chrome/BUILD.gn | 60 +++--------------------- chrome/app/resources/BUILD.gn | 1 - chrome/browser/BUILD.gn | 1 - chrome/browser/policy/BUILD.gn | 2 +- chrome/chrome_dll.gypi | 1 - chrome/chrome_repack_locales.gni | 1 - chrome/common/BUILD.gn | 1 + chrome/installer/util/BUILD.gn | 2 - chrome/policy.gypi | 1 - chrome/test/BUILD.gn | 1 - chrome/version.gni | 24 ++-------- chrome_elf/BUILD.gn | 1 + components/policy/BUILD.gn | 3 +- content/app/BUILD.gn | 11 +++-- content/public/app/BUILD.gn | 7 +-- content/test/BUILD.gn | 1 - gpu/config/BUILD.gn | 1 - remoting/remoting_version.gni | 2 - remoting/webapp/build_template.gni | 1 - third_party/adobe/flash/BUILD.gn | 2 - third_party/harfbuzz-ng/BUILD.gn | 1 - third_party/widevine/cdm/BUILD.gn | 1 - tools/gn/docs/cookbook.md | 5 +- 31 files changed, 26 insertions(+), 136 deletions(-) delete mode 100644 build/config/chrome_build.gni diff --git a/build/config/BUILD.gn b/build/config/BUILD.gn index 1bd666bd24cf4b..22cb45ab9a955b 100644 --- a/build/config/BUILD.gn +++ b/build/config/BUILD.gn @@ -3,7 +3,6 @@ # found in the LICENSE file. import("//build/config/allocator.gni") -import("//build/config/chrome_build.gni") import("//build/config/crypto.gni") import("//build/config/features.gni") import("//build/config/ui.gni") diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn index 2274c0e98c3266..455ec0d3dc4beb 100644 --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn @@ -66,13 +66,11 @@ declare_args() { # Selects the desired build flavor. Official builds get additional # processing to prepare for release. Normally you will want to develop and # test with this flag off. - # TODO(brettw) move to chrome_build.gni when DEPS are updated. is_official_build = false # Select the desired branding flavor. False means normal Chromium branding, # true means official Google Chrome branding (requires extra Google-internal # resources). - # TODO(brettw) move to chrome_build.gni when DEPS are updated. is_chrome_branded = false # Compile for Address Sanitizer to find memory bugs. diff --git a/build/config/chrome_build.gni b/build/config/chrome_build.gni deleted file mode 100644 index 99e598ec1957b2..00000000000000 --- a/build/config/chrome_build.gni +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 2015 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -declare_args() { - # Selects the desired build flavor. Official builds get additional - # processing to prepare for release. Normally you will want to develop and - # test with this flag off. - # TODO(brettw) move here from BUILDCONFIG.gn when DEPS are updated. - #is_official_build = false - - # Select the desired branding flavor. False means normal Chromium branding, - # true means official Google Chrome branding (requires extra Google-internal - # resources). - # TODO(brettw) move here from BUILDCONFIG.gn when DEPS are updated. - #is_chrome_branded = false - - # Break chrome.dll into multple pieces based on process type. Only available - # on Windows. - is_multi_dll_chrome = is_win && !is_component_build -} diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn index 95e09d93c3f1fa..c2171549fea963 100644 --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn @@ -3,7 +3,6 @@ # found in the LICENSE file. import("//build/config/android/config.gni") -import("//build/config/chrome_build.gni") if (current_cpu == "arm") { import("//build/config/arm.gni") } diff --git a/build/config/features.gni b/build/config/features.gni index 661170ecdb45b6..3f63773762ec31 100644 --- a/build/config/features.gni +++ b/build/config/features.gni @@ -11,7 +11,6 @@ # # See also build/config/ui.gni -import("//build/config/chrome_build.gni") if (is_android) { import("//build/config/android/config.gni") } diff --git a/build/config/mac/mac_sdk.gni b/build/config/mac/mac_sdk.gni index 600085e8b7e12a..44995a3e667a05 100644 --- a/build/config/mac/mac_sdk.gni +++ b/build/config/mac/mac_sdk.gni @@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - declare_args() { # Minimum supported version of the Mac SDK. mac_sdk_min = "10.6" diff --git a/build/config/sysroot.gni b/build/config/sysroot.gni index e5a9c2b20a1a2d..057971d69c4282 100644 --- a/build/config/sysroot.gni +++ b/build/config/sysroot.gni @@ -5,8 +5,6 @@ # This header file defines the "sysroot" variable which is the absolute path # of the sysroot. If no sysroot applies, the variable will be an empty string. -import("//build/config/chrome_build.gni") - declare_args() { # The absolute path of the sysroot that is applied when compiling using # the target toolchain. diff --git a/build/secondary/tools/grit/grit_rule.gni b/build/secondary/tools/grit/grit_rule.gni index 35bbed32734815..09a04c1eb33ae2 100644 --- a/build/secondary/tools/grit/grit_rule.gni +++ b/build/secondary/tools/grit/grit_rule.gni @@ -75,7 +75,6 @@ # # You can also put deps here if the grit source depends on generated # # files. # } -import("//build/config/chrome_build.gni") import("//build/config/crypto.gni") import("//build/config/features.gni") import("//build/config/ui.gni") diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn index 833dcb197a0d35..0ab9496a535a5e 100644 --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/features.gni") import("//build/config/locales.gni") import("//build/config/ui.gni") @@ -25,7 +24,7 @@ if (!is_android) { ] defines = [] deps = [] - data_deps = [] + datadeps = [] # TODO(GYP) mac_bundle_resources, xcode_settings @@ -33,6 +32,7 @@ if (!is_android) { if (is_win) { sources += [ + "$target_gen_dir/chrome_exe_version.rc", "//content/app/startup_helper_win.cc", "//content/public/common/content_switches.cc", "app/chrome_crash_reporter_client.cc", @@ -145,22 +145,17 @@ if (!is_android) { "//third_party/adobe/flash:flapper_binaries", "//third_party/widevine/cdm:widevinecdmadapter", ] + # TODO(GYP) some stuff from GYP including chrome_multiple_dll. } if (is_linux && enable_plugins) { deps += [ "//pdf" ] } - - if (is_multi_dll_chrome) { - defines += [ "CHROME_MULTIPLE_DLL" ] - data_deps += [ ":chrome_child" ] - } } } # !is_android shared_library("main_dll") { configs += [ "//build/config/compiler:wexit_time_destructors" ] - defines = [] deps = [ ":browser_dependencies", @@ -219,7 +214,8 @@ shared_library("main_dll") { deps += [ "//ui/compositor" ] } - if (is_multi_dll_chrome) { + #TODO(GYP) add chrome_multiple_dll support + if (false) { #chrome_multiple_dll) { defines += [ "CHROME_MULTIPLE_DLL_BROWSER" ] deps += [ "//content/public/app:browser" ] } else { @@ -240,55 +236,11 @@ shared_library("main_dll") { # TODO(GYP) Lots of other stuff in the OS=="mac" block. } - if (enable_plugins && !is_multi_dll_chrome) { + if (enable_plugins) { deps += [ "//pdf" ] } } -if (is_multi_dll_chrome) { - shared_library("chrome_child") { - sources = [ - "app/chrome_main.cc", - "app/chrome_main_delegate.cc", - "app/chrome_main_delegate.h", - "app/close_handle_hook_win.cc", - "app/close_handle_hook_win.h", - ] - - configs += [ "//build/config/compiler:wexit_time_destructors" ] - defines = [ "CHROME_MULTIPLE_DLL_CHILD" ] - - deps = [ - ":child_dependencies", - ":chrome_dll_version", - "//chrome/browser/policy:path_parser", - "//content/public/app:child", - ] - - if (is_win) { - deps += [ "//chrome_elf" ] - # TODO(GYP): PGO on Windows. - # ['chrome_pgo_phase==1', { - # 'msvs_settings': { - # 'VCLinkerTool': { - # 'LinkTimeCodeGeneration': '2', - # }, - # }, - # }], - # ['chrome_pgo_phase==2', { - # 'msvs_settings': { - # 'VCLinkerTool': { - # 'LinkTimeCodeGeneration': '3', - # }, - # }, - # }], - } - if (enable_plugins) { - deps += [ "//pdf" ] - } - } -} - # GYP version: chromium_browser_dependencies variable in chrome.gyp group("browser_dependencies") { deps = [ diff --git a/chrome/app/resources/BUILD.gn b/chrome/app/resources/BUILD.gn index 97323f1d2a076c..854fda7c82039a 100644 --- a/chrome/app/resources/BUILD.gn +++ b/chrome/app/resources/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//tools/grit/grit_rule.gni") # GYP version: chrome/chrome_resources.gyp:chrome_strings diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn index fc384b769d9f92..9bb42706fbe3a4 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/crypto.gni") import("//build/config/features.gni") import("//build/config/ui.gni") diff --git a/chrome/browser/policy/BUILD.gn b/chrome/browser/policy/BUILD.gn index e3b8e91cd656b2..6a645e7466d4a8 100644 --- a/chrome/browser/policy/BUILD.gn +++ b/chrome/browser/policy/BUILD.gn @@ -2,7 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -source_set("path_parser") { +static_library("path_parser") { sources = [ "policy_path_parser.h", "policy_path_parser_linux.cc", diff --git a/chrome/chrome_dll.gypi b/chrome/chrome_dll.gypi index 94a61a650d1bac..b9a9973f59f250 100644 --- a/chrome/chrome_dll.gypi +++ b/chrome/chrome_dll.gypi @@ -326,7 +326,6 @@ ['chrome_multiple_dll', { 'targets': [ { - # GN version: //chrome:chrome_child 'target_name': 'chrome_child_dll', 'type': 'shared_library', 'product_name': 'chrome_child', diff --git a/chrome/chrome_repack_locales.gni b/chrome/chrome_repack_locales.gni index d19888ce2d1118..ea9b4322823952 100644 --- a/chrome/chrome_repack_locales.gni +++ b/chrome/chrome_repack_locales.gni @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/features.gni") import("//build/config/ui.gni") import("//tools/grit/repack.gni") diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn index 1985599cab6e25..7de5abb887cdd1 100644 --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn @@ -277,6 +277,7 @@ static_library("constants") { "widevine_cdm_constants.cc", "widevine_cdm_constants.h", ] + sources += get_target_outputs(":make_chrome_version") deps = [ ":make_chrome_version", diff --git a/chrome/installer/util/BUILD.gn b/chrome/installer/util/BUILD.gn index f9744cb885cc5e..8dca7ce3d5a8c0 100644 --- a/chrome/installer/util/BUILD.gn +++ b/chrome/installer/util/BUILD.gn @@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - static_library("util") { deps = [ "//base", diff --git a/chrome/policy.gypi b/chrome/policy.gypi index 6d81c9c89ec1d9..79cc543780e93f 100644 --- a/chrome/policy.gypi +++ b/chrome/policy.gypi @@ -5,7 +5,6 @@ { 'targets': [ { - # GN version: //chrome/browser/policy:path_parser 'target_name': 'policy_path_parser', 'type': 'static_library', 'dependencies': [ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn index c297978eb753d6..8268f257af17eb 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/crypto.gni") import("//build/config/features.gni") import("//build/config/ui.gni") diff --git a/chrome/version.gni b/chrome/version.gni index 1d424a6de0887b..b956e9c38e5084 100644 --- a/chrome/version.gni +++ b/chrome/version.gni @@ -2,15 +2,10 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - # Runs the version processing script over the given template file to produce # an output file. This is used for generating various forms of files that # incorporate the product name and version. # -# Unlike GYP, this will actually compile the resulting file, so you don't need -# to add it separately to the sources, just depend on the target. -# # This template automatically includes VERSION, LASTCHANGE, and BRANDING. It # automatically uses the template file . # GYP parameterizes this template file but all current invocations use this @@ -55,11 +50,10 @@ template("process_version") { "Either sources or template_file must be defined for $target_name") assert(defined(invoker.output), "Output must be defined for $target_name") - action_name = target_name + "_action" - source_set_name = target_name - - action(action_name) { - visibility = [ ":$source_set_name" ] + action(target_name) { + if (defined(invoker.visibility)) { + visibility = invoker.visibility + } script = "//build/util/version.py" lastchange_path = "//build/util/LASTCHANGE" @@ -114,14 +108,4 @@ template("process_version") { rebase_path(invoker.output, root_build_dir), ] } - - source_set(source_set_name) { - if (defined(invoker.visibility)) { - visibility = invoker.visibility - } - sources = get_target_outputs(":$action_name") - deps = [ - ":$action_name", - ] - } } diff --git a/chrome_elf/BUILD.gn b/chrome_elf/BUILD.gn index ee00fa8d631122..06cb9372091950 100644 --- a/chrome_elf/BUILD.gn +++ b/chrome_elf/BUILD.gn @@ -14,6 +14,7 @@ process_version("chrome_elf_resources") { shared_library("chrome_elf") { sources = [ + "$target_gen_dir/chrome_elf_version.rc", "chrome_elf_main.cc", "chrome_elf_main.h", ] diff --git a/components/policy/BUILD.gn b/components/policy/BUILD.gn index f80c492d89a6c0..b373cc3e5ce079 100644 --- a/components/policy/BUILD.gn +++ b/components/policy/BUILD.gn @@ -2,9 +2,8 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/features.gni") -import("//components/policy/resources/policy_templates.gni") +import("resources/policy_templates.gni") import("//third_party/protobuf/proto_library.gni") import("//tools/grit/grit_rule.gni") diff --git a/content/app/BUILD.gn b/content/app/BUILD.gn index 8da75d4ff61ccc..f6c72b9f86427f 100644 --- a/content/app/BUILD.gn +++ b/content/app/BUILD.gn @@ -2,7 +2,8 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") +# TODO(GYP) enable chrome_multiple_dll support +is_chrome_multiple_dll = false content_app_sources = [ "android/app_jni_registrar.cc", @@ -70,7 +71,7 @@ content_app_extra_configs = [ "//content:content_implementation", ] -if (!is_multi_dll_chrome) { +if (!is_chrome_multiple_dll) { content_app_deps += [ "//content/gpu:gpu_sources" ] } @@ -85,7 +86,7 @@ source_set("both") { deps = content_app_deps } -if (is_multi_dll_chrome) { +if (is_chrome_multiple_dll) { # It doesn't make sense to do the browser/child dll split in component mode. assert(!is_component_build) @@ -96,7 +97,7 @@ if (is_multi_dll_chrome) { configs += content_app_extra_configs deps = content_app_deps - defines = [ "CHROME_MULTIPLE_DLL_BROWSER" ] + defines += [ "CHROME_MULTIPLE_DLL_BROWSER" ] } source_set("child") { @@ -106,6 +107,6 @@ if (is_multi_dll_chrome) { configs += content_app_extra_configs deps = content_app_deps - defines = [ "CHROME_MULTIPLE_DLL_CHILD" ] + defines += [ "CHROME_MULTIPLE_DLL_CHILD" ] } } diff --git a/content/public/app/BUILD.gn b/content/public/app/BUILD.gn index d75b59e3a552ac..20ee710e738714 100644 --- a/content/public/app/BUILD.gn +++ b/content/public/app/BUILD.gn @@ -20,8 +20,6 @@ # //content (shared library) -> # //content/public/app:both_sources (source set) -import("//build/config/chrome_build.gni") - public_app_shared_sources = [ "content_jni_onload.h", "content_main.h", @@ -93,7 +91,10 @@ if (is_component_build) { ] } - if (is_multi_dll_chrome) { + # TODO(GYP) enable chrome_multiple_dll support + is_chrome_multiple_dll = false + + if (is_chrome_multiple_dll) { source_set("browser") { check_includes = false # See comment above. diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn index 0d0893a87f0a83..8a535d8e1dc0af 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/crypto.gni") import("//build/config/features.gni") import("//build/config/ui.gni") diff --git a/gpu/config/BUILD.gn b/gpu/config/BUILD.gn index 1300ccacf731c8..0a2c1357c65457 100644 --- a/gpu/config/BUILD.gn +++ b/gpu/config/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/ui.gni") declare_args() { diff --git a/remoting/remoting_version.gni b/remoting/remoting_version.gni index cb8fb659427ff5..f8f6276d9e1265 100644 --- a/remoting/remoting_version.gni +++ b/remoting/remoting_version.gni @@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - _version_py_abspath = "//build/util/version.py" _remoting_version_abspath = "//remoting/VERSION" _chrome_version_abspath = "//chrome/VERSION" diff --git a/remoting/webapp/build_template.gni b/remoting/webapp/build_template.gni index 5d4233c9ccd25b..70ff555feab282 100644 --- a/remoting/webapp/build_template.gni +++ b/remoting/webapp/build_template.gni @@ -4,7 +4,6 @@ # Keep in sync with 'remoting_webapp' target in remoting/remoting_client.gypi. -import("//build/config/chrome_build.gni") import("//remoting/remoting_locales.gni") import("//remoting/remoting_options.gni") import("//remoting/remoting_version.gni") diff --git a/third_party/adobe/flash/BUILD.gn b/third_party/adobe/flash/BUILD.gn index 6a15c0bbe51f34..7a5c99a434521e 100644 --- a/third_party/adobe/flash/BUILD.gn +++ b/third_party/adobe/flash/BUILD.gn @@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - if (is_chrome_branded) { if (is_linux && current_cpu == "x86") { flapper_version_h_file = "symbols/ppapi/linux/flapper_version.h" diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn index ac221550e1f395..b370348a9fb2e7 100644 --- a/third_party/harfbuzz-ng/BUILD.gn +++ b/third_party/harfbuzz-ng/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/linux/pkg_config.gni") # The GYP build supports system harfbuzz for non-official builds when using diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn index 62dad959a54c1c..10a61b97623e04 100644 --- a/third_party/widevine/cdm/BUILD.gn +++ b/third_party/widevine/cdm/BUILD.gn @@ -2,7 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") import("//build/config/features.gni") import("//chrome/version.gni") # TODO layering violation import("//media/cdm/ppapi/cdm_adapter.gni") diff --git a/tools/gn/docs/cookbook.md b/tools/gn/docs/cookbook.md index 57df03c94b3c0b..2337b83572d83d 100644 --- a/tools/gn/docs/cookbook.md +++ b/tools/gn/docs/cookbook.md @@ -167,11 +167,10 @@ places are noted in the table below. | `arm_neon_optional` (0/1) | `arm_optionally_use_neon` (true/false) | `//build/config/arm.gni` | | `arm_version` | `arm_version` | `//build/config/arm.gni` | | `asan` (0/1) | `is_asan` (true/false) | (global) | -| `branding` ("Chromium"/"Chrome"") | `is_chrome_branded` (true/false) | `//build/config/chrome_build.gni` | +| `branding` ("Chromium"/"Chrome"") | `is_chrome_branded` (true/false) | (global) | | `build_for_tool=="drmemory"` | `disable_iterator_debugging` (true/false) | (internal to `//build/config/BUILD.gn`) | | `build_for_tool=="tsan"` | `disable_iterator_debugging` (true/false) | (internal to `//build/config/BUILD.gn`) | -| `buildtype` ("Official"/"Dev") | `is_official_build` (true/false) | `//build/config/chrome_build.gni` | -| `chrome_multiple_dll` (0/1) | `is_multi_dll_chrome` (true/false) | `//build/config/chrome_build.gni` | +| `buildtype` ("Official"/"Dev") | `is_official_build` (true/false) | (global) | | `clang` (0/1) | `is_clang` (true/false) | (global) | | `clang_use_chrome_plugins` (0/1) | `clang_use_chrome_plugins` (true/false) | (internal to `//build/config/clang/BUILD.gn`) | | `component` ("shared_library"/"static_library") | `is_component_build` (true/false) | (global) |